:root{--bg:#fff;--text:#1a1a1a;--sub:#888;--border:#e5e5e5;--hover:#f9f9f9;--accent:#2563eb;--dock-bg:#ffffffd9;--font:"Inter", sans-serif;--radius:12px}[data-theme=dark]{--bg:#0f0f0f;--text:#eee;--sub:#666;--border:#2a2a2a;--hover:#1a1a1a;--accent:#4f86f7;--dock-bg:#0f0f0fd9}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);flex-direction:column;height:100vh;transition:background .2s;display:flex}header{z-index:20;justify-content:space-between;align-items:center;width:100%;padding:20px 40px;display:flex;position:fixed;top:0}.brand{align-items:center;gap:10px;font-size:1.25rem;font-weight:100;display:flex}.brand svg{color:var(--accent)}.actions{gap:10px;display:flex}.icon-btn{width:36px;height:36px;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}[hidden]{display:none!important}.icon-btn:hover{background:var(--hover);border-color:var(--border)}.sun-icon{display:none}[data-theme=dark] .sun-icon{color:#fbbf24;display:block}[data-theme=dark] .moon-icon{display:none}[data-theme=light] .moon-icon{display:block}main{flex:1;width:100%;height:100%;padding-top:60px;position:relative}.view{flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:none}.view.active{display:flex}#uploadView h1{letter-spacing:-1px;margin:.25em;font-size:2.5rem}#uploadView h3{opacity:.75;max-width:500px;margin:1em;font-size:1em}#uploadView p{color:var(--sub);margin-bottom:40px;font-size:1.1rem}.drop-trigger{text-align:center}.btn.secondary{background:var(--bg);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:30px;padding:12px 24px;font-weight:600}.btn.secondary:hover{background:var(--hover);border-color:var(--sub)}#listView{justify-content:flex-start;align-items:flex-start;width:100%;max-width:900px;margin:0 auto;padding-bottom:120px;overflow-y:auto}.list-header{border-bottom:1px solid var(--border);width:100%;color:var(--sub);text-transform:uppercase;background:var(--bg);z-index:5;grid-template-columns:40px 1fr 100px 100px;padding:12px 20px;font-size:.75rem;font-weight:700;display:grid;position:sticky;top:0}.list-item{border-bottom:1px solid var(--border);cursor:pointer;grid-template-columns:40px 1fr 100px 100px;align-items:center;padding:16px 20px;font-size:.95rem;transition:background .1s;display:grid}.list-item:hover,.list-item.checked{background:var(--hover)}.col-name{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:12px;font-weight:500;display:flex;overflow:hidden}.file-list{width:100%}.file-icon svg{display:block}.col-meta{color:var(--sub);font-family:Fira Code,monospace;font-size:.8rem}.col-size{color:var(--sub);text-align:right;font-size:.8rem}.dock{pointer-events:none;z-index:50;justify-content:center;width:100%;transition:transform .4s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;bottom:30px;left:0;transform:translateY(150%)}.dock.visible{transform:translateY(0)}.dock-content{background:var(--dock-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);pointer-events:auto;border-radius:100px;justify-content:space-between;align-items:center;gap:30px;padding:10px 10px 10px 25px;display:flex;box-shadow:0 20px 50px #00000026}.selection-info{white-space:nowrap;font-size:.95rem;font-weight:600}.dock-actions{align-items:center;gap:12px;display:flex}.select-wrapper{position:relative}.select-wrapper select{appearance:none;background:var(--hover);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:20px;outline:none;padding:10px 32px 10px 16px;font-size:.9rem}.chevron{pointer-events:none;color:var(--sub);position:absolute;top:50%;right:12px;transform:translateY(-50%)}.dock-left{align-items:center;gap:15px;display:flex}.btn.small{align-items:center;gap:6px;padding:8px 16px;font-size:.85rem;display:flex}.btn.primary{background:var(--text);color:var(--bg);cursor:pointer;border:none;border-radius:20px;align-items:center;gap:8px;padding:10px 24px;font-weight:600;display:flex}.btn.primary:hover{opacity:.9}.status-text{color:var(--sub);margin-top:15px;animation:1.5s infinite pulse}@keyframes pulse{50%{opacity:.5}}.brand svg{float:left;margin-right:.75em}a{color:inherit;text-decoration:none}.brand span{line-height:1.75em}@media (width<=768px){.list-header,.list-item{grid-template-columns:40px 1fr!important}.col-meta,.col-size{display:none!important}.app-layer{padding:10px}header{padding:15px 20px}#listView{padding:0 .5rem 16rem}.dock{padding:10px}.dock-content{border-radius:20px;flex-direction:column;gap:15px;width:100%;padding:20px}.dock-actions{flex-wrap:wrap;justify-content:space-between;width:100%}.select-wrapper{flex:1}.select-wrapper select{width:100%}#convertBtn{justify-content:center;width:100%;margin-top:10px}#uploadView h1{font-size:1.8rem}.file-name{font-size:.9rem}}.app-layer{flex-direction:column;max-width:720px;height:100vh;margin:0 auto;padding:20px;display:flex;overflow:hidden}body.wiki-page{height:auto!important;overflow-y:auto!important}body.wiki-page .dock{display:none!important}body.wiki-page #appStage{height:auto;padding-bottom:60px;display:block}.wiki-container{max-width:720px;margin:40px auto;padding:0 20px;animation:.4s ease-out fadeIn}.wiki-header{text-align:center;border-bottom:1px solid var(--border);margin-bottom:50px;padding-bottom:30px}.wiki-header h1{letter-spacing:-.02em;color:var(--text);margin-bottom:10px;font-size:2.5rem}.wiki-header .intro{color:var(--sub);font-size:1.2rem;font-weight:400}.wiki-container section{margin-bottom:40px}.wiki-container h3{color:var(--text);align-items:center;gap:10px;margin-bottom:15px;font-size:1.4rem;display:flex}.wiki-container p{color:var(--text);opacity:.9;margin-bottom:15px;font-size:1.05rem;line-height:1.7}.wiki-container li{color:var(--text);margin-bottom:8px;font-size:1.05rem;line-height:1.6}.wiki-container a{color:var(--primary);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .2s}.wiki-container a:hover{border-bottom-color:var(--primary)}.wiki-container table.matrix{border-collapse:collapse;width:100%;margin:16px 0 32px;font-size:.95em}.wiki-container table.matrix th,.wiki-container table.matrix td{border:1px solid var(--border);text-align:center;padding:10px 14px}.wiki-container table.matrix th{background:var(--surface-2,#00000008);font-weight:600}.wiki-container table.matrix td:first-child,.wiki-container table.matrix th:first-child{text-align:left;font-weight:500}.wiki-container table.matrix tr:nth-child(2n) td{background:var(--surface-2,#00000005)}.wiki-actions{justify-content:center;margin-top:60px;display:flex}.btn.secondary{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:50px;padding:12px 24px;font-weight:600;text-decoration:none;transition:all .2s}.btn.secondary:hover{background:var(--text);color:var(--bg);border-color:var(--text)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=600px){.wiki-container{box-shadow:none;background:0 0;border:none;margin:0;padding:25px 20px}.header-actions{gap:4px}.dock{padding:20px;bottom:0}.dock-content{border-radius:20px;flex-direction:column;gap:15px;width:100%;padding:20px}.dock-actions{justify-content:space-between;width:100%}.dock-actions .label{display:none}.dock-left{justify-content:space-between;width:100%}.brand span{display:none}}.drag-overlay{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;background:#2563ebe6;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .2s;display:flex;position:fixed;top:0;left:0}.drag-overlay.hidden{opacity:0;pointer-events:none;visibility:hidden}.drag-content{text-align:center;color:#fff;transition:transform .2s;transform:translateY(20px)}.drag-overlay:not(.hidden) .drag-content{transform:translateY(0)}.drag-content h3{margin-top:15px;font-size:1.5rem}#toast{visibility:hidden;color:#fff;text-align:center;z-index:10000;opacity:0;pointer-events:none;background-color:#1a1a1a;border-radius:14px;min-width:280px;max-width:min(520px,90vw);padding:13px 24px;font-size:.875rem;font-weight:500;line-height:1.4;transition:opacity .25s,bottom .25s,transform .25s;position:fixed;bottom:30px;left:50%;transform:translate(-50%)translateY(4px);box-shadow:0 8px 24px #0003}#toast.show{visibility:visible;opacity:1;pointer-events:auto;bottom:48px;transform:translate(-50%)translateY(0)}#toast.toast-info{color:#fff;background:#1a1a1a}#toast.toast-success{color:#fff;background:#16a34a}#toast.toast-warning{color:#fff;background:#b45309}#toast.toast-error{color:#fff;background:#dc2626}[data-theme=dark] #toast.toast-info{background:#2d2d2d}.progress-overlay{z-index:100;pointer-events:none;opacity:1;justify-content:center;align-items:center;transition:opacity .18s ease-out;display:flex;position:fixed;inset:0}.progress-overlay.hidden{opacity:0;pointer-events:none!important}.progress-card{background:var(--dock-bg);-webkit-backdrop-filter:blur(18px);border:1px solid var(--border);pointer-events:auto;border-radius:16px;flex-direction:column;align-items:center;gap:14px;min-width:280px;max-width:420px;padding:24px 32px;display:flex;box-shadow:0 30px 60px #00000040}.progress-spinner{border:3px solid var(--border);border-top-color:var(--text);border-radius:50%;width:36px;height:36px;animation:.9s linear infinite progress-spin}@keyframes progress-spin{to{transform:rotate(360deg)}}.progress-label{color:var(--text);text-align:center;font-size:1rem;font-weight:600}.progress-bar{background:var(--border);border-radius:999px;width:100%;height:6px;overflow:hidden}.progress-bar-fill{background:var(--text);border-radius:999px;width:0%;height:100%;transition:width .25s ease-out}.progress-bar-fill.indeterminate{animation:1.4s ease-in-out infinite progress-shimmer;width:35%!important}@keyframes progress-shimmer{0%{transform:translate(-100%)}to{transform:translate(285%)}}.progress-detail{color:var(--sub);text-align:center;word-break:break-all;text-overflow:ellipsis;white-space:nowrap;max-width:360px;min-height:1.2em;font-family:Fira Code,monospace;font-size:.85rem;overflow:hidden}body.progress-active{overflow:hidden}body.progress-active #appStage,body.progress-active header,body.progress-active .dock{filter:blur(6px)saturate(.8);pointer-events:none;transition:filter .2s ease-out}body.progress-active:after{content:"";z-index:90;pointer-events:none;background:#0000002e;position:fixed;inset:0}.select-wrapper select:disabled,.select-wrapper select[disabled]{opacity:.5;cursor:not-allowed}
