/* Ace DriveVault - light theme, mobile-first. No dark theme. */
:root{--navy:#1b2a4a;--gold:#c9a227;--bg:#f6f7f9;--card:#fff;--text:#1c2430;--muted:#6b7686;--line:#e2e6ec;--red:#b42318;--green:#1a7a3a;--amber:#8a5a00}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}
a{color:#1d4ed8}.topbar{background:var(--navy);color:#fff;padding:10px 12px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.brand{color:#fff;font-weight:800;text-decoration:none;font-size:20px}.brand::after{content:"";display:inline-block;width:8px;height:8px;background:var(--gold);border-radius:50%;margin-left:6px}
.topsearch{display:flex;gap:6px;flex:1;min-width:220px}.topsearch input{flex:1;padding:9px;border-radius:8px;border:1px solid #ccc}
.topsearch button,.btn{background:#fff;border:1px solid var(--line);padding:9px 14px;border-radius:8px;cursor:pointer;text-decoration:none;color:var(--text);display:inline-block;font-size:15px}
.btn-primary{background:var(--navy);color:#fff;border-color:var(--navy)}.btn-danger{background:var(--red);color:#fff;border-color:var(--red)}.btn-small{padding:6px 10px;font-size:13px}
.topnav{display:flex;flex-wrap:wrap;gap:6px;width:100%}.topnav a{color:#dbe2f0;text-decoration:none;padding:6px 10px;border-radius:6px;font-size:14px}.topnav a.active,.topnav a:hover{background:rgba(255,255,255,.15);color:#fff}
.userbar{margin-left:auto;display:flex;gap:8px;align-items:center}.wrap{max-width:1100px;margin:0 auto;padding:14px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:14px}.narrow{max-width:520px;margin:20px auto}
.grid3{display:grid;gap:14px}.filegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.filecard{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px}
.tablewrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left;vertical-align:top}.table th{background:#eef1f5}
label{display:block;margin:10px 0 4px;font-weight:600}label input, label select, input[type=text],input[type=number],input[type=password],input[type=search],select{width:100%;padding:10px;border:1px solid #cbd2dc;border-radius:8px;font-size:16px;background:#fff}
.filters{display:grid;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:14px}.inline{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.inline label{flex:1;min-width:160px}
.alert{padding:12px;border-radius:8px;margin:12px 0}.alert-error{background:#fdecea;color:var(--red);border:1px solid #f5c6c2}.alert-warning{background:#fff7e0;color:var(--amber);border:1px solid #ffe08a}.alert-info{background:#eaf2ff;color:#1d4ed8;border:1px solid #bcd3ff}.alert-success{background:#e6f5ea;color:var(--green);border:1px solid #a8d9b8}
.muted{color:var(--muted)}.small{font-size:13px}.big{font-size:32px;font-weight:800;margin:4px 0}.warn{color:var(--red);font-weight:700}
.empty{background:#fff;border:1px dashed var(--line);border-radius:12px;padding:24px;text-align:center;margin:12px 0}
.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}.progress{height:14px;background:#e8ecf1;border-radius:8px;overflow:hidden}.bar{height:100%;background:var(--gold);transition:width .2s}
.dropzone{border:2px dashed #9aa7bb;border-radius:10px;padding:22px;text-align:center;margin:10px 0;background:#fbfcfe}.dropzone.over{background:#eaf2ff}
.crumbs{margin:8px 0}.foot{padding:20px;text-align:center;color:var(--muted);font-size:13px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
button:focus,a:focus,input:focus,select:focus{outline:3px solid var(--gold);outline-offset:1px}
@media(min-width:720px){.grid3{grid-template-columns:1fr 1fr 1fr}.filters{grid-template-columns:repeat(3,1fr)}.topnav{width:auto;flex:1}}
