:root{
    --bg:#0a0a0a;
    --sidebar:#0c0c0c;
    --surface:#121212;
    --surface2:#181818;
    --surface3:#242424;
    --hover:#2b2b2b;
    --green:#1ed760;
    --green2:#17aa4c;
    --text:#fff;
    --sub:#b3b3b3;
    --muted:#777;
    --line:#303030;
    --danger:#ee5253;
    --warning:#e6ae47;
    --radius:16px;
    --shadow:0 22px 70px rgba(0,0,0,.36);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
code{font-family:Consolas,monospace}

.auth-page{
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:32px 18px;
    background:
        radial-gradient(circle at 20% 10%,rgba(30,215,96,.22),transparent 30%),
        radial-gradient(circle at 90% 90%,rgba(30,215,96,.08),transparent 36%),
        #0a0a0a;
}
.auth-shell{width:min(440px,100%)}
.setup-shell{width:min(620px,100%)}
.brand-lockup{display:flex;align-items:center;gap:13px;margin:0 0 18px}
.brand-lockup h1{font-size:25px;margin:0}
.brand-lockup p{margin:3px 0 0;color:var(--sub);font-size:12px}
.brand-mark{
    width:42px;height:42px;border-radius:50%;
    background:var(--green);color:#07180d;
    display:grid;place-items:center;font-size:22px;font-weight:900
}
.auth-card{
    background:rgba(24,24,24,.96);
    border:1px solid var(--line);
    border-radius:22px;padding:28px;
    box-shadow:var(--shadow)
}
.auth-card h2{font-size:28px;margin:8px 0 8px}
.status-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-size:25px;font-weight:800;margin-bottom:14px}
.status-icon.success{background:var(--green);color:#08150d}

.app-shell{min-height:100vh;display:grid;grid-template-columns:220px 1fr}
.sidebar{
    position:fixed;inset:0 auto 0 0;width:220px;
    background:var(--sidebar);border-right:1px solid #1b1b1b;
    padding:18px 13px;display:flex;flex-direction:column;z-index:10
}
.sidebar-brand{display:flex;align-items:center;gap:11px;padding:5px 7px 22px}
.sidebar-brand strong{display:block;font-size:16px}
.sidebar-brand span{display:block;color:var(--muted);font-size:10px;margin-top:3px}
.nav-label,.section-label,.eyebrow{font-size:10px;letter-spacing:.13em;font-weight:800;color:var(--muted)}
.nav-label{padding:9px 10px}
.nav{display:grid;gap:4px}
.nav a{
    height:42px;padding:0 11px;border-radius:9px;
    display:flex;align-items:center;gap:12px;
    color:var(--sub);font-size:12px;font-weight:700
}
.nav a span{width:21px;text-align:center;font-size:15px}
.nav a:hover,.nav a.active{background:var(--surface3);color:#fff}
.nav a.active span{color:var(--green)}
.sidebar-help{
    margin:22px 5px 0;padding:14px;border-radius:12px;
    background:var(--surface2);border:1px solid #222;display:grid;gap:6px
}
.sidebar-help small{font-size:9px;color:var(--green);font-weight:800;letter-spacing:.1em}
.sidebar-help strong{font-size:11px;word-break:break-all}
.sidebar-help span{font-size:9px;color:var(--muted);line-height:1.5}
.logout-link{margin-top:auto;padding:12px;color:var(--muted);font-size:11px}
.logout-link:hover{color:#fff}
.main{grid-column:2;padding:26px 30px 55px;max-width:1500px;width:100%}
.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.topbar h1{font-size:29px;margin:5px 0 0}
.top-actions{display:flex;align-items:center;gap:10px}
.live-pill{
    display:flex;align-items:center;gap:7px;
    background:#143925;color:var(--green);
    border-radius:999px;padding:8px 12px;font-size:9px;font-weight:900;letter-spacing:.12em
}
.live-pill i{width:7px;height:7px;background:var(--green);border-radius:50%;box-shadow:0 0 14px var(--green)}
.green{color:var(--green)!important}

.btn{
    border:0;border-radius:999px;padding:10px 15px;
    font-weight:800;font-size:11px;display:inline-flex;align-items:center;justify-content:center;
    transition:.15s transform,.15s background
}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--green);color:#07180d}
.btn-primary:hover{background:#35e675}
.btn-dark{background:var(--surface3);color:#fff;border:1px solid var(--line)}
.btn-block{width:100%}

.hero-card{
    overflow:hidden;min-height:250px;border-radius:20px;padding:30px;
    background:
        linear-gradient(115deg,#174c30 0%,#17271f 47%,#181818 100%);
    display:grid;grid-template-columns:1fr 300px;align-items:center;border:1px solid #24442f
}
.hero-card h2{font-size:35px;max-width:650px;line-height:1.08;margin:10px 0 12px}
.hero-card p{color:#c6cfc9;max-width:630px;line-height:1.65;font-size:13px}
.hero-actions{display:flex;gap:9px;margin-top:20px}
.hero-art{height:190px;position:relative;display:grid;place-items:center}
.record{
    width:174px;height:174px;border-radius:50%;background:
        radial-gradient(circle,#1ed760 0 14%,#0b0b0b 14.5% 25%,#212121 25.5% 27%,#0b0b0b 27.5% 42%,#1e1e1e 42.5% 44%,#0b0b0b 44.5%);
    box-shadow:0 25px 60px rgba(0,0,0,.4);display:grid;place-items:center;animation:spin 18s linear infinite
}
.record span{color:#06170d;font-weight:900;font-size:24px}
@keyframes spin{to{transform:rotate(360deg)}}
.equalizer-bars{position:absolute;bottom:8px;display:flex;gap:5px;align-items:end;height:34px}
.equalizer-bars i{width:5px;border-radius:5px;background:var(--green);animation:eq 1.1s ease-in-out infinite alternate}
.equalizer-bars i:nth-child(1){height:12px}.equalizer-bars i:nth-child(2){height:27px;animation-delay:.15s}
.equalizer-bars i:nth-child(3){height:19px;animation-delay:.3s}.equalizer-bars i:nth-child(4){height:32px;animation-delay:.45s}
.equalizer-bars i:nth-child(5){height:16px;animation-delay:.6s}.equalizer-bars i:nth-child(6){height:25px;animation-delay:.75s}
@keyframes eq{to{height:8px}}

.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}
.stat-card{background:var(--surface2);border:1px solid #232323;border-radius:14px;padding:18px}
.stat-card span{color:var(--sub);font-size:10px;font-weight:700}
.stat-card strong{display:block;font-size:27px;margin:9px 0 4px}
.stat-card small{color:var(--muted);font-size:9px}

.panel{
    background:var(--surface2);border:1px solid #242424;
    border-radius:var(--radius);padding:20px;margin-top:14px
}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}
.panel-head h2{font-size:18px;margin:5px 0 0}
.text-link{font-size:10px;color:var(--sub)}
.text-link:hover{color:#fff}

.track-list{display:grid;gap:2px}
.track-row{
    min-height:60px;border-radius:9px;padding:7px 10px;
    display:grid;grid-template-columns:32px 46px 1fr auto 25px;
    align-items:center;gap:10px
}
.track-row:hover{background:var(--hover)}
.track-number{font-size:10px;color:var(--muted);text-align:center}
.track-row img,.table-track img{
    width:46px;height:46px;border-radius:7px;object-fit:cover;background:#242424
}
.track-main strong{display:block;font-size:11px}
.track-main span{display:block;color:var(--muted);font-size:9px;margin-top:5px}
.track-arrow{color:var(--muted);font-size:21px}
.empty-state{color:var(--muted);font-size:12px;padding:28px;text-align:center}

.badge{
    display:inline-flex;align-items:center;justify-content:center;
    white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:8px;font-weight:900;letter-spacing:.06em
}
.badge-green{background:#143923;color:var(--green)}
.badge-muted{background:#292929;color:#999}
.badge-warn{background:#40331a;color:#e8bd61}

.alert{padding:12px 14px;border-radius:10px;font-size:11px;margin:0 0 14px}
.alert-danger{background:#471f24;color:#ffb7bd;border:1px solid #693139}
.alert-success{background:#143923;color:#b9f4cc;border:1px solid #255c39}

.form-stack{display:grid;gap:15px}
.form-grid{display:grid;gap:12px}
.form-grid.two{grid-template-columns:repeat(2,1fr)}
label{display:grid;gap:7px;color:var(--sub);font-size:10px;font-weight:700}
input,select{
    width:100%;height:42px;border:1px solid var(--line);border-radius:10px;
    background:var(--surface3);color:#fff;padding:0 12px;outline:none
}
input:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(30,215,96,.08)}
.hint{font-size:9px;color:var(--muted);font-weight:400}
.section-label{margin:8px 0 -4px;color:var(--green)}

.search{
    width:260px;height:38px;border:1px solid var(--line);border-radius:999px;
    background:var(--surface3);display:flex;align-items:center;padding:0 12px;gap:7px
}
.search input{height:34px;padding:0;border:0;background:transparent;box-shadow:none}
.search span{color:var(--muted)}
.table-wrap{overflow:auto}
.music-table{border-collapse:collapse;width:100%;min-width:900px}
.music-table th{
    text-align:left;color:var(--muted);font-size:8px;letter-spacing:.08em;
    padding:9px 10px;border-bottom:1px solid var(--line)
}
.music-table td{padding:9px 10px;border-bottom:1px solid #222;font-size:10px}
.music-table tr:hover td{background:#1d1d1d}
.table-track{display:flex;align-items:center;gap:10px}
.table-track strong{display:block;font-size:10px}
.table-track small{display:block;color:var(--muted);font-size:8px;margin-top:4px}
.music-table code{color:#ddd;font-size:9px}
.sort-col{color:var(--muted)}
.actions-cell{display:flex;gap:5px;justify-content:flex-end}
.icon-btn{
    width:29px;height:29px;border:1px solid var(--line);background:var(--surface3);color:#ccc;
    border-radius:50%;display:grid;place-items:center;padding:0
}
.icon-btn:hover{background:var(--hover);color:#fff}
.icon-btn.danger{color:#ff8585}
.status-toggle{border:0;width:38px;height:22px;border-radius:999px;background:#373737;padding:3px}
.status-toggle span{display:block;width:16px;height:16px;border-radius:50%;background:#888;transition:.16s}
.status-toggle.on{background:#19492a}
.status-toggle.on span{background:var(--green);transform:translateX(16px)}

.editor-grid{display:grid;grid-template-columns:1fr 310px;gap:14px;align-items:start}
.editor-main{margin-top:0}
.cover-editor{margin-top:0;position:sticky;top:20px}
.cover-preview{aspect-ratio:1;border-radius:14px;overflow:hidden;position:relative;background:#222;margin-bottom:13px}
.cover-preview img{width:100%;height:100%;object-fit:cover;display:block}
.cover-overlay{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.cover-overlay span{font-size:50px;color:#fff;opacity:.08}
.upload-box{
    min-height:74px;border:1px dashed #4a4a4a;border-radius:11px;
    display:grid;place-items:center;text-align:center;padding:12px;cursor:pointer;background:#151515
}
.upload-box:hover{border-color:var(--green);background:#172119}
.upload-box input{display:none}
.upload-box strong{color:#fff;font-size:10px}
.upload-box span{font-size:8px;color:var(--muted);font-weight:400}
.check-row{display:flex;gap:8px;align-items:center;margin:12px 0;color:var(--sub)}
.check-row input{width:15px;height:15px}
.check-row.large{padding:12px;border:1px solid var(--line);border-radius:10px;background:#151515}
.switch-label{align-content:end}
.switch-row{height:42px;display:flex;align-items:center;gap:9px;background:var(--surface3);border:1px solid var(--line);border-radius:10px;padding:0 12px}
.switch-row input{width:16px;height:16px}
.cover-status-card{background:#111;border:1px solid #252525;border-radius:10px;padding:11px;display:grid;gap:5px;margin:12px 0}
.cover-status-card span{font-size:8px;color:var(--muted)}
.cover-status-card strong{font-size:10px}
.sync-panel{display:flex;align-items:center;justify-content:space-between;gap:20px}
.sync-panel h2{font-size:17px;margin:5px 0}
.muted{color:var(--muted);font-size:11px;line-height:1.6}

.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.settings-grid .panel{margin-top:0}
.callout{background:#11261a;color:#b7eec8;border:1px solid #204d30;padding:11px;border-radius:10px;font-size:9px;line-height:1.5;margin-bottom:15px}
.endpoint{display:block;background:#0f0f0f;border:1px solid var(--line);border-radius:10px;padding:14px;color:#c8f7d7;overflow:auto;font-size:10px}

@media(max-width:1000px){
    .stats-grid{grid-template-columns:repeat(2,1fr)}
    .hero-card{grid-template-columns:1fr 220px}
    .editor-grid,.settings-grid{grid-template-columns:1fr}
    .cover-editor{position:static}
}
@media(max-width:760px){
    .app-shell{display:block}
    .sidebar{position:static;width:auto;height:auto;flex-direction:row;align-items:center;overflow:auto;padding:10px}
    .sidebar-brand{padding:0 8px;min-width:max-content}
    .sidebar-brand .brand-mark{width:34px;height:34px}
    .sidebar-brand span,.nav-label,.sidebar-help,.logout-link{display:none}
    .nav{display:flex;gap:4px}
    .nav a{min-width:max-content;height:36px;padding:0 10px}
    .main{padding:18px 14px 40px}
    .topbar{align-items:flex-end}
    .topbar h1{font-size:23px}
    .live-pill{display:none}
    .hero-card{grid-template-columns:1fr;padding:22px}
    .hero-card h2{font-size:28px}
    .hero-art{display:none}
    .stats-grid{grid-template-columns:repeat(2,1fr)}
    .library-head{align-items:flex-start;flex-direction:column}
    .search{width:100%}
    .form-grid.two{grid-template-columns:1fr}
}

.auth-foot{font-size:10px;color:var(--muted);text-align:center;margin:15px 0 0}
.auth-foot a{color:#fff}.auth-foot a:hover{color:var(--green)}
.admin-link{margin-top:8px}
.stat-word{font-size:20px!important}
.audio-mini{width:46px;height:46px;border-radius:8px;background:linear-gradient(135deg,#1ed760,#164a2b);display:grid;place-items:center;color:#07180d;font-weight:900;font-size:19px}
.badge-red{background:#472126;color:#ff9da5}
.profile-info{display:grid;gap:14px}
.profile-info div,.detail-grid div{display:grid;gap:5px}
.profile-info span,.detail-grid span{font-size:9px;color:var(--muted);font-weight:700}
.profile-info strong,.detail-grid strong{font-size:11px}
.roblox-profile{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:12px;background:#101010;border:1px solid var(--line);border-radius:13px;padding:12px;margin-bottom:12px}
.roblox-profile img,.roblox-avatar{width:54px;height:54px;border-radius:50%;object-fit:cover;background:#252525}
.roblox-avatar{display:grid;place-items:center;font-weight:900}
.roblox-profile strong{display:block;font-size:12px}.roblox-profile span:not(.badge){display:block;font-size:9px;color:var(--muted);margin-top:5px}
.inline-create{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:14px}
.key-list{display:grid;gap:7px}.key-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;background:#141414;border:1px solid #252525;border-radius:10px;padding:11px}
.key-row strong{display:block;font-size:10px}.key-row span:not(.badge){display:block;color:var(--muted);font-size:8px;margin-top:5px}
.key-reveal{border-color:#245d39}.code-block{white-space:pre-wrap;background:#0d0d0d;border:1px solid var(--line);border-radius:12px;padding:16px;color:#d5f7df;font:11px/1.65 Consolas,monospace;overflow:auto}
.audio-meta{background:#111;border:1px solid #282828;padding:10px 12px;border-radius:10px;color:var(--sub);font-size:9px}
.rights{align-items:flex-start}.rights span{line-height:1.5}
.connect-required{text-align:center;padding:50px 20px}.connect-required h2{font-size:24px}
.asset-detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.asset-detail-grid .panel{margin-top:0}
.asset-main{display:flex;align-items:center;gap:18px}.asset-main h2{font-size:25px;margin:6px 0}
.asset-icon-big{width:100px;height:100px;border-radius:16px;background:linear-gradient(135deg,#1ed760,#113d25);display:grid;place-items:center;color:#07180d;font-size:46px;font-weight:900}
.asset-result{display:grid;align-content:start;gap:12px}.asset-id{display:grid;gap:8px;background:#111;border:1px solid #2a2a2a;border-radius:12px;padding:14px}.asset-id span{font-size:8px;color:var(--muted)}.asset-id strong{font-size:25px;word-break:break-all}
.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.developer-hero{min-height:235px}
.oauth-settings{grid-column:1/-1}
@media(max-width:760px){.asset-detail-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr 1fr}.roblox-profile{grid-template-columns:48px 1fr}.roblox-profile .badge{grid-column:1/-1;width:max-content}.inline-create{grid-template-columns:1fr}}


/* =========================================================
   V3 — ROBLOX-ONLY LOGIN
   ========================================================= */
.roblox-login-page{
    background:
        radial-gradient(circle at 20% 0%,rgba(30,215,96,.21),transparent 28%),
        radial-gradient(circle at 100% 100%,rgba(25,91,52,.14),transparent 34%),
        #090909;
}
.roblox-login-shell{width:min(510px,100%)}
.login-hero-logo{display:flex;align-items:center;gap:15px;margin:0 0 18px}
.login-hero-logo h1{font-size:29px;margin:0;letter-spacing:-.03em}
.login-hero-logo p{margin:4px 0 0;color:var(--sub);font-size:11px}
.brand-mark-large{width:50px;height:50px;font-size:26px;box-shadow:0 8px 30px rgba(30,215,96,.18)}
.roblox-login-card{padding:31px}
.roblox-login-card h2{font-size:31px;line-height:1.06;letter-spacing:-.035em;margin:10px 0 12px}
.login-copy{font-size:11px;max-width:410px}
.roblox-login-button{
    min-height:72px;
    display:grid;
    grid-template-columns:44px 1fr 24px;
    align-items:center;
    gap:12px;
    margin:22px 0 16px;
    padding:11px 15px;
    border-radius:14px;
    background:#fff;
    color:#111;
    border:1px solid #fff;
    transition:.15s transform,.15s box-shadow;
}
.roblox-login-button:hover{transform:translateY(-1px);box-shadow:0 12px 34px rgba(0,0,0,.28)}
.roblox-square{width:39px;height:39px;border-radius:9px;background:#111;color:#fff;display:grid;place-items:center;font-size:17px}
.roblox-login-button strong{display:block;font-size:12px}
.roblox-login-button small{display:block;color:#666;font-size:9px;margin-top:5px}
.roblox-login-button b{font-size:22px;text-align:right}
.login-permissions{display:grid;gap:8px;background:#111;border:1px solid #272727;border-radius:12px;padding:13px}
.login-permissions div{display:flex;gap:9px;align-items:center;color:#a9a9a9;font-size:9px}
.login-permissions i{font-style:normal;color:var(--green);font-weight:900}
.login-divider{height:28px;display:flex;align-items:center;gap:9px;margin:12px 0 4px;color:#666;font-size:8px;font-weight:900;letter-spacing:.12em}
.login-divider:before,.login-divider:after{content:"";height:1px;background:#292929;flex:1}
.owner-login-link{display:block;text-align:center;color:#aaa;font-size:9px;padding:8px}
.owner-login-link:hover{color:#fff}
.login-footer{text-align:center;color:#656565;font-size:8px;line-height:1.5;max-width:410px;margin:15px auto 0}
.single-account-grid{grid-template-columns:1.15fr .85fr}
.roblox-profile-large{grid-template-columns:68px 1fr}
.roblox-profile-large img,.roblox-profile-large .roblox-avatar{width:68px;height:68px}
.roblox-profile-large strong{font-size:15px}
.roblox-profile-large small{display:block;color:#666;font-size:8px;margin-top:4px}
.identity-note{background:#101813;border:1px solid #20422c;border-radius:12px;padding:13px;margin:13px 0;display:grid;gap:5px}
.identity-note strong{font-size:10px;color:#c7f5d5}
.identity-note span{font-size:9px;color:#8fad97;line-height:1.5}
.account-details{grid-template-columns:1fr 1fr;gap:10px}
.account-details div{background:#111;border:1px solid #252525;border-radius:10px;padding:11px}
.account-actions{display:flex;gap:8px;margin-top:15px}
.security-list{display:grid;gap:9px}
.security-list>div{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:center;background:#111;border:1px solid #242424;border-radius:11px;padding:11px}
.security-list i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#193c26;color:var(--green);font-style:normal;font-size:9px;font-weight:900}
.security-list strong{display:block;font-size:10px}
.security-list small{display:block;color:#777;font-size:8px;margin-top:4px;line-height:1.5}
.dev-avatar,.dev-avatar-fallback{width:40px!important;height:40px!important;border-radius:50%!important}
.dev-avatar-fallback{background:#252525;display:grid;place-items:center;font-weight:900}
.developer-table-user img{object-fit:cover}

@media(max-width:900px){
    .single-account-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
    .roblox-login-card{padding:23px 18px}
    .roblox-login-card h2{font-size:27px}
    .account-details{grid-template-columns:1fr}
    .account-actions{flex-direction:column}
}


/* =========================================================
   V4 CONVERTER
   ========================================================= */
.converter-hero{
    border:1px solid #24442f;
    background:linear-gradient(115deg,#174c30 0%,#17271f 48%,#181818 100%);
    border-radius:18px;
    padding:23px 25px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    margin-bottom:14px;
}
.converter-hero h2{font-size:28px;margin:7px 0 8px}
.converter-hero p{color:#b9c9bf;max-width:690px;font-size:11px;line-height:1.6;margin:0}
.converter-status{display:grid;gap:6px;min-width:145px}
.converter-status span{padding:7px 9px;border-radius:999px;font-size:8px;font-weight:900;text-align:center}
.converter-status .ok{background:#143923;color:var(--green)}
.converter-status .bad{background:#472126;color:#ff9da5}
.converter-warning strong{display:block;margin-bottom:5px}
.converter-grid{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
    gap:14px;
    align-items:start;
}
.converter-grid>.panel{margin-top:0}
.converter-source{grid-column:1/2}
.converter-details{grid-column:2/3}
.converter-settings{grid-column:1/2}
.converter-submit{grid-column:2/3;position:sticky;top:20px}
.source-tabs{
    display:inline-grid;
    grid-template-columns:1fr 1fr;
    background:#101010;
    border:1px solid #292929;
    border-radius:999px;
    padding:3px;
    margin-bottom:15px;
}
.source-tabs button{
    border:0;
    background:transparent;
    color:#888;
    min-width:110px;
    height:32px;
    border-radius:999px;
    font-size:9px;
    font-weight:900;
}
.source-tabs button.active{background:var(--surface3);color:#fff}
.source-panel{display:none}
.source-panel.active{display:block}
.media-dropzone{
    min-height:190px;
    border:1px dashed #444;
    background:#111;
    border-radius:15px;
    display:grid;
    place-items:center;
    align-content:center;
    gap:7px;
    cursor:pointer;
    text-align:center;
    padding:25px 15px;
}
.media-dropzone:hover{border-color:var(--green);background:#111a14}
.media-dropzone input{display:none}
.media-dropzone .drop-icon{
    width:54px;height:54px;border-radius:50%;
    display:grid;place-items:center;
    background:var(--green);color:#07180d;
    font-size:25px;font-weight:900;margin-bottom:4px;
}
.media-dropzone strong{color:#fff;font-size:12px}
.media-dropzone span{font-size:9px;color:#aaa}
.media-dropzone small{font-size:8px;color:#666}
.bad-meta{color:#ff9da5!important;border-color:#5a2b31!important}
.platform-notice{
    margin-top:13px;
    display:grid;
    gap:5px;
    background:#17120d;
    border:1px solid #4a351d;
    border-radius:11px;
    padding:12px;
}
.platform-notice strong{font-size:9px;color:#efc36d}
.platform-notice span{font-size:8px;color:#9c8967;line-height:1.5}
.auto-library span,.rights-confirm span{display:grid;gap:3px}
.auto-library strong,.rights-confirm strong{font-size:9px;color:#fff}
.auto-library small,.rights-confirm small{font-size:8px;color:#777;font-weight:400;line-height:1.4}
.converter-summary{display:grid;gap:15px}
.creator-summary{
    display:grid;
    grid-template-columns:42px 1fr;
    align-items:center;
    gap:10px;
    padding:12px;
    border:1px solid #2d2d2d;
    border-radius:12px;
    background:#111;
}
.roblox-mini{
    width:42px;height:42px;border-radius:10px;
    background:#fff;color:#111;display:grid;place-items:center;font-weight:900
}
.creator-summary strong{display:block;font-size:10px}
.creator-summary span{display:block;font-size:8px;color:#777;margin-top:4px}
.limit-list{display:grid;gap:1px;background:#282828;border-radius:11px;overflow:hidden;border:1px solid #282828}
.limit-list div{display:flex;justify-content:space-between;gap:10px;background:#111;padding:10px}
.limit-list span{font-size:8px;color:#777}
.limit-list strong{font-size:9px}
.converter-main-btn{margin-top:17px;height:46px}
.converter-smallprint{text-align:center;color:#626262;font-size:8px;line-height:1.5}
.library-ready-state{
    display:grid;
    grid-template-columns:34px 1fr;
    gap:10px;
    align-items:center;
    background:#112318;
    border:1px solid #245237;
    border-radius:11px;
    padding:11px;
    margin:4px 0 10px;
}
.library-ready-state>span{
    width:32px;height:32px;border-radius:50%;
    display:grid;place-items:center;background:var(--green);color:#07180d;font-weight:900
}
.library-ready-state strong{display:block;font-size:9px;color:#cdf5d8}
.library-ready-state small{display:block;font-size:8px;color:#759984;margin-top:4px}
.asset-bottom-actions{display:flex;justify-content:space-between;gap:10px;margin-top:14px}

@media(max-width:900px){
    .converter-grid{grid-template-columns:1fr}
    .converter-source,.converter-details,.converter-settings,.converter-submit{grid-column:1}
    .converter-submit{position:static}
    .converter-hero{align-items:flex-start}
}
@media(max-width:620px){
    .converter-hero{display:block}
    .converter-status{margin-top:14px;grid-template-columns:repeat(3,1fr);min-width:0}
    .source-tabs{width:100%;grid-template-columns:1fr 1fr}
    .source-tabs button{min-width:0}
    .asset-bottom-actions{flex-direction:column}
}

/* V5 Remote worker pipeline */
.pipeline-card{background:#111;border:1px solid #2b2b2b;border-radius:13px;padding:13px;display:grid;gap:11px}
.pipeline-head{display:flex;justify-content:space-between;gap:12px;align-items:start}
.pipeline-head strong{display:block;font-size:10px}
.pipeline-head span{display:block;color:#777;font-size:8px;margin-top:5px;line-height:1.45}
.pipeline-head b{color:var(--green);font-size:12px}
.pipeline-track{height:6px;background:#3a3a3a;border-radius:999px;overflow:hidden}
.pipeline-track>div{height:100%;background:var(--green);border-radius:999px;transition:width .25s ease}
.pipeline-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.pipeline-steps span{background:#181818;border-radius:8px;padding:7px;text-align:center;color:#666;font-size:8px;font-weight:800}
.pipeline-steps span.active{color:var(--green);background:#122319}
.converter-main-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}


/* V6 Trim Audio */
.trim-card{background:#101010;border:1px solid #2b2b2b;border-radius:13px;padding:13px;display:grid;gap:12px}
.trim-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.trim-head strong{display:block;font-size:11px;margin-top:5px}
.trim-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.trim-option{
    display:grid;grid-template-columns:16px 1fr;gap:8px;align-items:start;
    border:1px solid #2c2c2c;background:#171717;border-radius:10px;padding:10px;cursor:pointer
}
.trim-option:hover,.trim-option.active{border-color:#2d7046;background:#132019}
.trim-option input{width:14px;height:14px;margin:1px 0 0}
.trim-option strong{display:block;color:#fff;font-size:9px}
.trim-option small{display:block;color:#737373;font-size:8px;font-weight:400;line-height:1.45;margin-top:4px}
.manual-trim-fields{grid-template-columns:1fr 1fr auto;align-items:end;gap:8px;padding-top:2px}
.trim-result{height:42px;min-width:95px;background:#171717;border:1px solid #303030;border-radius:10px;padding:7px 10px;display:grid;align-content:center}
.trim-result span{font-size:7px;color:#707070}
.trim-result strong{font-size:11px;margin-top:2px}
.trim-invalid{color:#ff8b94!important}
.trim-needed-meta{color:#efc36d!important;border-color:#5b4525!important}

@media(max-width:760px){
    .trim-modes{grid-template-columns:1fr}
    .manual-trim-fields{grid-template-columns:1fr 1fr}
    .trim-result{grid-column:1/-1}
}


/* V7 — PC-only converter */
.pc-only-source{display:block}
.pc-only-source .media-dropzone{min-height:230px}


/* V8 Roblox OAuth diagnostics */
.oauth-diagnostics{margin-top:16px;padding:14px;border:1px solid #2a2a2a;border-radius:13px;background:#111}
.diag-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.diag-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.diag-grid>div{padding:10px;border:1px solid #292929;border-radius:9px;background:#171717}
.diag-grid span{display:block;color:#777;font-size:8px;margin-bottom:4px}
.diag-grid strong{display:block;color:#fff;font-size:9px;word-break:break-word}
.diag-error{margin-top:10px;padding:10px;border-radius:9px;background:#32171b;border:1px solid #5f2930;color:#ffb7bf;font-size:9px;line-height:1.5}
.diag-details{margin-top:10px}
.diag-details summary{cursor:pointer;color:#9c9c9c;font-size:9px}
.diag-details pre{white-space:pre-wrap;word-break:break-word;background:#0b0b0b;padding:10px;border-radius:8px;font-size:8px;color:#bbb}
.failed-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.error-detail{white-space:pre-wrap;word-break:break-word}
@media(max-width:700px){.diag-grid{grid-template-columns:1fr}}
