/* Shared logo, publisher and native file controls. Uses the site's existing tokens. */
.melopod-wordmark{font-family:"Elsie",serif!important;font-weight:900!important;line-height:1;letter-spacing:-.025em}
.melopod-splash .melopod-splash-bar-fill{width:40%;animation:mp-progress-drift 1.6s ease-in-out infinite;background:var(--mp-accent,#8cff4f)}
.mp-loading-logo{position:relative;display:block;width:132px;height:132px;flex:none;margin-inline:auto;isolation:isolate}
.mp-loading-logo img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;object-fit:contain!important;border:0!important;border-radius:0!important;filter:none!important;margin:0!important;pointer-events:none}
.mp-loading-logo>svg{display:block;width:100%;height:100%;max-width:none;overflow:visible;flex:none}
.mp-loading-logo .mp-logo-part{visibility:hidden;will-change:transform}
.mp-loading-logo.is-loading .mp-logo-original,.mp-loading-logo.is-settling .mp-logo-original{visibility:hidden}
.mp-loading-logo.is-loading .mp-logo-part,.mp-loading-logo.is-settling .mp-logo-part{visibility:visible}
.mp-loading-logo.is-loading .mp-logo-part{animation:mp-logo-notes 1.6s cubic-bezier(.45,0,.55,1) infinite;animation-delay:var(--note-delay)}
@keyframes mp-logo-notes{0%,100%{transform:translateY(0)}28%{transform:translateY(-3px)}64%{transform:translateY(2px)}}
.mp-publisher{box-sizing:border-box;position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:20px;background:#051f20c9;backdrop-filter:blur(10px);opacity:1;transition:opacity .2s ease;font-family:var(--mp-font,system-ui);color:var(--mp-text,#daf1de)}
.mp-publisher[hidden]{display:none}.mp-publisher.is-leaving{opacity:0;pointer-events:none}
.mp-publish-card{box-sizing:border-box;width:min(480px,100%);max-height:calc(100dvh - 40px);overflow:auto;padding:24px 28px;border:1px solid var(--mp-border,#235347);border-radius:var(--mp-radius-lg,24px);background:var(--mp-surface,#0b2b26);box-shadow:var(--mp-shadow-raised,0 20px 60px #0004);text-align:center}
.mp-publish-card h2{font:750 clamp(21px,5vw,27px)/1.25 var(--mp-font,system-ui);letter-spacing:-.03em;margin:8px 0 14px;color:inherit;overflow-wrap:anywhere}
.mp-publish-stage{font-size:14px;line-height:1.5;min-height:42px;margin:12px 0;color:var(--mp-muted,#8eb69b)}
.mp-publish-progress{height:9px;border-radius:10px;background:var(--mp-surface-soft,#163832);overflow:hidden}
.mp-publish-fill{height:100%;width:100%;background:var(--mp-accent,#8cff4f);border-radius:inherit;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.mp-publish-progress.is-indeterminate .mp-publish-fill{width:40%;transform-origin:center;animation:mp-progress-drift 1.6s ease-in-out infinite}
@keyframes mp-progress-drift{0%{transform:translateX(-105%)}100%{transform:translateX(355%)}}
.mp-publish-percent{display:block;min-height:20px;margin-top:8px;font-size:12px;color:var(--mp-muted,#8eb69b);font-variant-numeric:tabular-nums}
.mp-publish-fact{min-height:85px;box-sizing:border-box;padding:16px;margin:18px 0 0;border-radius:var(--mp-radius-sm,12px);background:var(--mp-surface-soft,#163832);text-align:left}
.mp-publish-fact strong{display:block;margin-bottom:7px;color:var(--mp-accent,#8cff4f);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.mp-publish-fact p{margin:0;font-size:13px;line-height:1.55;color:inherit}
.mp-publish-note{font-size:12px;line-height:1.5;color:var(--mp-muted,#8eb69b);margin:16px 0 0}
.mp-publish-dismiss{margin-top:16px;min-height:44px;padding:10px 20px;border:0;border-radius:12px;background:var(--mp-accent,#8cff4f);color:var(--mp-on-accent,#051f20);font:700 14px var(--mp-font,system-ui);cursor:pointer}
.mp-publisher.is-error .mp-publish-stage{color:var(--mp-error,#ff9bad)}
.mp-publish-inline-error{padding:12px;border-radius:12px;border:1px solid var(--mp-error,#ff9bad);color:var(--mp-error,#ff9bad);font-size:14px;line-height:1.5;margin-bottom:14px}
.mp-upload{box-sizing:border-box;position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:5px 12px;width:100%;min-width:0;min-height:76px;padding:13px 14px;border:1px dashed var(--mp-border,#235347);border-radius:var(--mp-radius-sm,12px);background:var(--mp-surface-soft,#163832);color:var(--mp-text,#daf1de);text-align:left;transition:background .2s,border-color .2s,box-shadow .2s;margin-block:8px;font-family:var(--mp-font,system-ui)}
.mp-upload--dropzone{min-height:124px;padding:20px}
.mp-upload--compact{min-height:64px;padding:10px 12px}
.mp-upload-icon{grid-row:1/3;display:grid;place-items:center;transition:transform .2s}
.mp-upload-icon img{width:24px;height:24px;object-fit:contain}.theme-dark .mp-upload-icon img{filter:brightness(0) invert(1)}
.mp-upload-icon svg{width:24px;height:24px}
.mp-upload-title{font-size:14px;font-weight:750;line-height:1.3}
.mp-upload-help{font-size:11px;line-height:1.5;color:var(--mp-muted,#8eb69b);overflow-wrap:anywhere}
.mp-upload-name{grid-column:1/-1;display:block;min-height:19px;font-size:12px;line-height:1.5;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:65px}
.mp-upload input.mp-upload-native[type=file]{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;min-height:0!important;margin:0!important;padding:0!important;opacity:0!important;display:block!important;visibility:visible!important;z-index:1;cursor:pointer;clip:auto!important;clip-path:none!important;overflow:hidden!important}
.mp-upload:focus-within{outline:2px solid var(--mp-accent,#8cff4f);outline-offset:3px}
.mp-upload.is-dragging{border-color:var(--mp-accent,#8cff4f);background:var(--mp-accent-soft,#235347)}
.mp-upload-remove{position:absolute;right:10px;bottom:8px;z-index:2;border:0;background:transparent;color:var(--mp-accent,#8cff4f);font:700 12px var(--mp-font,system-ui);min-height:32px;cursor:pointer;padding:4px}
.mp-upload-remove[hidden]{display:none!important}
.mp-upload-error{grid-column:1/-1;color:var(--mp-error,#ff9bad);font-size:12px;line-height:1.4}
.mp-upload-error:empty{display:none}.mp-upload.is-disabled{opacity:.55}
#mediaUploadField:has(.mp-upload) #uploadDropzone{display:none}
.track-drop:has(.mp-upload){padding:0!important;border:0!important;background:transparent!important}.track-drop:has(.mp-upload)>:is(.drop-icon,strong,span:not(.mp-upload)),.track-drop:has(.mp-upload)>div>:is(.drop-icon,strong,span:not(.mp-upload)){display:none}
@media(hover:hover){.mp-upload:hover{border-color:var(--mp-accent,#8cff4f);box-shadow:0 3px 14px #051f2010}.mp-upload:hover .mp-upload-icon{transform:translateY(-2px)}}
@media(max-width:480px){.mp-publisher{padding:14px}.mp-publish-card{padding:18px;max-height:calc(100dvh - 28px)}.mp-loading-logo{width:112px;height:112px}.mp-publish-fact{padding:13px}}
@media(prefers-reduced-motion:reduce){.mp-loading-logo .mp-logo-part{animation:none!important;visibility:hidden!important}.mp-loading-logo .mp-logo-original{visibility:visible!important}.mp-publish-progress.is-indeterminate .mp-publish-fill{animation:none!important;transform:translateX(75%)}.mp-publisher,.mp-upload,.mp-upload-icon,.mp-publish-fill{transition:none!important}}
