:root{--bg:#07101f;--panel:#0d1729;--line:#21314a;--text:#f7f9fc;--muted:#9fb0c8;--accent:#3b82f6;--accent2:#2563eb;--danger:#ef4444;--shadow:0 18px 60px rgba(0,0,0,.35)}
*{box-sizing:border-box}html,body{margin:0;background:linear-gradient(180deg,#07101f,#0a1322 45%,#07101f);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans Thai",sans-serif;min-height:100%}button,input,select{font:inherit}button{cursor:pointer}.topbar{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;align-items:center;padding:18px 22px;background:rgba(7,16,31,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.05)}.eyebrow{font-size:11px;letter-spacing:.18em;color:#6ea8ff;font-weight:800}.topbar h1{font-size:21px;margin:2px 0 0}.top-actions{display:flex;gap:10px;align-items:center}.avatar{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--accent);color:#fff;font-weight:800}.shell{max-width:1180px;margin:auto;padding:24px 20px 110px}.view{display:none}.view.active{display:block}.hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;border-radius:24px;background:radial-gradient(circle at top right,rgba(59,130,246,.3),transparent 40%),linear-gradient(145deg,#0f1c31,#101a2c);border:1px solid #1b3153;box-shadow:var(--shadow)}.hero h2,.section-head h2{font-size:clamp(28px,4vw,44px);margin:10px 0}.hero p{color:var(--muted);max-width:680px;margin:0;line-height:1.7}.pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:rgba(59,130,246,.14);border:1px solid rgba(96,165,250,.3);color:#9ec5ff;font-size:12px;font-weight:700}.primary,.ghost,.danger{border-radius:12px;padding:11px 16px;border:1px solid transparent;font-weight:800}.primary{background:var(--accent);color:#fff}.primary:hover{background:var(--accent2)}.ghost{background:#0f1b2f;border-color:var(--line);color:var(--text)}.danger{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.35);color:#ff9c9c}.wide{width:100%}.toolbar{display:grid;grid-template-columns:1fr 180px;gap:12px;margin:24px 0}input,select{width:100%;background:#0b1526;color:var(--text);border:1px solid var(--line);border-radius:12px;padding:13px 14px;outline:none}input:focus,select:focus{border-color:#4d8ee8;box-shadow:0 0 0 3px rgba(59,130,246,.12)}.section-title,.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.section-title{margin:18px 0 12px}.section-title h3,.card h3{margin:0}.muted{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}.media-card{background:linear-gradient(180deg,#0f1b2f,#0c1627);border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:.18s}.media-card:hover{transform:translateY(-2px);border-color:#3c5c88}.thumb{aspect-ratio:16/9;background:linear-gradient(145deg,#14243d,#0c1728);display:flex;align-items:center;justify-content:center;font-size:44px;position:relative}.badge{position:absolute;left:10px;top:10px;font-size:10px;padding:5px 8px;border-radius:999px;background:rgba(0,0,0,.55)}.progressbar{position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(255,255,255,.12)}.progressbar span{display:block;height:100%;background:#60a5fa}.media-info{padding:14px}.media-info h4{margin:0 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meta{font-size:12px;color:var(--muted)}.card-actions{display:flex;gap:8px;margin-top:12px}.card-actions button{flex:1}.empty{text-align:center;border:1px dashed #2a3d5c;border-radius:18px;padding:44px 20px;color:var(--muted);margin-top:16px}.empty-icon{font-size:48px;color:#6ea8ff}.empty h3{color:#fff;margin-bottom:6px}.split{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.card{background:#0d1729;border:1px solid var(--line);border-radius:18px;padding:20px}.card label{display:block;color:#dfe9f7;font-size:13px;font-weight:700;margin:14px 0}.card label input{margin-top:7px}.dropzone{border:1.5px dashed #3b5e8e;border-radius:16px;padding:30px;text-align:center;background:#0b1526}.dropzone strong,.dropzone span{display:block}.dropzone span{margin-top:6px;color:var(--muted);font-weight:400}.queue{display:grid;gap:8px;margin-top:12px}.queue-item{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;background:#0a1424;border:1px solid var(--line);border-radius:12px}.check{display:flex!important;gap:10px;align-items:flex-start}.check input{width:auto;margin:2px 0!important}.notice,.rulebox{margin-top:14px;padding:12px 14px;border-radius:12px}.notice{background:#10213d;border:1px solid #284b80}.notice.error{background:#2a1519;border-color:#6a2930;color:#ffb3b8}.rulebox{background:#101b2d;border:1px solid #243955;color:var(--muted);line-height:1.6}.rulebox strong{color:#fff}.rulebox p{margin:6px 0 0}.profiles{display:flex;gap:10px}.profileChoice{width:54px;height:54px;border-radius:50%;border:1px solid var(--line);background:#0a1424;color:#fff;font-weight:800}.profileChoice.active{background:var(--accent);border-color:#7fb1ff}.bottomnav{position:fixed;z-index:25;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:6px;padding:7px;background:rgba(9,18,33,.92);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.navbtn{min-width:72px;border:0;background:transparent;color:#9fb0c8;border-radius:12px;padding:8px 10px;font-size:11px}.navbtn span{display:block;font-size:20px;margin-bottom:3px}.navbtn.active{background:#13233d;color:#fff}.player-overlay{position:fixed;inset:0;z-index:60;background:rgba(2,6,12,.72);backdrop-filter:blur(8px);padding:20px;overflow:auto}.player-sheet{max-width:900px;margin:4vh auto;background:#08111f;border:1px solid #263a58;border-radius:22px;padding:18px;box-shadow:var(--shadow)}.player-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.player-top h3{font-size:24px;margin:9px 0 14px}.iconbtn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#101c2f;color:#fff}.media-host{background:#000;border-radius:16px;overflow:hidden;min-height:240px;display:flex;align-items:center;justify-content:center}.media-host video,.media-host audio{width:100%;max-height:64vh}.media-host audio{padding:50px 20px;background:linear-gradient(145deg,#0f2039,#172b49)}.media-host iframe{width:100%;aspect-ratio:16/9;border:0}.player-actions{display:flex;justify-content:center;gap:10px;margin-top:14px}.player-meta{display:flex;justify-content:space-between;gap:10px;margin-top:10px;color:var(--muted);font-size:12px}.linkbtn{border:0;background:transparent;color:#7db0ff}@media (max-width:720px){.topbar{padding:14px 16px}.shell{padding:18px 14px 104px}.hero{align-items:flex-start;flex-direction:column;padding:20px}.hero .primary{width:100%}.toolbar{grid-template-columns:1fr}.split{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr;gap:10px}.media-info{padding:11px}.thumb{font-size:32px}.bottomnav{bottom:10px;width:calc(100% - 20px);justify-content:space-around}.navbtn{min-width:auto;flex:1}.player-overlay{padding:8px}.player-sheet{margin:1vh auto}.media-host{min-height:190px}}@media (max-width:420px){.grid{grid-template-columns:1fr}}

/* V2 web downloader */
.web-download-card{margin-top:18px}
.compact-title{margin:0 0 6px}.compact-title h3{margin:8px 0 0;font-size:clamp(20px,3vw,28px)}
.webdl-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:16px}
.rights-check{margin:12px 0!important;padding:12px;border:1px solid var(--line);border-radius:12px;background:#0a1424}
.download-results{display:grid;gap:10px;margin-top:14px}
.download-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border-radius:14px;background:#0a1424;border:1px solid var(--line)}
.download-result h4{margin:0 0 5px;overflow-wrap:anywhere}.download-result .source-url{font-size:11px;color:var(--muted);overflow-wrap:anywhere;max-height:3.2em;overflow:hidden}
.download-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.download-actions a{text-decoration:none;display:inline-flex;align-items:center}
.result-kind{display:inline-flex;margin-right:6px;padding:3px 7px;border-radius:999px;background:#132b4b;color:#9ec5ff;font-size:10px;font-weight:800}
@media(max-width:720px){.webdl-form{grid-template-columns:1fr}.webdl-form .primary{width:100%}.download-result{grid-template-columns:1fr}.download-actions{justify-content:stretch}.download-actions>*{flex:1;justify-content:center;text-align:center}}
