:root{color-scheme:light;--bg:#f4f3ef;--ink:#253d35;--muted:#7c827a;--line:#dedfd7;--green:#456e5a}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}aside{position:fixed;inset:0 auto 0 0;width:220px;background:#243c32;color:#edf0e6;padding:40px 24px}.brand{font-size:32px;font-weight:650;letter-spacing:6px;margin-bottom:52px}.brand span{display:block;font-size:11px;letter-spacing:3px;margin-top:14px;font-weight:400;color:#b8c5b9}.nav{display:block;width:100%;text-align:left;background:transparent;color:#d6ded1;border:0;padding:15px 18px;margin:10px 0}.nav.active{background:#3e5547;color:white}.aside-note{position:absolute;bottom:40px;font-size:12px;line-height:2.3;color:#aab8a9}main{margin-left:220px;padding:44px 46px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:3px;color:var(--muted)}h1{font-size:30px;margin:9px 0}h2{font-size:22px}button{cursor:pointer;border:1px solid var(--line);background:white;color:var(--ink);padding:11px 18px;border-radius:7px;font:inherit}button:hover{border-color:var(--green)}button:disabled{opacity:.5;cursor:wait}input,select{border:1px solid var(--line);border-radius:7px;padding:12px;background:white;color:var(--ink);font:inherit}#notice{padding:14px 18px;border-left:3px solid #bdc6ae;background:#e9ece1;font-size:13px;line-height:1.8;margin-bottom:28px}.toolbar{display:flex;gap:12px;margin:28px 0}.toolbar input{flex:1}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:22px}.card{background:white;border:1px solid #e8e7df;border-radius:10px;overflow:hidden}.image{height:200px;background:#e4e6db;display:flex;align-items:center;justify-content:center;color:#7b8574;font-size:28px;letter-spacing:3px}.image img{width:100%;height:100%;object-fit:cover}.card .content{padding:16px}.card h3{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 0 9px}.meta{color:var(--muted);font-size:12px;display:flex;justify-content:space-between;margin-bottom:15px}.card button{width:100%}.panel{max-width:760px;background:white;padding:34px;border-radius:12px;border:1px solid var(--line)}p{color:var(--muted);line-height:1.9}.panel label{display:block;margin:20px 0}.panel label input{margin-left:14px}label.drop{padding:35px;border:1px dashed #93a18d;border-radius:10px;background:#f3f5ee}.drop input{display:block;margin:15px 0 0!important;max-width:100%}#upload-results li{padding:12px 0;line-height:1.8}dialog{width:min(480px,92vw);border:1px solid var(--line);border-radius:14px;padding:30px;box-shadow:0 20px 100px #0002}dialog::backdrop{background:#15291e77}dialog label{display:block;margin:16px 0}dialog input,dialog select{display:block;width:100%;margin-top:8px}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}#more{margin:25px 0}pre{white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:760px){aside{position:static;width:auto;padding:18px}.brand{font-size:24px;margin:0}.brand span,.aside-note{display:none}.nav{display:inline-block;width:auto;margin:14px 4px 0;padding:9px 13px}main{margin:0;padding:24px 16px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.image{height:160px}.toolbar{flex-wrap:wrap}.toolbar input{min-width:100%}header{gap:10px}h1{font-size:26px}}
.card{position:relative}.select-card{position:absolute;top:10px;left:10px;width:22px;height:22px;accent-color:var(--green)}#batch-price{width:110px}#selected-count{align-self:center}.toolbar{align-items:center}#category-list{list-style:none;padding:0}#category-list li{margin:10px 0}
[hidden]{display:none!important}.toolbar{flex-wrap:wrap}.toolbar input{min-width:160px}.toolbar select{max-width:100%}.panel label select{margin-left:14px;max-width:100%}#login-error{color:#9c3b33}#upload-results{padding-left:22px}#upload-results li button{margin-left:12px}#account{font-size:13px;color:var(--muted)}.image{font-size:20px;text-align:center;letter-spacing:1px}.image img{object-fit:contain}#audit-list{padding-left:20px;line-height:2.2;overflow-wrap:anywhere}@media(max-width:760px){.panel{padding:22px}.panel label input,.panel label select{display:block;margin:10px 0 0;max-width:100%}.toolbar input{min-width:0;width:100%}.toolbar select{flex:1}#account{display:none}}
#vision-key{display:block;width:100%;max-width:440px;margin:12px 0}a{color:var(--green)}#upload-results li[data-state=rejected],#upload-results li[data-state=failed]{color:#9c3b33}#upload-results li[data-state=succeeded]{color:var(--green)}
