/* Smart Document Manager - Public frontend (list/grid) */
.sdm-frontend{
	--sdm-fp:#1e3a8a;
	--sdm-fa:#3b82f6;
	--sdm-bg:#f8fafc;
	--sdm-surface:#ffffff;
	--sdm-text:#0f172a;
	--sdm-muted:#64748b;
	--sdm-border:#e5e7eb;
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
	color:var(--sdm-text);
	max-width:1280px;margin:0 auto;
}

/* Toolbar */
.sdm-fe-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0 20px;flex-wrap:wrap;}
.sdm-fe-search{position:relative;flex:1;min-width:240px;max-width:520px;}
.sdm-fe-search i{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:14px;}
.sdm-fe-search-input{width:100%;padding:14px 18px 14px 46px;border-radius:999px;border:1px solid var(--sdm-border);background:#fff;font-size:14px;color:var(--sdm-text);box-shadow:0 1px 2px rgba(15,23,42,.04);transition:box-shadow .2s,border-color .2s;}
.sdm-fe-search-input::placeholder{color:#94a3b8;}
.sdm-fe-search-input:focus{outline:none;border-color:var(--sdm-fa);box-shadow:0 0 0 4px rgba(59,130,246,.12);}

.sdm-fe-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.sdm-fe-filter-label{color:#94a3b8;font-size:14px;margin-right:4px;}

/* Chips */
.sdm-chip-wrap{position:relative;}
.sdm-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;border:1px solid var(--sdm-border);background:#fff;color:#475569;font-size:13px;font-weight:500;cursor:pointer;transition:all .18s;}
.sdm-chip:hover{border-color:#cbd5e1;color:var(--sdm-text);}
.sdm-chip i{font-size:10px;opacity:.7;}
.sdm-chip.active{background:var(--sdm-fp);color:#fff;border-color:var(--sdm-fp);}
.sdm-chip-menu{position:absolute;top:calc(100% + 6px);left:0;background:#fff;border:1px solid var(--sdm-border);border-radius:14px;box-shadow:0 12px 32px rgba(15,23,42,.12);padding:6px;min-width:160px;z-index:50;display:none;max-height:280px;overflow:auto;}
.sdm-chip-menu.open{display:block;}
.sdm-chip-item{display:block;width:100%;text-align:left;padding:9px 12px;border-radius:9px;border:0;background:transparent;cursor:pointer;font-size:13px;color:#334155;}
.sdm-chip-item:hover{background:#f1f5f9;}
.sdm-chip-item.active{background:var(--sdm-fp);color:#fff;}

/* View toggle */
.sdm-fe-view{display:inline-flex;background:#fff;border:1px solid var(--sdm-border);border-radius:999px;padding:4px;gap:2px;}
.sdm-fe-vt{padding:8px 14px;border:0;background:transparent;cursor:pointer;color:#94a3b8;border-radius:999px;font-size:14px;display:inline-flex;align-items:center;justify-content:center;transition:all .18s;}
.sdm-fe-vt.active{background:var(--sdm-fp);color:#fff;}

/* Results - list mode (default per screenshot) */
.sdm-fe-results{display:flex;flex-direction:column;gap:14px;}
.sdm-fe-results.sdm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;}

/* List card */
.sdm-fe-card{background:#fff;border:1px solid var(--sdm-border);border-radius:18px;padding:18px;display:grid;grid-template-columns:120px 1fr auto;gap:20px;align-items:center;transition:border-color .2s,box-shadow .2s,transform .2s;}
.sdm-fe-card:hover{border-color:#cbd5e1;box-shadow:0 12px 28px rgba(15,23,42,.08);}
.sdm-fe-thumb{width:120px;height:130px;border-radius:14px;background:#f8fafc;border:1px solid #eef2f7;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}
.sdm-fe-thumb img{width:100%;height:100%;object-fit:cover;}
.sdm-fe-thumb .sdm-fe-fileicon{font-size:64px;}
.sdm-fe-badge{position:absolute;top:10px;right:10px;background:#1e293b;color:#fff;font-size:10px;padding:4px 10px;border-radius:999px;font-weight:700;letter-spacing:.5px;}

.sdm-fe-body{min-width:0;}
.sdm-fe-title{font-weight:700;font-size:20px;line-height:1.3;color:#0f172a;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.sdm-fe-desc{color:#94a3b8;font-size:14px;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}

.sdm-fe-side{display:flex;flex-direction:column;align-items:flex-end;gap:10px;min-width:200px;}
.sdm-fe-side-meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px;color:#475569;font-size:14px;}
.sdm-fe-side-meta .sdm-year{color:#0f172a;font-weight:500;}
.sdm-fe-side-meta span{display:inline-flex;align-items:center;gap:8px;}
.sdm-fe-side-meta i{color:#64748b;}

.sdm-fe-actions{display:flex;gap:8px;margin-top:6px;}
.sdm-fe-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 18px;border-radius:999px;border:1px solid var(--sdm-border);background:#fff;color:#0f172a;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none;transition:all .18s;}
.sdm-fe-btn:hover{border-color:#94a3b8;}
.sdm-fe-btn-primary{background:var(--sdm-fp);color:#fff;border-color:var(--sdm-fp);}
.sdm-fe-btn-primary:hover{background:#1e40af;border-color:#1e40af;color:#fff;}

/* Grid mode override */
.sdm-grid .sdm-fe-card{display:flex;flex-direction:column;align-items:stretch;gap:14px;padding:0;overflow:hidden;}
.sdm-grid .sdm-fe-thumb{width:100%;height:170px;border-radius:0;border:0;border-bottom:1px solid #eef2f7;}
.sdm-grid .sdm-fe-body{padding:0 18px;}
.sdm-grid .sdm-fe-side{align-items:stretch;padding:0 18px 18px;min-width:0;}
.sdm-grid .sdm-fe-side-meta{flex-direction:row;align-items:center;justify-content:space-between;gap:14px;}
.sdm-grid .sdm-fe-actions{margin-top:0;}
.sdm-grid .sdm-fe-actions .sdm-fe-btn{flex:1;}

/* Loader / empty */
.sdm-fe-loadmore-wrap{text-align:center;margin-top:24px;}
.sdm-fe-loadmore{padding:11px 22px;border-radius:999px;border:1px solid var(--sdm-border);background:#fff;cursor:pointer;font-weight:600;color:#0f172a;}
.sdm-fe-loadmore:hover{background:var(--sdm-fp);color:#fff;border-color:var(--sdm-fp);}
.sdm-fe-empty{text-align:center;padding:60px 20px;color:var(--sdm-muted);background:#fff;border-radius:18px;border:1px dashed var(--sdm-border);}
.sdm-fe-empty i{font-size:54px;display:block;margin-bottom:10px;opacity:.4;}
.sdm-fe-skeleton{background:linear-gradient(90deg,#eef2f7 25%,#f8fafc 50%,#eef2f7 75%);background-size:200% 100%;animation:sdm-fs 1.4s infinite;border-radius:18px;height:160px;}
@keyframes sdm-fs{0%{background-position:200% 0;}100%{background-position:-200% 0;}}

/* Preview modal */
.sdm-preview-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;}
.sdm-preview-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.85);backdrop-filter:blur(6px);}
.sdm-preview-dialog{position:relative;background:#fff;width:96%;max-width:900px;height:88vh;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;}
.sdm-preview-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:50%;border:0;background:rgba(15,23,42,.85);color:#fff;cursor:pointer;z-index:2;font-size:16px;}
.sdm-preview-content{flex:1;display:flex;align-items:center;justify-content:center;background:#f8fafc;}
.sdm-preview-content iframe,.sdm-preview-content img{width:100%;height:100%;border:0;object-fit:contain;}

@media (max-width:820px){
	.sdm-fe-toolbar{flex-direction:column;align-items:stretch;}
	.sdm-fe-search{max-width:100%;}
	.sdm-fe-filters{justify-content:flex-start;}
	.sdm-fe-card{grid-template-columns:90px 1fr;grid-template-rows:auto auto;}
	.sdm-fe-thumb{width:90px;height:100px;}
	.sdm-fe-thumb .sdm-fe-fileicon{font-size:44px;}
	.sdm-fe-title{font-size:16px;}
	.sdm-fe-side{grid-column:1/-1;align-items:stretch;min-width:0;}
	.sdm-fe-side-meta{flex-direction:row;justify-content:space-between;gap:14px;flex-wrap:wrap;}
	.sdm-fe-actions{justify-content:flex-end;}
}
