.db-app{--db-accent:#1769e0;--db-dark:#172033;--db-muted:#6f7888;--db-line:#e2e7ef;max-width:1220px;margin:28px auto;padding:26px;background:#f6f8fb;border:1px solid var(--db-line);border-radius:24px;color:var(--db-dark);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;box-shadow:0 24px 70px rgba(23,32,51,.08)}
.db-head,.db-brand,.db-actions,.db-toolbar,.db-view-switch,.db-up>div,.db-card-actions{display:flex;align-items:center}.db-head{justify-content:space-between;gap:20px}.db-brand{gap:13px}.db-lock{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#15233c,#2d4e82);display:grid;place-items:center;color:#fff;box-shadow:0 8px 20px rgba(23,32,51,.18)}.db-head h2{font-size:30px;line-height:1;margin:0 0 6px}.db-head small,.db-meta,.db-up small{color:var(--db-muted)}.db-actions{gap:10px}.db-actions button,.db-actions label{border:1px solid var(--db-line);border-radius:12px;padding:12px 16px;background:#fff;font-weight:750;cursor:pointer}.db-actions label{border-color:var(--db-accent);background:var(--db-accent);color:#fff}.db-toolbar{gap:12px;margin:24px 0 15px}.db-toolbar>strong{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-toolbar>button{border:0;background:transparent;font-weight:700;cursor:pointer}.db-toolbar>button:disabled{opacity:.35}.db-toolbar>input{width:270px;max-width:38%;padding:11px 13px;border:1px solid var(--db-line);border-radius:12px;background:#fff}.db-view-switch{gap:4px;padding:3px;border:1px solid var(--db-line);border-radius:10px;background:#fff}.db-view-switch button{border:0;background:transparent;border-radius:7px;padding:6px 9px;cursor:pointer}.db-view-switch button.is-active{background:#eaf2ff;color:var(--db-accent)}.db-drop{padding:30px;margin-bottom:20px;border:2px dashed #bcc7d8;border-radius:18px;text-align:center;background:rgba(255,255,255,.72);transition:.2s}.db-drop b,.db-drop span{display:block}.db-drop span{margin-top:5px;color:var(--db-muted)}.db-drop.over{border-color:var(--db-accent);background:#edf5ff;transform:scale(1.003)}.db-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.db-card{overflow:hidden;background:#fff;border:1px solid var(--db-line);border-radius:17px;box-shadow:0 8px 25px rgba(23,32,51,.04);transition:.18s}.db-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(23,32,51,.08)}.db-preview{height:155px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#edf1f7,#f7f9fc);font-size:58px;overflow:hidden}.db-preview img{width:100%;height:100%;object-fit:cover}.db-body{padding:15px}.db-name{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-meta{font-size:12.5px;margin-top:5px}.db-card-actions{gap:12px;margin-top:13px}.db-card-actions a,.db-card-actions button{border:0;background:none;padding:0;color:var(--db-accent);font-weight:750;text-decoration:none;cursor:pointer}.db-card-actions .db-danger{color:#c73b3b}.db-grid.is-list{display:block}.db-grid.is-list .db-card{display:grid;grid-template-columns:68px 1fr;margin-bottom:9px}.db-grid.is-list .db-preview{height:68px;font-size:30px}.db-grid.is-list .db-body{display:grid;grid-template-columns:minmax(160px,1fr) minmax(160px,.7fr) auto;align-items:center;gap:16px}.db-grid.is-list .db-card-actions{margin:0}.db-empty{grid-column:1/-1;padding:44px;text-align:center;background:#fff;border-radius:16px;color:var(--db-muted)}.db-uploads{padding:15px;margin-bottom:20px;background:#fff;border:1px solid var(--db-line);border-radius:16px}.db-up+.db-up{margin-top:13px;padding-top:13px;border-top:1px solid var(--db-line)}.db-up>div{justify-content:space-between;gap:12px}.db-up i{display:block;height:8px;margin:8px 0;background:#e8edf4;border-radius:999px;overflow:hidden}.db-up em{display:block;width:0;height:100%;background:var(--db-accent);transition:width .2s}.db-status{margin-top:15px;font-size:14px}.db-status.is-error{color:#c73b3b}.db-note{padding:17px;background:#fff;border:1px solid var(--db-line);border-radius:13px}
@media(max-width:760px){.db-app{margin:0;padding:16px;border-radius:0}.db-head,.db-toolbar{align-items:stretch;flex-direction:column}.db-actions{width:100%}.db-actions>*{flex:1;text-align:center}.db-toolbar>input{width:100%;max-width:none;box-sizing:border-box}.db-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.db-grid.is-list .db-body{grid-template-columns:1fr}.db-grid.is-list .db-meta{display:none}}
@media(max-width:460px){.db-grid{grid-template-columns:1fr}.db-head h2{font-size:26px}}
.db-login-wrap{min-height:520px;display:flex;align-items:center;justify-content:center;padding:32px 16px;background:#f5f7fb;border-radius:22px}.db-login-card{width:100%;max-width:430px;padding:36px;background:#fff;border:1px solid #e1e6ef;border-radius:22px;box-shadow:0 22px 60px rgba(24,36,60,.12);text-align:center;font-family:system-ui,sans-serif;color:#172033}.db-login-logo{width:58px;height:58px;margin:0 auto 16px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:#1769e0;color:#fff;font-size:24px}.db-login-card h2{font-size:30px;margin:0 0 8px}.db-login-card p{margin:0 0 24px;color:#70798a}.db-login-card form{text-align:left}.db-login-card label{display:block;margin:0 0 14px;font-weight:700}.db-login-card input[type=text],.db-login-card input[type=password]{width:100%;box-sizing:border-box;margin-top:7px;padding:13px 14px;border:1px solid #dbe1ea;border-radius:12px;font-size:16px}.db-login-card button{width:100%;margin-top:8px;padding:14px;border:0;border-radius:12px;background:#1769e0;color:#fff;font-weight:800;font-size:16px;cursor:pointer}.db-remember{display:flex!important;align-items:center;gap:8px;font-weight:500!important;color:#596273}.db-lost{display:block;margin-top:18px;text-align:center;color:#1769e0;text-decoration:none;font-weight:700}.db-login-error{margin:0 0 16px;padding:12px;border-radius:10px;background:#fff0f0;color:#a52424;text-align:left}.db-logout{padding:11px 14px;border:1px solid #dfe4ed;border-radius:12px;background:#fff;color:#172033;text-decoration:none;font-weight:700}
.db-login-success{margin:14px 0;padding:11px 13px;border-radius:10px;background:#eaf8ef;color:#176b35;font-size:14px}
