:root{color-scheme:dark;--bg:#0e1017;--surface:#171922;--surface2:#212430;--edge:#303442;--txt:#f2f3f8;--muted:#9299ac;--accent:#a7ffcf;--shadow:rgba(0,0,0,.4)}[data-theme=light]{color-scheme:light;--bg:#f6f7f9;--surface:#fff;--surface2:#edf0f5;--edge:#dce1eb;--txt:#202431;--muted:#70798e;--accent:#157b56;--shadow:rgba(16,22,40,.15)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--txt);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans TC",sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}a{color:inherit;text-decoration:none}.topbar{height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,3vw,42px);border-bottom:1px solid var(--edge);background:var(--surface);position:sticky;top:0;z-index:5}.brand{display:flex;align-items:center;gap:11px;letter-spacing:.11em;font-size:12px;font-weight:700}.brand b{font-weight:900}.brand small{display:block;font-size:9px;color:var(--muted);letter-spacing:.16em;margin-top:5px}.mark{width:38px;height:38px;background:var(--accent);border-radius:11px;color:var(--bg);font-size:21px;font-weight:900;display:grid;place-content:center}.top-actions{display:flex;align-items:center;gap:18px}.sync{color:var(--muted);font-size:12px}.iconbtn{width:36px;height:36px;background:var(--surface2);color:var(--txt);border:1px solid var(--edge);border-radius:9px}.shell{display:grid;grid-template-columns:228px minmax(0,1fr);min-height:calc(100vh - 74px)}.sidebar{border-right:1px solid var(--edge);padding:28px 15px;position:sticky;top:74px;height:calc(100vh - 74px);overflow:auto}.side-label{font-size:10px;letter-spacing:.17em;color:var(--muted);font-weight:800;margin:10px 14px 14px}.category-head{margin-top:42px}.nav{display:grid;gap:4px}.nav-item{color:var(--muted);background:transparent;border:0;border-radius:10px;padding:12px 13px;display:flex;gap:11px;align-items:center;text-align:left;font-weight:600;font-size:13px;width:100%}.nav-item span:nth-child(1){flex:1}.nav-item.active,.nav-item:hover{background:var(--surface2);color:var(--txt)}.nav-item.active{box-shadow:inset 3px 0 var(--accent)}.count{margin-left:auto;font-size:11px;opacity:.75}.side-note{background:var(--surface);border:1px solid var(--edge);border-radius:13px;padding:15px;font-size:11px;color:var(--muted);line-height:1.8;margin:38px 7px 0}.side-note b{color:var(--accent)}.main{padding:clamp(20px,3.2vw,48px);min-width:0;max-width:1760px;width:100%;margin:auto}.intro{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:8px 0 37px;border-bottom:1px solid var(--edge)}.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:800;color:var(--accent);margin:0 0 13px}h1{font-size:clamp(30px,3.4vw,49px);letter-spacing:-.04em;margin:0 0 13px}h2,h3,p{margin-top:0}.intro p:not(.eyebrow){font-size:13px;color:var(--muted);margin:0}.accent{color:var(--accent)}.stat-panel{display:flex;gap:34px}.stat-panel span{display:flex;flex-direction:column;min-width:66px}.stat-panel strong{font-size:27px}.stat-panel small{font-size:11px;color:var(--muted);margin-top:6px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:32px 0 22px}.toolbar h2{font-size:19px;margin:0 0 6px}.toolbar p{font-size:12px;color:var(--muted);margin:0}.toolbar-controls{display:flex;gap:10px;align-items:center}.search{display:flex;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--edge);border-radius:10px;padding:0 13px;color:var(--muted);height:42px;min-width:260px}.search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--txt);font-size:12px}select{height:42px;border:1px solid var(--edge);border-radius:10px;background:var(--surface);color:var(--txt);padding:0 12px;font-size:12px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.asset-card{min-width:0;background:var(--surface);border:1px solid var(--edge);border-radius:14px;overflow:hidden;transition:transform .18s,border-color .18s}.asset-card:hover{transform:translateY(-3px);border-color:var(--muted)}.card-preview{position:relative;width:100%;height:230px;background:linear-gradient(130deg,#202a37,#191b24);display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer}.card-preview img,.card-preview video{width:100%;height:100%;object-fit:contain;display:block}.card-preview video{position:absolute;inset:0}.preview-fallback{font-size:40px;color:#778493}.corner-label{position:absolute;top:12px;left:12px;font-size:10px;border-radius:6px;padding:5px 8px;background:#10131cdd;color:#e7edfc}.card-heart{position:absolute;right:11px;top:10px;color:white;border:1px solid #ffffff55;background:#111925cc;border-radius:9px;width:33px;height:33px;font-size:18px}.card-heart.is-favorite{color:#ff87a3}.card-body{padding:17px 18px 18px}.card-meta{font-size:10px;color:var(--accent);font-weight:700;letter-spacing:.06em;margin-bottom:9px}.card-body h3{font-size:15px;font-weight:750;margin:0 0 9px;line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-body p{font-size:12px;color:var(--muted);line-height:1.65;height:40px;overflow:hidden;margin-bottom:13px}.tag-list{display:flex;gap:6px;flex-wrap:wrap}.tag{padding:5px 8px;font-size:10px;background:var(--surface2);color:var(--muted);border:1px solid var(--edge);border-radius:5px}.notice{border:1px solid var(--edge);background:var(--surface2);padding:12px 16px;color:var(--muted);border-radius:9px;margin-bottom:18px;font-size:12px}.empty{text-align:center;padding:100px 16px;color:var(--muted);background:var(--surface);border:1px dashed var(--edge);border-radius:14px}.empty div{font-size:38px}.empty h3{color:var(--txt)}footer{margin:45px 0 5px;color:var(--muted);font-size:11px}footer a{text-decoration:underline}dialog{max-width:940px;width:calc(100vw - 26px);max-height:calc(100vh - 30px);overflow:auto;border:1px solid var(--edge);border-radius:17px;background:var(--surface);color:var(--txt);padding:0;box-shadow:0 25px 80px var(--shadow)}dialog::backdrop{background:#030509cc}.modal-head{height:53px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--edge);padding:0 17px;font-size:12px;color:var(--muted)}.modal-layout{display:grid;grid-template-columns:1fr 1fr}.modal-visual{background:#101118;min-height:440px;display:grid;place-items:center}.modal-visual img,.modal-visual video{max-height:65vh;width:100%;object-fit:contain}.modal-info{padding:30px;min-width:0}.modal-info h2{font-size:22px;line-height:1.4}.modal-info p{font-size:13px;line-height:1.8;color:var(--muted)}.modal-info h3{font-size:12px;margin:26px 0 10px}.specs{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0;font-size:11px;color:var(--muted)}code{word-break:break-all;background:var(--surface2);padding:10px;display:block;border-radius:7px;font-size:11px}.modal-actions{display:flex;gap:9px;margin:24px 0 10px}.modal-actions button{border:1px solid var(--edge);padding:11px 13px;border-radius:9px;color:var(--txt);background:var(--surface2);font-size:12px}.modal-actions .primary{background:var(--accent);color:var(--bg);border-color:transparent;font-weight:800}.tiny{font-size:10px!important}.modal-info .tag-list{margin:12px 0}@media(max-width:1100px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-panel{gap:15px}}@media(max-width:700px){.topbar{height:62px;padding:0 15px}.sync{display:none}.shell{display:block}.sidebar{position:static;height:auto;overflow:visible;border-right:0;border-bottom:1px solid var(--edge);padding:12px 13px}.side-label,.side-note,.category-head{display:none}.nav{display:flex;gap:6px;overflow:auto}.nav-item{width:auto;flex:none;white-space:nowrap;padding:10px;font-size:12px}.nav-item .count{display:none}#categoryNav{margin-top:7px}.main{padding:22px 13px}.intro{display:block;padding-bottom:20px}.stat-panel{margin-top:25px}.toolbar{align-items:stretch;flex-direction:column;margin:25px 0 18px}.toolbar-controls{width:100%}.search{min-width:0;flex:1}.cards{gap:11px}.card-preview{height:175px}.card-body{padding:12px}.card-body h3{font-size:13px}.card-body p{font-size:11px}.modal-layout{display:block}.modal-visual{min-height:250px}.modal-info{padding:20px}.modal-actions{flex-wrap:wrap}}@media(max-width:360px){.cards{grid-template-columns:1fr}.card-preview{height:270px}}
