:root{color-scheme:dark;font:16px system-ui,-apple-system,Segoe UI,sans-serif;background:#050607;color:#e9eef8}*{box-sizing:border-box}body{margin:0}header{border-bottom:1px solid #202938;background:#0b0e13}a{color:#93c5fd}.wrap{max-width:1000px;margin:auto;padding:20px}.top,.flex{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font-size:1.3rem;font-weight:750;text-decoration:none;color:#fff}.brand span{color:#60a5fa}.muted{color:#9aa9bd}.small{font-size:.8rem}.hero{padding:30px 0}h1{font-size:2rem}h2{font-size:1.2rem}h3{margin-top:0}.stack{display:grid;gap:14px}.card{background:#10151d;border:1px solid #293447;border-radius:14px;padding:22px;margin:14px 0;min-width:0;overflow-wrap:anywhere}.narrow{max-width:470px;margin:60px auto}.btn,button{display:inline-block;border:0;background:#2563eb;color:white;border-radius:9px;padding:12px 18px;text-decoration:none;font-weight:650;cursor:pointer;white-space:nowrap}button:hover,.btn:hover{background:#1d4ed8}.secondary{background:#263243}.danger{background:#9f2434;margin-top:12px}.error{color:#ff8d9c}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stats strong{display:block;font-size:2rem;margin-top:8px}label{display:block;margin:12px 0;font-weight:600}input,select,textarea{display:block;background:#1b2431;border:1px solid #394b62;color:#fff;border-radius:9px;padding:11px;width:100%;font:inherit;margin-top:6px}input[type=checkbox]{display:inline;width:auto}.inline{display:flex;align-items:center;gap:8px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.drop{border:2px dashed #42638c;border-radius:12px;text-align:center;padding:30px;cursor:pointer;background:#101d30}.drop.drag{border-color:#70a8ff;background:#1a355a}.chart{height:190px;display:flex;gap:12px;align-items:end;justify-content:space-around}.barcol{height:180px;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:end;gap:6px;font-size:.75rem}.bar{background:linear-gradient(#60a5fa,#1d4ed8);width:65%;min-height:2px;border-radius:5px 5px 0 0}progress{width:100%;margin-top:16px}summary{cursor:pointer;padding:12px 0;color:#93c5fd}footer{text-align:center;color:#64748b;padding:40px}.toolbar{display:flex;align-items:center;gap:12px}.toolbar select{max-width:250px}@media(max-width:650px){.stats{grid-template-columns:1fr}.fields{grid-template-columns:1fr}.flex{align-items:flex-start;flex-direction:column}.card{padding:16px}.top{flex-direction:row}.muted{font-size:.88rem}}

.header-actions{display:flex;align-items:center;gap:14px}.admin-link{display:inline-flex;flex-direction:column;align-items:center;padding:9px 14px;gap:2px}.admin-link small{font-size:.65rem;font-weight:500;color:#cbd5e1}.toolbar{flex-wrap:wrap}.toolbar input{max-width:320px}.toolbar label{margin:0}.toolbar input,.toolbar select{margin-top:0}.toplist{padding-left:25px}.toplist li{padding:8px 0;border-bottom:1px solid #293447;display:list-item}.toplist li strong{float:right}.share-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #293447}.share-row form{flex-shrink:0}.bulkbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:#10151d;border:1px solid #293447;padding:12px;border-radius:12px;margin:14px 0}.bulkbar select,.bulkbar input{max-width:240px;margin:0}.bulkbar .inline{margin:0}.bulkbar button{padding:11px}.admin-filter input{flex:1}@media(max-width:650px){.header-actions{gap:7px}.header-actions>.muted{display:none}.admin-link{font-size:.82rem;padding:8px}.share-row{align-items:flex-start;flex-direction:column}.toolbar input,.toolbar select{max-width:100%;width:100%}}

/* Lingaz Downloads 3.2: public download cards */
.file-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,390px),1fr));gap:18px;margin:18px 0 35px}
.file-card{display:flex;flex-direction:column;min-width:0;background:#10151d;border:1px solid #293447;border-radius:18px;padding:23px;box-shadow:0 8px 28px #0004;transition:border-color .18s,transform .18s}
.file-card:hover{border-color:#4c688a;transform:translateY(-2px)}
.file-card-head{display:flex;align-items:flex-start;gap:14px;min-width:0}.file-icon{width:52px;height:52px;flex:none;display:grid;place-items:center;border-radius:13px;background:#162e50;color:#a6ceff;font-size:29px}
.file-title{min-width:0}.file-title h2{font-size:1.12rem;line-height:1.35;overflow-wrap:anywhere;margin:0 0 5px}.file-title p{margin:0}
.file-description{line-height:1.55;min-height:3em;margin:18px 0;overflow-wrap:anywhere}
.file-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;background:#0a0e14;border:1px solid #202a39;border-radius:12px;padding:14px 10px}
.file-facts div{min-width:0}.file-facts span{display:block;color:#98a8be;font-size:.74rem;margin-bottom:5px}.file-facts strong{display:block;font-size:.88rem;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.file-card-footer{margin-top:auto;padding-top:18px;display:flex;flex-direction:column;gap:12px}.access-note{font-size:.8rem;color:#b5c5d9}.download-btn{display:block;text-align:center;width:100%;padding:14px}
.filterbar{background:#10151d;border:1px solid #293447;border-radius:13px;padding:14px;gap:10px}.filterbar select{max-width:200px}.filterbar input{flex:1;min-width:170px}
@media(max-width:650px){.file-grid{grid-template-columns:1fr}.file-card{padding:17px}.filterbar{align-items:stretch}.filterbar label{width:100%}.filterbar input,.filterbar select,.filterbar button{width:100%;max-width:none}.file-facts{gap:5px;padding:12px 8px}.file-facts strong{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){.file-card{transition:none}.file-card:hover{transform:none}}

/* 3.3 ZIP-skapare */
.selected-files{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:6px 16px;padding-left:20px;color:#b9cbe1;font-size:.85rem;max-height:180px;overflow:auto}
#uploadForm button:disabled{opacity:.6;cursor:wait}
#uploadState{min-height:1.3em}
