:root{--orange:#e99a63;--orange-dark:#c9753d;--orange-pale:#fff2e8;--ink:#342b26;--muted:#85776f;--line:#f0e2d8;--paper:#fffdfb;--white:#fff;--shadow:0 12px 34px rgba(104,67,40,.07)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:#fffaf6}body{margin:0;min-height:100vh}a{color:var(--orange-dark);text-decoration:none}.topbar{height:auto;min-height:68px;padding:14px max(20px,calc((100% - 1160px)/2));display:flex;align-items:center;justify-content:space-between;gap:18px;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.brand{font-weight:800;font-size:19px;color:var(--ink);letter-spacing:-.4px}.brand:before{content:"";display:inline-block;width:11px;height:11px;border-radius:4px;background:var(--orange);margin-right:10px;transform:rotate(10deg)}nav{display:flex;align-items:center;gap:18px;font-size:14px;color:var(--muted)}nav a{font-weight:650}.container{width:min(1160px,calc(100% - 36px));margin:0 auto}.hero{margin:34px 0 22px;padding:35px 38px;border:1px solid #f4d8c4;border-radius:22px;background:linear-gradient(115deg,#fff0e4 0%,#fff9f4 58%,#fff 100%);display:flex;align-items:center;justify-content:space-between;min-height:175px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:var(--orange-dark);margin:0 0 10px}.hero h1,.page-heading h1{font-size:clamp(27px,4vw,38px);line-height:1.15;letter-spacing:-1.2px;margin:0 0 10px}.muted{color:var(--muted);margin:0;line-height:1.65}.filters{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,240px) auto;gap:10px;margin:20px 0 24px}input,select,textarea{width:100%;border:1px solid #e9dcd2;border-radius:10px;background:#fff;padding:12px 13px;color:var(--ink);font:inherit;outline:none;min-width:0}input:focus,select:focus,textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px #e99a6322}label{font-size:13px;font-weight:700;margin:3px 0 -3px;display:block}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:10px;padding:12px 17px;background:var(--orange);color:#38271c;font-weight:800;font-size:14px;cursor:pointer;transition:.15s}.btn:hover{background:#e68b4c;transform:translateY(-1px)}.btn-light{background:var(--orange-pale);color:#9b5a30;border:1px solid #f5ddcb}.btn-danger{background:#fff0ed;color:#b64e3d}.btn-small{padding:8px 11px;font-size:12px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.material-card,.panel{background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow)}.material-card{display:flex;gap:16px;padding:22px;min-width:0}.card-icon{flex:0 0 44px;height:44px;border-radius:13px;background:var(--orange-pale);color:var(--orange-dark);display:grid;place-items:center;font-size:23px;font-weight:700}.card-content{min-width:0;flex:1}.meta{display:flex;align-items:center;flex-wrap:wrap;gap:9px;color:#9a8c83;font-size:11px}.tag{display:inline-flex;background:#fff1e6;color:#a96235;padding:5px 9px;border-radius:30px;font-size:11px;font-weight:750}.material-card h2{font-size:18px;line-height:1.35;margin:12px 0 7px;overflow-wrap:anywhere}.material-card p{font-size:13px;color:var(--muted);line-height:1.6;overflow-wrap:anywhere}.file-info{margin:12px 0!important}.video-wrap{position:relative;width:100%;aspect-ratio:16/9;margin-top:13px;border-radius:12px;overflow:hidden;background:#211a17}.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.empty{grid-column:1/-1;text-align:center;padding:55px 20px;background:#fff;border:1px dashed #e8d5c6;border-radius:16px;color:var(--muted)}footer{text-align:center;padding:35px 16px 25px;color:#a09289;font-size:12px}.admin-container{padding-top:32px;padding-bottom:35px}.page-heading{margin-bottom:22px}.admin-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;align-items:start}.panel{padding:23px;margin-bottom:18px}.panel h2{font-size:18px;margin:0 0 20px;letter-spacing:-.3px}.stack-form{display:grid;gap:10px}.stack-form .btn{justify-self:start;margin-top:5px}.stack-form small{color:var(--muted);font-size:12px}.category-list{display:flex;gap:7px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:17px;margin-top:23px}.category-list h3{width:100%;font-size:13px;margin:0 0 3px}.note{margin-top:20px;padding:13px;border-radius:10px;background:#fff7f0;color:#82614b;font-size:12px;line-height:1.6}.table-panel{padding-bottom:12px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px;min-width:650px}th,td{text-align:left;padding:13px 11px;border-bottom:1px solid #f2e8e1}th{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:#9b8b80}td strong{font-weight:700}.alert{border-radius:10px;padding:12px 14px;margin:0 0 17px;font-size:13px}.alert.success{background:#edf8ef;color:#367245}.alert.error{background:#fff0ed;color:#a54132}.login-page{display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at top left,#ffead9 0%,#fffaf6 52%,#fff 100%)}.login-card{width:min(420px,100%);padding:35px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 20px 60px #8b5c3b12}.logo-mark{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:var(--orange);font-size:24px;font-weight:900;color:#fff;margin-bottom:24px}.login-card h1{font-size:31px;margin:0 0 8px;letter-spacing:-1px}.login-card form{display:grid;gap:11px;margin-top:25px}.login-card form label{margin-top:5px}.full{width:100%;margin-top:10px}[hidden]{display:none!important}
@media(max-width:760px){.topbar{padding:13px 18px;align-items:flex-start}.topbar nav{gap:10px;flex-wrap:wrap;justify-content:flex-end;font-size:12px}.container{width:calc(100% - 28px)}.hero{padding:25px 22px;margin-top:22px;min-height:0}.filters{grid-template-columns:1fr 1fr}.filters input{grid-column:1/-1}.filters .btn{grid-column:1/-1}.cards{grid-template-columns:1fr}.material-card{padding:17px;gap:12px}.card-icon{flex-basis:38px;height:38px}.admin-grid{grid-template-columns:1fr}.panel{padding:18px}.page-heading h1{font-size:29px}}@media(max-width:420px){.brand{font-size:16px}.topbar nav span{display:none}.hero h1{font-size:27px}.material-card{display:block}.card-icon{margin-bottom:12px}.filters{grid-template-columns:1fr}.filters input,.filters .btn{grid-column:auto}.login-card{padding:26px}}

/* Danh sách tài liệu kiểu hàng, theo mẫu giao diện cung cấp */
.materials-list{display:flex;flex-direction:column;gap:14px}.material-row{display:flex;align-items:flex-start;gap:14px;border:1px solid #dedede;background:#fff;padding:18px;border-radius:0;box-shadow:none}.material-row .card-icon{display:none}.material-row .card-content{width:100%;min-width:0}.material-row h2{font-size:18px;font-weight:600;margin:0 0 12px;line-height:1.45}.material-actions{display:flex;flex-wrap:wrap;gap:8px}.material-row .material-actions .btn{margin:0}.material-row .meta{margin-bottom:8px}.detail-panel{margin-top:24px}.detail-panel h1{font-size:26px}


/* Trang chi tiết tài liệu theo mẫu tham khảo */
.detail-page{background:#fff;color:#171717}
.detail-page .topbar{position:static;background:#fff;border-bottom:0;box-shadow:none;min-height:54px}
.detail-page .brand:before{background:#2873a8}
.detail-page a{color:#28699a}
.detail-container{width:min(1200px,calc(100% - 28px));margin:0 auto 36px}
.detail-document{padding:0;background:#fff;border:0;border-radius:0;box-shadow:none}
.detail-document h1{font-size:clamp(23px,3vw,30px);line-height:1.35;font-weight:650;letter-spacing:-.5px;margin:0 0 16px;overflow-wrap:anywhere}
.detail-meta{display:flex;align-items:center;gap:22px;flex-wrap:wrap;color:#285e87;font-size:13px;padding-bottom:17px;border-bottom:1px solid #e4e4e4}
.detail-tag{font-weight:600}
.detail-description{color:#555;line-height:1.65;margin:16px 0}
.detail-filename{color:#28699a;font-size:14px;overflow-wrap:anywhere;margin:24px 0 36px}
.detail-filename span{color:#777}
.detail-download{margin:0 0 24px;border-radius:3px;background:#f00000;color:#fff!important;padding:13px 17px;font-size:13px}
.detail-download:hover{background:#cf0000}
.detail-viewer{width:100%;margin:0 0 24px;background:#292929;overflow:hidden}
.pdf-viewer{height:min(78vh,900px);min-height:500px}
.pdf-viewer iframe,.office-viewer iframe{width:100%;height:100%;border:0;display:block}
.office-viewer{height:min(78vh,900px);min-height:500px;background:#f4f4f4}
.docx-viewer{min-height:500px;max-height:82vh;overflow:auto;padding:24px;background:#e8e8e8;color:#222}
.docx-viewer .docx-wrapper{padding:0!important;background:transparent!important}
.docx-viewer .document-container{margin:0 auto 18px!important;box-shadow:0 2px 12px #0002}
.viewer-note{font-size:12px;color:#777;margin:-12px 0 20px;line-height:1.6}
.unsupported-preview{text-align:center;padding:60px 20px;background:#f6f6f6;border:1px solid #ddd;margin-bottom:20px;color:#555}
.preview-file-icon{font-size:20px;font-weight:800;color:#28699a;margin-bottom:12px}
.unsupported-preview p{font-size:13px}
@media(max-width:650px){.detail-container{width:calc(100% - 24px)}.detail-page .topbar{padding:12px}.detail-document h1{font-size:23px}.pdf-viewer,.office-viewer{min-height:380px;height:65vh}.detail-filename{margin:20px 0 24px}}


/* Phân trang kho tài liệu */
.pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:24px 0 8px;padding:14px 0;border-top:1px solid #e5e7eb}
.pagination-info{font-size:13px;color:#687386}
.pagination-links{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.pagination-links a{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:7px 11px;border:1px solid #d8dee8;border-radius:6px;background:#fff;color:#334155;text-decoration:none;font-size:14px}
.pagination-links a:hover,.pagination-links a.active{background:#28699a;border-color:#28699a;color:#fff}
@media(max-width:600px){.pagination{align-items:flex-start;flex-direction:column}.pagination-links{width:100%}.pagination-links a{min-width:34px;padding:6px 9px}}
