:root{--bg1:#2a45b5;--bg2:#1b2a8a;--bg3:#16226e;--gold:#fbbf24;--cream:#fff3c4;--line:rgba(255,255,255,.35);--ink:#1b2a6b;--muted:#5b6798;--ok:#16a34a;--bad:#dc2626}
*{box-sizing:border-box}
body{margin:0;font-family:'Open Sans',system-ui,sans-serif;color:#fff;min-height:100vh;background:radial-gradient(circle at 50% -10%,#4b66d6,transparent 55%),linear-gradient(180deg,var(--bg1),var(--bg2) 55%,var(--bg3))}
.wrap{max-width:980px;margin:0 auto;padding:18px 16px 40px}
nav{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
nav a{font:700 13px 'Open Sans',sans-serif;color:#fff;text-decoration:none;background:rgba(20,32,110,.55);border:1.5px solid var(--line);border-radius:999px;padding:9px 16px}
nav a[aria-current]{background:#fff;color:var(--bg2);border-color:#fff}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
header{text-align:center;margin:26px 0 22px}
.logo{width:120px;height:120px;border-radius:50%;box-shadow:0 0 0 10px rgba(255,255,255,.18),0 8px 30px rgba(0,0,0,.35)}
h1{margin:16px 0 2px;font-size:clamp(26px,6vw,40px);font-weight:800;letter-spacing:.06em;line-height:1.15;text-shadow:0 3px 8px rgba(0,0,0,.35)}
.loc{color:var(--gold);letter-spacing:.3em;font-weight:600;font-size:14px}
.sub{margin-top:14px;font-weight:700;letter-spacing:.2em;font-size:clamp(13px,3vw,18px)}
h2{margin:2px 0 0;font-size:clamp(26px,7vw,44px);font-weight:800;letter-spacing:.08em;background:linear-gradient(#fff,var(--cream) 60%,#f1c75b);-webkit-background-clip:text;background-clip:text;color:transparent}
.date{font-weight:600;font-size:14px;margin-top:6px}.clock{font-weight:800;font-size:26px;color:var(--gold);font-variant-numeric:tabular-nums}
.panel{background:#fff;color:var(--ink);border-radius:22px;padding:20px;box-shadow:0 0 0 4px rgba(255,255,255,.2),0 12px 30px rgba(0,0,0,.3);margin-top:18px}
.panel.narrow{max-width:420px;margin:18px auto 0}.panel h3{margin:0 0 12px;font-size:20px;font-weight:800}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.stat{background:rgba(255,255,255,.12);border:1.5px solid var(--line);border-radius:16px;padding:12px;text-align:center}
.stat b{display:block;font-size:26px;color:var(--gold)}.stat span{font-size:12px;font-weight:600}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.grid1{display:grid;gap:12px}.full{grid-column:1/-1}
label{font-weight:700;font-size:13px;display:block;margin-bottom:4px}
input,select,textarea{width:100%;font:600 14px 'Open Sans',sans-serif;color:var(--ink);border:1.5px solid #c3ccf0;border-radius:12px;padding:10px 12px;background:#fff}
input[type=file]{border:3px dashed #8fa0e6;background:#f2f5ff;padding:26px 14px;cursor:pointer}
textarea{resize:vertical;min-height:60px}
.btn{display:inline-block;text-decoration:none;font:800 14px 'Open Sans',sans-serif;border:0;border-radius:999px;padding:11px 20px;cursor:pointer;background:var(--bg1);color:#fff}
.btn.gold{background:var(--gold);color:#3a2a00}.btn.ghost{background:#e8edff;color:var(--bg2)}.btn.red{background:#fee2e2;color:var(--bad)}
.bar{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.msg{margin-top:10px;font-weight:700;font-size:14px}.msg.bad{color:var(--bad)}.msg.good{color:var(--ok)}
.tools{display:flex;gap:10px;flex-wrap:wrap}.tools input{flex:2 1 200px}.tools select{flex:1 1 140px;width:auto}
.item{display:flex;gap:12px;align-items:center;border:1.5px solid #dfe5fa;border-radius:16px;padding:12px;margin-top:10px}
.pdf.ft-doc,.pdf.ft-docx{background:#2563eb}.pdf.ft-xls,.pdf.ft-xlsx,.pdf.ft-csv{background:#16a34a}.pdf.ft-ppt,.pdf.ft-pptx{background:#ea580c}
.pdf{flex:none;width:44px;height:52px;border-radius:8px;background:#dc2626;color:#fff;font:800 12px 'Open Sans';display:grid;place-items:center}
.info{flex:1;min-width:0}.info b{display:block;font-size:15px;overflow-wrap:anywhere}
.meta{font-size:12px;color:var(--muted);font-weight:600;margin-top:2px}
.tag{display:inline-block;font-size:11px;font-weight:800;padding:2px 8px;border-radius:99px;background:#e8edff;color:var(--bg2);margin-right:6px}.tag.new{background:var(--gold);color:#3a2a00}
.acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.acts .btn{padding:8px 14px;font-size:13px}.acts form{margin:0}
.empty{text-align:center;color:var(--muted);padding:22px 0;font-weight:600}
footer{text-align:center;font-size:13px;opacity:.85;margin-top:26px}
@media(max-width:620px){.grid{grid-template-columns:1fr}.stat b{font-size:20px}.item{flex-wrap:wrap}.acts{width:100%;justify-content:flex-start}}
