.mc-dialog { width:min(1100px,calc(100vw - 48px)); max-width:none; max-height:calc(100vh - 48px); max-height:calc(100dvh - 48px); padding:0; overflow:hidden; box-sizing:border-box; color:var(--ovs-text-primary); background:var(--ovs-surface-1); border:1px solid var(--ovs-border-strong); border-radius:var(--radius,18px); box-shadow:0 24px 80px rgb(0 0 0 / .3); }
.mc-dialog[open] { display:flex; flex-direction:column; }
.mc-dialog::backdrop { background:rgb(0 0 0 / .65); }
.mc-dialog *, .mc-dialog *::before, .mc-dialog *::after { box-sizing:border-box; min-width:0; }
.mc-dialog [hidden], #mediaCenterLauncher[hidden] { display:none !important; }
.mc-session-notice[hidden] { display:none !important; }
.mc-session-notice { position:fixed; z-index:10000; bottom:max(16px,env(safe-area-inset-bottom)); left:16px; right:16px; width:fit-content; max-width:calc(100vw - 32px); margin:auto; display:flex; align-items:center; gap:12px; padding:12px; border:1px solid var(--ovs-border-strong); border-radius:12px; background:var(--ovs-surface-2); color:var(--ovs-text-primary); box-shadow:0 8px 32px rgb(0 0 0 / .2); }
.mc-session-notice p { margin:0; overflow-wrap:anywhere; }
.mc-session-notice button { flex:0 0 44px; min-height:44px; font:inherit; font-size:24px; border:1px solid var(--ovs-border-strong); border-radius:8px; color:var(--ovs-text-primary); background:var(--ovs-surface-control); cursor:pointer; }
.mc-session-notice button:focus-visible { outline:2px solid var(--ovs-accent); outline-offset:3px; }
.mc-dialog h2, .mc-dialog h3, .mc-dialog p { margin:0; }
.mc-dialog h2 { font-size:24px; line-height:1.3; }
.mc-dialog h3 { font-size:15px; line-height:1.5; }
.mc-dialog p, .mc-dialog label { line-height:1.5; }
.mc-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:24px; border-bottom:1px solid var(--ovs-border); }
.mc-head p { margin-top:4px; color:var(--ovs-text-muted); }
.mc-head #mcClose { flex:0 0 44px; padding:0; font-size:26px; }
.mc-body { padding:24px; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
.mc-dialog button, .mc-dialog input, .mc-dialog select, .mc-dialog a, .mc-dialog summary { font:inherit; }
.mc-dialog button, .mc-actions a { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; min-width:44px; padding:10px 14px; border:1px solid var(--ovs-border-strong); border-radius:10px; color:var(--ovs-text-primary); background:var(--ovs-surface-control); text-decoration:none; line-height:1.3; cursor:pointer; }
.mc-dialog button:hover:enabled, .mc-actions a:hover { background:var(--ovs-surface-control-hover); }
.mc-dialog button:disabled { opacity:.5; cursor:default; }
.mc-dialog button.mc-primary { background:var(--ovs-accent); color:var(--ovs-text-on-accent); border-color:var(--ovs-accent); font-weight:600; }
.mc-dialog :focus-visible { outline:2px solid var(--ovs-accent); outline-offset:3px; }
.mc-dialog input, .mc-dialog select { display:block; width:100%; min-height:44px; margin-top:6px; padding:10px 12px; font-size:16px; color:var(--ovs-text-primary); background:var(--ovs-surface-input); border:1px solid var(--ovs-border-strong); border-radius:10px; }
.mc-dialog input::file-selector-button { min-height:44px; padding:8px; margin-right:8px; font:inherit; cursor:pointer; }
.mc-storage-disclosure > summary { min-height:44px; padding:0 0 12px; cursor:pointer; font-weight:600; }
.mc-storage-disclosure > summary span { display:block; margin-top:4px; font-weight:400; }
.mc-storage { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.mc-storage section { display:grid; align-content:start; gap:8px; padding:16px; background:var(--ovs-surface-2); border:1px solid var(--ovs-border); border-radius:12px; }
.mc-dialog .mc-hint { color:var(--ovs-text-muted); font-size:13px; }
#mcMeter { width:100%; height:8px; accent-color:var(--ovs-accent); border:0; border-radius:8px; overflow:hidden; background:var(--ovs-border); }
#mcMeter::-webkit-progress-bar { background:var(--ovs-border); }
#mcMeter::-webkit-progress-value { background:var(--ovs-accent); }
#mcMeter::-moz-progress-bar { background:var(--ovs-accent); }
.mc-add { margin-top:18px; border:1px solid var(--ovs-border); border-radius:12px; }
.mc-add summary { min-height:48px; padding:14px 16px; cursor:pointer; font-weight:600; overflow-wrap:anywhere; }
.mc-add summary span { display:block; margin-top:4px; font-weight:400; }
.mc-upload { display:grid; gap:14px; padding:0 16px 16px; }
.mc-drop { display:block; padding:16px; border:1px dashed var(--ovs-border-strong); border-radius:10px; background:var(--ovs-surface-input); overflow-wrap:anywhere; }
.mc-drop.is-dragging { border-color:var(--ovs-accent); }
.mc-drop .mc-hint { display:block; margin-top:8px; }
.mc-toolbar { display:grid; grid-template-columns:minmax(0,1fr) minmax(190px,.55fr) auto; align-items:end; gap:12px; margin:18px 0; }
.mc-dialog #mcStatus { margin-top:14px; color:var(--ovs-text-secondary); overflow-wrap:anywhere; }
.mc-dialog #mcStatus:empty { margin:0; }
.mc-dialog #mcStatus[data-error="true"] { border-left:3px solid var(--ovs-accent); padding:8px 12px; background:var(--ovs-surface-2); }
#mcReconcile { margin-top:12px; }
.mc-item { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px; padding:16px 0; border-top:1px solid var(--ovs-border); }
.mc-item h3 { font-size:16px; overflow-wrap:anywhere; }
.mc-item p { margin-top:6px; color:var(--ovs-text-muted); font-size:13px; overflow-wrap:anywhere; }
.mc-tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.mc-tag { padding:3px 8px; border:1px solid var(--ovs-border-strong); border-radius:6px; color:var(--ovs-text-secondary); font-size:12px; }
.mc-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.mc-item .mc-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; align-content:center; width:auto; max-width:292px; gap:6px; }
.mc-item .mc-actions > .mc-icon-action { flex:0 0 44px; width:44px; min-width:44px; height:44px; min-height:44px; padding:0; border-radius:10px; }
.mc-icon-action svg { display:block; flex:none; pointer-events:none; }
.mc-dialog .mc-icon-action:disabled { opacity:.38; }
.mc-item-info { min-width:0; }
.mc-item-info h3 { overflow-wrap:anywhere; }
.mc-more { width:100%; margin-top:12px; }
.mc-empty { padding:32px 16px; text-align:center; color:var(--ovs-text-muted); }
.mc-edit { display:grid; gap:14px; padding:16px; margin-bottom:18px; border:1px solid var(--ovs-border-strong); border-radius:12px; overflow-wrap:anywhere; }
.mc-dialog .mc-check { display:flex; align-items:center; gap:12px; min-height:44px; cursor:pointer; }
.mc-dialog .mc-check input { flex:0 0 44px; width:44px; height:44px; margin:0; accent-color:var(--ovs-accent); }
.mc-player { flex:0 0 auto; display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,1fr); align-items:center; gap:16px; padding:16px 24px; background:var(--ovs-surface-2); border-top:1px solid var(--ovs-border); }
#mcNowPlaying { font-size:14px; overflow-wrap:anywhere; }
#mcAudio { display:block; width:100%; min-height:44px; }
@media(max-width:700px) {
    .mc-dialog { width:calc(100vw - 16px); max-height:calc(100vh - 16px); max-height:calc(100dvh - 16px); border-radius:14px; }
    .mc-head { padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 16px max(16px,env(safe-area-inset-left)); }
    .mc-body { padding:16px max(16px,env(safe-area-inset-right)) 16px max(16px,env(safe-area-inset-left)); }
    .mc-storage { grid-template-columns:1fr; gap:10px; }
    .mc-toolbar { grid-template-columns:minmax(0,1fr) auto; }
    .mc-toolbar label:first-child { grid-column:1 / -1; }
    .mc-item { grid-template-columns:minmax(0,1fr); gap:12px; }
    .mc-item .mc-actions { justify-content:flex-start; width:100%; max-width:none; }
    .mc-player { grid-template-columns:minmax(0,1fr); gap:8px; padding:12px max(16px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left)); }
}
@media(max-width:380px) {
    .mc-item .mc-actions { gap:5px; }
}
@media(prefers-reduced-motion:reduce) { .mc-dialog *, .mc-dialog *::before, .mc-dialog *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }

.mc-tabs { display:flex; gap:8px; margin-bottom:18px; border-bottom:1px solid var(--ovs-border); padding-bottom:12px; }
.mc-tabs [role="tab"] { flex:1; flex-wrap:wrap; }
.mc-tabs [aria-selected="true"] { border-color:var(--ovs-accent); background:var(--ovs-surface-2); font-weight:600; }
.mc-unread-count { display:inline-flex; flex:none; align-items:center; justify-content:center; width:28px; height:28px; border-radius:50%; color:#fff; background:#c91829; font-size:12px; font-weight:700; line-height:1; animation:mc-unread-pulse 2.5s ease-in-out infinite; }
.mc-new { display:inline-block; margin-top:8px; color:#fff; background:#c91829; border-color:#c91829; font-weight:700; }
.mc-shared-assignment { grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; }
#mcSimpleSharing > [role="status"] { margin-bottom:12px; overflow-wrap:anywhere; }
@keyframes mc-unread-pulse { 0%,100% { box-shadow:0 0 0 0 rgb(201 24 41 / .12); } 50% { box-shadow:0 0 0 5px rgb(201 24 41 / .22); } }
@media(max-width:380px) { .mc-tabs { gap:6px; } .mc-tabs [role="tab"] { padding:10px 6px; font-size:13px; } .mc-shared-assignment { grid-template-columns:minmax(0,1fr); } }
@media(prefers-reduced-motion:reduce) { .mc-unread-count { animation:none; } }
