:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft JhengHei",sans-serif;color:#192d44;background:#eef2f7;font-size:16px;--blue:#1755bc;--line:#d6dfeb}*{box-sizing:border-box}body{margin:0}header{background:#102743;color:white;padding:24px 4%;display:flex;justify-content:space-between;align-items:center;border-bottom:4px solid #4b8df1}h1{font-size:25px;margin:6px 0 0}.mark{font-size:13px;letter-spacing:3px;color:#acccff}h2{font-size:22px;margin:0 0 8px}.chip{border:1px solid #93aac8;border-radius:20px;padding:7px 13px;font-size:14px;white-space:nowrap}main{max-width:1440px;margin:24px auto;padding:0 28px}nav{display:flex;gap:10px;align-items:center;margin-bottom:24px}nav span{margin-left:auto;color:#52647b;font-size:14px}.panel{background:white;border:1px solid var(--line);border-radius:10px;padding:22px;margin-bottom:20px}.sectionTitle{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:24px 0 16px}.sectionTitle span,.muted{color:#596b80;font-size:14px;line-height:1.7}.sectionTitle input{width:300px}button{background:var(--blue);color:white;border:1px solid transparent;border-radius:6px;padding:10px 16px;font:inherit;cursor:pointer}button:hover{filter:brightness(.94)}button:disabled{opacity:.45;cursor:default}.secondary,.tab{background:white;color:#24456b;border-color:var(--line)}.tab.active{background:#1755bc;color:white}input,select{padding:9px;border:1px solid #aab9cc;border-radius:5px;background:white;color:#192d44;font:inherit;min-width:0}input[type=checkbox]{width:19px;height:19px;accent-color:var(--blue)}label{display:flex;flex-direction:column;gap:7px;font-size:14px}.inline{flex-direction:row;align-items:center;gap:8px}.toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.toolbar details{margin-left:auto}.settings{display:flex;gap:12px;flex-wrap:wrap;padding-top:15px}.settings input{width:130px}.drop{border:2px dashed #97afd0;padding:22px;background:#f4f8ff;border-radius:8px}.uploadRow{border-bottom:1px solid var(--line);padding:22px 0}.fields{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:15px}.filename{font-weight:600;overflow-wrap:anywhere}.tablewrap{overflow:auto;padding:0}table{width:100%;border-collapse:collapse}th{background:#e7edf6;color:#435974;text-align:left;font-size:14px;padding:15px}td{padding:18px 15px;border-top:1px solid var(--line);font-size:14px;max-width:360px}td small{display:block;overflow-wrap:anywhere;line-height:1.5;color:#64738a;margin-top:7px}.status{display:inline-block;background:#edf2fa;padding:5px 9px;border-radius:5px;color:#365377}.status.complete{background:#e1f4ed;color:#146049}.status.failed,.status.upload_failed,.status.interrupted{background:#fff0e3;color:#88420b}.empty{padding:45px;text-align:center;color:#60728b}.error{padding:16px;background:#fff0ee;border:1px solid #da9e97;color:#9b2924;border-radius:8px}.notice{font-size:14px;border-left:3px solid #bf8b25;background:#fff7df;padding:12px 16px;line-height:1.6}#gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.card{background:white;border:1px solid var(--line);border-radius:8px;padding:12px}.card:has(input:checked){border:2px solid #1755bc;padding:11px}.card img{width:100%;height:185px;object-fit:contain;background:#e9edf2;margin:12px 0}.card button{width:100%;margin-top:10px}.card p{font-size:14px;color:#52647b;margin:5px 0}.pager{display:flex;gap:20px;justify-content:center;align-items:center;margin:24px}.preview{display:grid;grid-template-columns:1fr 1fr;gap:15px}.preview img{max-width:100%;max-height:65vh;object-fit:contain}figure{text-align:center;margin:0}figcaption{font-size:14px;padding:10px}dialog{width:min(1100px,95vw);border:0;border-radius:10px;padding:24px}dialog::backdrop{background:#102743bb}progress{width:100%;height:12px;margin-top:15px;accent-color:var(--blue)}footer{font-size:14px;color:#62738a;border-top:1px solid var(--line);padding:18px 0;margin-top:24px}#saveStatus{font-size:14px;color:#496583}#login{max-width:620px;margin:70px auto}#login form{display:flex;gap:15px;align-items:end}#login label{flex:1}[hidden]{display:none!important}@media(max-width:1000px){#gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.fields{grid-template-columns:repeat(2,1fr)}nav{flex-wrap:wrap}nav span{width:100%;margin:0}}@media(max-width:650px){main{padding:0 12px}header{padding:18px}.chip{display:none}.sectionTitle{align-items:start;flex-direction:column}#gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.fields{grid-template-columns:1fr 1fr}.panel{padding:14px}.tablewrap{padding:0}.preview{grid-template-columns:1fr}.toolbar{gap:10px}.toolbar details{margin:0}.sectionTitle input{width:100%}}

nav #storage{overflow-wrap:anywhere;max-width:65%;line-height:1.6}@media(max-width:1000px){nav #storage{max-width:100%}}
#passwordForm{display:grid;gap:16px;min-width:min(480px,80vw)}#usersDialog{width:min(1100px,95vw)}#usersRows input[type=password]{width:190px;margin-right:8px}#usersRows button{padding:8px 11px}#identity{font-weight:600}
