:root{--bg: #0b1220;--card: #111a2b;--panel: #0e1626;--panel2: #16223a;--border: #24324d;--text: #e6edf7;--muted: #8aa0bd;--blue: #2563eb;--blue-bright: #3b82f6}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Roboto,system-ui,sans-serif;background:var(--bg);color:var(--text)}.app{min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:24px 12px}.card{width:100%;max-width:960px;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:24px 28px 20px;box-shadow:0 12px 40px #00000073}.head{display:flex;align-items:center;gap:16px;margin-bottom:22px}.logo{width:54px;height:54px;border-radius:12px;background:var(--panel2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:26px;color:var(--blue-bright)}.head-text{flex:1}.head-text h1{margin:0;font-size:24px;font-weight:700}.head-text p{margin:3px 0 0;color:var(--muted);font-size:13px}.badge{background:var(--panel2);color:var(--blue-bright);border:1px solid var(--border);border-radius:10px;padding:5px 10px;font-size:12px;font-weight:600}.field-label{display:block;font-size:13px;color:var(--muted);margin:14px 0 6px}.link-row{display:flex;gap:10px}.link-input{flex:1;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:13px 14px;color:var(--text);font-size:14px}.link-input:focus{outline:none;border-color:var(--blue-bright)}.icon-btn{width:56px;background:var(--panel2);border:1px solid var(--border);border-radius:10px;color:var(--blue-bright);font-size:18px;cursor:pointer}.icon-btn:hover{border-color:var(--blue-bright)}.modes{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.mode{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px 10px;cursor:pointer;color:var(--text);display:flex;flex-direction:column;align-items:center;gap:6px;transition:border-color .15s,background .15s}.mode:hover{background:var(--panel2)}.mode.active{background:#15233c;box-shadow:0 0 0 1px #3b82f666 inset}.mode-icon{font-size:26px;line-height:1}.mode-title{font-weight:700;font-size:15px}.mode-sub{font-size:11px;color:var(--muted)}.row2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.col{display:flex;flex-direction:column}.select{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:12px 14px;color:var(--text);font-size:14px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.select:focus{outline:none;border-color:var(--blue-bright)}.save-to{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:8px 12px;color:var(--muted);font-size:13px;display:flex;align-items:center;gap:12px}.subs{display:flex;align-items:center;gap:6px;color:var(--text);font-size:13px;cursor:pointer;white-space:nowrap}.subs-select{flex:1;padding:9px 10px;font-size:13px}.subs-select:disabled{opacity:.5}.hint{color:var(--muted);font-size:12px;margin:8px 2px 0;line-height:1.5}.actions{display:flex;gap:12px;margin-top:18px}.download-btn{flex:1;background:var(--blue);border:none;border-radius:10px;color:#fff;font-size:16px;font-weight:700;padding:16px;cursor:pointer}.download-btn:hover:not(:disabled){background:var(--blue-bright)}.stop-btn{width:140px;background:#3a1d22;border:1px solid #6b2b33;border-radius:10px;color:#ff8a8a;font-size:15px;font-weight:700;cursor:pointer}.stop-btn:disabled{opacity:.5;cursor:default}.progress{margin-top:12px;height:6px;background:var(--panel);border-radius:4px;overflow:hidden}.progress-bar{height:100%;background:var(--blue-bright);transition:width .2s}.logbox{margin-top:16px;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:14px}.logbox-title{font-weight:700;margin-bottom:8px}.logbox-body{background:#0a1120;border:1px solid var(--border);border-radius:8px;height:140px;overflow-y:auto;padding:10px 12px;font-family:Consolas,Courier New,monospace;font-size:12.5px;color:#b9c6db}.logline{white-space:pre-wrap;word-break:break-all;line-height:1.5}.foot{display:flex;justify-content:space-between;align-items:center;margin-top:16px;gap:12px}.ytdlp-info{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px}.ghost.small{padding:6px 12px;font-size:12px}.ghost{background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text);padding:9px 18px;font-size:13px;cursor:pointer}.ghost:hover{border-color:var(--blue-bright)}@media (max-width: 720px){.modes{grid-template-columns:repeat(2,1fr)}.row2{grid-template-columns:1fr}}
