
:root{
  --bg:#f5f7fa;--panel:#ffffff;--panel2:#f8fafc;--line:#e6eaf0;
  --text:#171a1f;--muted:#707986;--accent:#111827;--accent2:#f1f3f5;
  --danger:#c83c4a;--success:#198754;--radius:18px;--shadow:0 10px 35px rgba(20,28,40,.07)
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;font-family:"Be Vietnam Pro","Noto Sans",Arial,"Helvetica Neue",sans-serif;background:linear-gradient(135deg,#f8fafc 0%,#f2f4f7 100%);color:var(--text);font:14px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif}
a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}
.app-shell{min-height:100vh;display:flex}
.sidebar{position:fixed;left:0;top:0;bottom:0;width:255px;background:rgba(255,255,255,.94);border-right:1px solid var(--line);padding:25px 16px;display:flex;flex-direction:column;backdrop-filter:blur(18px);box-shadow:4px 0 24px rgba(30,40,55,.03)}
.brand{display:flex;align-items:center;gap:12px;padding:0 10px 28px}
.brand b,.brand small{display:block}.brand small{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.16em}
.brand-mark{width:40px;height:40px;border:1px solid #d6dbe2;border-radius:12px;display:grid;place-items:center;font-size:12px;font-weight:800;letter-spacing:-.04em;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.05)}
nav{display:grid;gap:6px}nav a,.logout{padding:12px 13px;border-radius:12px;color:#66707c;transition:.2s}
nav a:hover,.logout:hover{background:#f1f3f6;color:#111827}
.sidebar-bottom{margin-top:auto}.user-mini{display:flex;align-items:center;gap:10px;padding:12px;color:#2d3440;border-top:1px solid var(--line);margin-bottom:7px}
.user-mini>span{width:32px;height:32px;border-radius:50%;background:#eef1f5;display:grid;place-items:center;font-weight:700}.user-mini small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}
.main{margin-left:255px;width:calc(100% - 255px)}.topbar{height:94px;border-bottom:1px solid var(--line);padding:22px 34px;display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,.72);backdrop-filter:blur(18px)}
h1{font-size:25px;margin:1px 0 0;letter-spacing:-.03em}h2{font-size:20px;margin:0 0 6px}.eyebrow{font-size:10px;color:#8b949f;letter-spacing:.2em;font-weight:700}.top-user{color:#66707c}
.content{padding:30px 34px 50px;max-width:1450px;margin:auto}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.muted{color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:11px 16px;font-weight:700;transition:.2s}.btn.primary{background:#111827;color:#fff;box-shadow:0 5px 16px rgba(17,24,39,.14)}.btn.primary:hover{transform:translateY(-1px);background:#000}.btn.secondary{background:#fff;color:#202733;border:1px solid #dfe4ea}.wide{width:100%}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.photo-card{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
.photo-card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#eef1f5}.photo-meta{padding:11px 13px;display:flex;justify-content:space-between;color:#7f8995;font-size:11px}
.icon-delete{position:absolute;right:9px;top:9px;border:1px solid rgba(255,255,255,.8);background:rgba(255,255,255,.9);color:#555;width:30px;height:30px;border-radius:50%;font-size:20px;line-height:1;opacity:.9;box-shadow:0 3px 10px rgba(0,0,0,.08)}.icon-delete:hover{background:#fff0f1;color:#b52f39}
.panel{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.narrow{max-width:540px}
label{display:block;color:#555f6d;font-size:12px;margin:0 0 16px}
input,select{width:100%;margin-top:7px;padding:12px 13px;border-radius:11px;border:1px solid #dce1e8;background:#fff;color:#171a1f;outline:none}
input:focus,select:focus{border-color:#9aa5b2;box-shadow:0 0 0 3px rgba(80,95,115,.08)}
.flash{padding:12px 15px;border-radius:12px;margin-bottom:15px;border:1px solid #e1e5ea;background:#fff}.flash.error{color:#a92736;background:#fff3f4;border-color:#f1c8ce}.flash.success{color:#166c45;background:#effaf4;border-color:#c9ebd9}
.empty{text-align:center;padding:90px 20px;border:1px dashed #d6dce4;border-radius:18px;background:rgba(255,255,255,.55)}.empty-icon{font-size:30px}
.upload-panel{max-width:820px}.dropzone{border:1px dashed #cbd3dd;border-radius:18px;padding:55px 20px;text-align:center;background:#fafbfc}.upload-icon{font-size:35px;color:#566170}.dropzone h2{margin-top:8px}.dropzone input{display:none}.file-list{margin:18px auto 0;max-width:520px;text-align:left;color:#596473}.file-list div{padding:6px 0;border-bottom:1px solid #edf0f3}.upload-note{color:#717c88;font-size:11px;margin:13px 0 18px}
.admin-grid{display:grid;grid-template-columns:1.7fr .9fr;gap:18px}.panel-head{display:flex;justify-content:space-between;margin-bottom:15px}.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 10px;border-top:1px solid var(--line);font-size:12px}td small{display:block;color:var(--muted)}.status{padding:4px 8px;border-radius:99px;font-size:10px}.status.active{background:#e8f8f0;color:#19734a}.status.blocked{background:#fff0f1;color:#b52f39}.inline{display:inline-flex;gap:8px}.link-btn{border:0;background:none;color:#4f5a68;font-size:11px}.link-btn.danger{color:#c43d4b}
.auth-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 20% 0%,#fff 0,#f4f6f9 45%,#edf0f4 100%)}
.login-card{width:min(420px,100%);background:rgba(255,255,255,.97);border:1px solid #e1e5ea;border-radius:24px;padding:34px;box-shadow:0 25px 80px rgba(35,45,60,.12)}.center{justify-content:center;padding-bottom:30px}.login-card h1{margin:7px 0}.login-card .muted{margin-bottom:25px}
code{background:#f1f3f6;padding:2px 5px;border-radius:5px}
@media(max-width:900px){.sidebar{width:74px;padding:18px 9px}.sidebar .brand div,.sidebar nav span,.user-mini div,.logout{display:none}.brand{padding:0 8px 25px}.main{margin-left:74px;width:calc(100% - 74px)}.topbar,.content{padding-left:18px;padding-right:18px}.admin-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:10px}}

textarea{width:100%;margin-top:7px;padding:12px 13px;border-radius:11px;border:1px solid #dce1e8;background:#fff;color:#171a1f;resize:vertical}
.danger-btn{background:#fff0f1;color:#b52f39;border:1px solid #f0c8cd}.viewer{max-width:1100px;margin:auto}.viewer-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}.viewer-image{background:#fff;border:1px solid var(--line);border-radius:18px;display:flex;justify-content:center;align-items:center;min-height:60vh;padding:15px;box-shadow:var(--shadow)}.viewer-image img{max-width:100%;max-height:75vh;object-fit:contain}.viewer-info{display:flex;justify-content:space-between;color:#6d7784;padding:14px 2px}
.album-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:15px}.album-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px;display:flex;gap:14px;align-items:center;box-shadow:var(--shadow)}.album-card h3{margin:0 0 3px}.album-card p{margin:0;color:var(--muted);font-size:12px}.album-cover{width:58px;height:58px;border-radius:14px;background:#f0f2f5;display:grid;place-items:center;font-size:26px}.share-box{background:#f8fafc;border:1px solid #e2e7ed;padding:14px;border-radius:12px;margin:0 0 18px;color:#66717e;overflow-wrap:anywhere}.share-box strong{color:#303946}.select-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:12px 0 20px}.check-photo{margin:0;position:relative;border:1px solid var(--line);border-radius:13px;padding:7px;background:#fff}.check-photo input{position:absolute;left:10px;top:10px;width:auto;margin:0;z-index:2}.check-photo img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:9px}.check-photo span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;margin-top:6px}.small-btn{padding:6px 9px;font-size:10px}.public-share{max-width:1250px;margin:auto;padding:35px 20px 60px}.public-head{margin-bottom:25px}.public-head h1{font-size:34px;margin:5px 0}.public-head p{color:var(--muted);max-width:700px}
@media(max-width:600px){.viewer-top{align-items:flex-start}.viewer-image{min-height:50vh}.viewer-info{display:block}.viewer-info span{display:block;margin-top:4px}.public-share{padding:25px 14px}.public-head h1{font-size:27px}}

.short-link{font-size:15px;letter-spacing:.01em;word-break:break-all}
.album-tools .btn{white-space:nowrap}

.photo-meta-stack{display:block!important;line-height:1.45;padding:10px 14px 12px!important}
.photo-meta-stack span{display:block!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.photo-meta-stack span:nth-child(1){color:#555f6c;font-weight:600}
.photo-meta-stack span:nth-child(2){color:#7a8490;font-size:11px;margin-top:2px}
.photo-meta-stack span:nth-child(3){color:#9aa3ad;font-size:11px;margin-top:1px}

/* V7: force gallery metadata onto three real block rows */
.gallery-grid .photo-card .photo-meta.photo-meta-stack{
  display:block !important;
  width:100%;
  min-width:0;
  padding:10px 14px 12px !important;
  line-height:1.45;
}
.gallery-grid .photo-card .photo-meta.photo-meta-stack > div{
  display:block !important;
  width:100%;
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  margin:0;
}
.gallery-grid .photo-card .photo-meta.photo-meta-stack .meta-date{
  color:#555f6c;
  font-weight:600;
}
.gallery-grid .photo-card .photo-meta.photo-meta-stack .meta-user{
  color:#7a8490;
  font-size:11px;
  margin-top:2px;
}
.gallery-grid .photo-card .photo-meta.photo-meta-stack .meta-time{
  color:#9aa3ad;
  font-size:11px;
  margin-top:1px;
}

.brand-ta{font-size:14px!important;font-weight:800;letter-spacing:-.05em}
.user-avatar-icon{width:32px!important;height:32px!important;border-radius:50%;background:#eef1f5;display:grid!important;place-items:center}
.user-avatar-icon svg{width:18px;height:18px;fill:none;stroke:#4f5966;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

.short-link{overflow-wrap:anywhere;word-break:break-word;font-size:12px}

/* V9 hard reset for photo metadata */
.gallery-grid .photo-card .photo-meta-stack{display:block!important;box-sizing:border-box!important;width:100%!important;padding:11px 14px 13px!important;}
.gallery-grid .photo-card .photo-meta-stack .meta-date,.gallery-grid .photo-card .photo-meta-stack .meta-user,.gallery-grid .photo-card .photo-meta-stack .meta-time{display:block!important;width:100%!important;float:none!important;clear:both!important;white-space:nowrap!important;line-height:1.45!important;}
.gallery-grid .photo-card .photo-meta-stack .meta-user{margin-top:2px!important;font-size:11px!important;color:#7a8490!important;}
.gallery-grid .photo-card .photo-meta-stack .meta-time{margin-top:1px!important;font-size:11px!important;color:#9aa3ad!important;}
.gallery-grid .photo-card .photo-meta-stack .meta-date{font-weight:600!important;color:#555f6c!important;}

.album-grid-v9{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.album-grid-v9 .album-card{padding:0;overflow:hidden;display:block}.album-grid-v9 .album-cover{width:100%;height:115px;border-radius:0;background:linear-gradient(135deg,#f1f4f7,#e6ebf0);font-size:34px;color:#7b8590}.album-grid-v9 .album-card>div:last-child{padding:14px 15px}.album-grid-v9 .album-card h3{font-size:16px}.album-toolbar{margin-bottom:18px}.album-title h2{line-height:1.25}

/* V11 navigation refresh */
.main-nav{gap:5px}
.main-nav a,.sidebar-bottom .logout{display:flex;align-items:center;gap:13px;min-height:46px;font-weight:650}
.nav-icon{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.main-nav a:hover .nav-icon,.sidebar-bottom .logout:hover .nav-icon{transform:scale(1.04)}
.user-avatar-icon{width:38px!important;height:38px!important;background:linear-gradient(145deg,#f7f9fb,#e9edf2)!important;border:1px solid #dde3ea;box-shadow:0 4px 12px rgba(20,30,45,.07)}
.user-avatar-icon svg{width:22px!important;height:22px!important;stroke:#252c35!important;stroke-width:1.6!important}
.sidebar-bottom .logout{color:#68727e;margin-top:2px;padding:11px 13px;border-radius:12px}
.sidebar-bottom .logout:hover{background:#fff0f1;color:#b52f39}
@media(max-width:900px){
 .sidebar{width:82px;padding:18px 10px}
 .brand{justify-content:center;padding:0 5px 26px}
 .brand-mark{width:48px;height:48px;border-radius:15px;font-size:14px}
 .main{margin-left:82px;width:calc(100% - 82px)}
 .main-nav a,.sidebar-bottom .logout{justify-content:center;padding:10px 7px;min-height:50px}
 .main-nav .nav-icon,.sidebar-bottom .logout .nav-icon{width:25px;height:25px;flex-basis:25px;stroke-width:1.65}
 .user-mini{justify-content:center;padding:13px 4px}
 .user-avatar-icon{width:42px!important;height:42px!important}
}
@media(max-width:600px){.content{padding:22px 15px 45px}.topbar{height:88px;padding:20px 15px}.topbar h1{font-size:23px}}


/* V12 navigation + album page polish */
.album-page-toolbar{display:block;margin-bottom:24px}
.album-page-toolbar>div{display:flex;flex-direction:column;align-items:flex-start}
.album-page-toolbar .muted{margin:0 0 14px;max-width:520px}
.create-album-btn{margin-top:2px;padding:12px 18px;border-radius:13px}
.nav-logout{margin-top:2px!important}
.nav-logout span{display:none!important}
.nav-logout .nav-icon{width:25px!important;height:25px!important}
.sidebar-bottom{margin-top:auto}
/* Keep the logout as an icon in the main nav, directly below the +/change-password icon. */
@media(max-width:900px){
 .main-nav .nav-logout{justify-content:center!important;padding:10px 7px!important;min-height:50px!important}
 .main-nav .nav-logout .nav-icon{width:26px!important;height:26px!important}
}
@media(max-width:600px){
 .album-page-toolbar{margin-bottom:20px}
 .album-page-toolbar>div{width:100%}
 .album-page-toolbar h2{font-size:24px}
 .album-page-toolbar .muted{font-size:14px;line-height:1.55;margin-bottom:13px}
 .create-album-btn{width:auto;min-width:142px}
}
.album-create-hero{box-shadow:0 12px 35px rgba(20,28,40,.055)}
.album-form-card{box-shadow:0 12px 35px rgba(20,28,40,.055)}

.album-create-shell .album-create-hero{border-radius:22px;padding:30px 32px}
.album-create-shell .album-form-card{border-radius:22px}
.album-create-shell .album-submit{justify-content:flex-start}
.album-create-shell .album-submit .btn{min-width:165px}
.user-mini .user-avatar-icon{position:relative}

/* V13 — light login */
body.auth-page{
  min-height:100vh;
  margin:0;
  background:
    radial-gradient(circle at 15% 10%,rgba(255,255,255,.95),transparent 34%),
    linear-gradient(145deg,#f8fafc 0%,#eef2f6 100%);
  color:#151a22;
}
.auth-page .login-card{
  width:min(440px,calc(100% - 32px));
  margin:8vh auto 0;
  padding:34px 32px 32px;
  background:rgba(255,255,255,.96);
  border:1px solid #e1e6ec;
  border-radius:26px;
  box-shadow:0 22px 70px rgba(25,35,50,.10);
}
.auth-page .login-card .brand{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:28px;
}
.auth-page .login-card .brand-mark{
  width:48px;height:48px;border-radius:15px;
  display:grid;place-items:center;
  background:#fff;border:1px solid #dce2e8;
  color:#171c24;font-weight:900;
  box-shadow:0 7px 22px rgba(25,35,50,.07);
}
.auth-page .login-card .brand b{display:block;font-size:17px}
.auth-page .login-card .brand small{display:block;color:#89929d;margin-top:1px}
.auth-page .login-card .eyebrow{color:#89939e;font-size:10px;letter-spacing:.2em;font-weight:800}
.auth-page .login-card h1{font-size:34px;letter-spacing:-.04em;margin:9px 0 8px}
.auth-page .login-card>p.muted{color:#707b88;margin:0 0 25px}
.auth-page .login-card label{display:block;color:#555f6c;font-size:13px;font-weight:700;margin:0 0 14px}
.auth-page .login-card input{
  width:100%;box-sizing:border-box;margin-top:7px;
  min-height:48px;padding:12px 14px;
  border:1px solid #d9e0e7;border-radius:13px;
  background:#fff;color:#171c24;outline:none;
  font:inherit;transition:border-color .15s,box-shadow .15s;
}
.auth-page .login-card input:focus{
  border-color:#9da8b5;
  box-shadow:0 0 0 4px rgba(40,50,65,.07);
}
.auth-page .login-card .btn.wide{
  width:100%;min-height:49px;margin-top:7px;border-radius:13px;
}
.auth-page .login-card .flash.error{
  background:#fff4f4;border:1px solid #f0caca;color:#a63b3b;
  border-radius:12px;padding:11px 13px;margin-bottom:16px;
}
@media(max-width:520px){
  .auth-page .login-card{margin-top:5vh;padding:28px 22px 24px;border-radius:22px}
  .auth-page .login-card h1{font-size:30px}
}

/* V14 navigation refinement */
.main-nav .nav-icon{stroke-linecap:round;stroke-linejoin:round}

.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.folder-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;gap:14px;align-items:center;box-shadow:var(--shadow);transition:.18s}.folder-card:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(20,30,45,.09)}.folder-icon{width:54px;height:54px;border-radius:14px;background:#f1f4f7;display:grid;place-items:center;font-size:25px;color:#65707d}.folder-card h3{margin:0 0 3px}.folder-card p{margin:0;color:var(--muted);font-size:12px}
.folder-rename-panel{max-width:650px;margin-top:18px}
.album-add-panel{margin-top:18px}.album-add-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:14px 0 18px;max-height:45vh;overflow:auto}.album-add-photo{position:relative;margin:0;border:1px solid var(--line);border-radius:12px;padding:5px;background:#fff;cursor:pointer}.album-add-photo input{position:absolute;left:8px;top:8px;width:19px;height:19px;margin:0;z-index:2}.album-add-photo img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}.album-add-photo span{display:block;font-size:9px;padding:5px 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:1000px){.album-add-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:650px){.album-add-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Mobile navigation: icon ở trên, mô tả nằm ngay dòng dưới */
.nav-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
@media(max-width:900px){
  .sidebar{width:86px;padding:18px 7px}
  .sidebar .brand div{display:none}
  .brand{justify-content:center;padding:0 0 22px}
  .sidebar nav{gap:5px}
  .sidebar nav a,.sidebar .logout{
    width:72px;min-height:58px;padding:8px 3px;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
    text-align:center;color:#66707c
  }
  .sidebar nav a span,.sidebar .logout span{display:block!important;font-size:9px;line-height:1.1;font-weight:600;white-space:normal;overflow-wrap:anywhere}
  .sidebar nav a:hover,.sidebar .logout:hover{background:#f1f3f6}
  .main{margin-left:86px;width:calc(100% - 86px)}
  .topbar,.content{padding-left:14px;padding-right:14px}
}
@media(max-width:520px){
  .toolbar{align-items:flex-start;gap:10px}
  .toolbar .inline{flex-wrap:wrap}
  .btn{padding:10px 12px}
  .folder-page-head{display:block}
  .folder-page-head .inline{margin-top:10px}
}

/* ===== MERGED FILE STORAGE ===== */
.file-filters{display:flex;gap:10px;align-items:center;margin:0 0 18px;flex-wrap:wrap}.file-filters input,.file-filters select{min-height:44px;border:1px solid #dfe3e8;border-radius:12px;padding:0 13px;background:#fff;color:#18202a;outline:none}.file-filters input{flex:1;min-width:220px}.merged-file-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.merged-file-card{min-width:0;position:relative}.file-card-link{display:block;text-decoration:none;color:inherit}.large-file-icon{font-size:54px!important;height:115px!important;display:flex!important;align-items:center;justify-content:center}.file-owner{font-size:11px;color:#8993a0;margin-top:4px}.file-card-actions{display:flex;gap:7px;padding:10px 12px 13px;border-top:1px solid #edf0f3}.file-card-actions form{margin:0}.merged-upload-box{max-width:760px}.merged-dropzone{display:block;border:1.5px dashed #cfd6df;border-radius:20px;background:#fff;padding:48px 24px;text-align:center;cursor:pointer;transition:.2s}.merged-dropzone:hover{border-color:#8b96a5;background:#fafbfd}.merged-dropzone input{display:none}.merged-upload-icon{width:62px;height:62px;margin:0 auto 15px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:#f1f4f7;font-size:30px}.merged-dropzone h3{margin:0 0 7px}.merged-dropzone p{margin:0 0 14px;color:#7b8490}.merged-upload-box .btn{margin-top:12px}.merged-detail{max-width:900px}.merged-detail .detail-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.merged-detail .detail-actions form{margin:0}.danger-text{color:#b42318!important}.mini{min-height:34px!important;padding:7px 10px!important;font-size:12px!important}
@media(max-width:700px){.file-filters{display:grid;grid-template-columns:1fr}.file-filters input{min-width:0}.merged-file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.large-file-icon{height:90px!important;font-size:42px!important}.file-card-actions{flex-wrap:wrap}.file-card-actions .btn{flex:1;text-align:center}.merged-dropzone{padding:38px 16px}.toolbar{gap:12px}.toolbar .inline{width:100%}}

/* ===== SHARE + FILE STORAGE V2 ===== */
.file-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:18px}.file-page-head h2{margin:2px 0 5px;font-size:27px;letter-spacing:-.035em}.section-kicker{font-size:10px;letter-spacing:.19em;font-weight:850;color:#8b95a1}.file-page-head .muted{margin:0;max-width:620px}.file-filters-v2{padding:10px;background:#fff;border:1px solid #e2e7ed;border-radius:16px;box-shadow:0 8px 25px rgba(20,30,45,.045)}.file-search{display:flex;align-items:center;gap:9px;flex:1;min-width:220px}.file-search span{font-size:21px;color:#7b8692}.file-search input{border:0!important;box-shadow:none!important;min-height:42px!important;padding-left:0!important}.file-results-bar{display:flex;justify-content:space-between;gap:12px;margin:15px 2px 10px;color:#5e6875;font-size:12px}.file-results-bar b{color:#171d25}.file-results-note{color:#929ba6}.file-grid-v2{grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:15px}.file-card-v2{background:#fff;border:1px solid #e1e6ec;border-radius:19px;overflow:hidden;box-shadow:0 7px 25px rgba(20,30,45,.045);transition:transform .18s,box-shadow .18s,border-color .18s;min-width:0}.file-card-v2:hover{transform:translateY(-2px);box-shadow:0 15px 38px rgba(20,30,45,.09);border-color:#d3dae2}.file-preview{height:148px;background:linear-gradient(145deg,#f5f7f9,#eceff3);display:flex;align-items:center;justify-content:center;position:relative;text-decoration:none;overflow:hidden}.file-preview>img{width:100%;height:100%;object-fit:cover;display:block}.file-type-icon{font-size:65px;line-height:1;filter:drop-shadow(0 7px 8px rgba(20,30,45,.09))}.file-ext-badge{position:absolute;left:11px;top:11px;background:rgba(255,255,255,.94);border:1px solid rgba(220,225,231,.95);color:#303946;border-radius:9px;padding:5px 7px;font-size:9px;font-weight:850;letter-spacing:.06em;box-shadow:0 4px 12px rgba(20,30,45,.07)}.file-preview-overlay{position:absolute;inset:auto 10px 10px auto;background:rgba(20,27,36,.84);color:#fff;border-radius:9px;padding:6px 9px;font-size:10px;font-weight:700;opacity:0;transform:translateY(4px);transition:.18s}.file-card-v2:hover .file-preview-overlay{opacity:1;transform:none}.file-card-body-v2{padding:13px 14px 11px}.file-title-v2{display:block;color:#1b222c;text-decoration:none;font-size:14px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:12px}.file-title-v2:hover{text-decoration:underline}.file-info-grid-v2{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px}.file-info-grid-v2>div{min-width:0}.file-info-grid-v2 small,.file-owner-v2 span{display:block;color:#929ba5;font-size:9px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.file-info-grid-v2 strong{display:block;color:#4c5663;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-owner-v2{border-top:1px solid #edf0f3;margin-top:10px;padding-top:9px;display:flex;justify-content:space-between;gap:8px;align-items:center}.file-owner-v2 b{font-size:10px;color:#596371;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-actions-v2{display:flex;gap:6px;flex-wrap:wrap;padding:10px 12px 12px;border-top:1px solid #edf0f3;background:#fcfdfe}.file-actions-v2 form{margin:0}.file-actions-v2 .btn{flex:1;text-align:center;min-width:54px}.file-empty-v2{grid-column:1/-1}.file-empty-v2 .btn{margin-top:5px}
.file-detail-v2{max-width:980px}.file-detail-hero{display:grid;grid-template-columns:110px 1fr auto;gap:20px;align-items:center;background:linear-gradient(145deg,#fff,#f7f9fb);border:1px solid #e1e6ec;border-radius:22px;padding:22px;box-shadow:0 10px 35px rgba(20,30,45,.055)}.file-detail-icon{width:110px;height:110px;border-radius:20px;background:#eef1f4;display:grid;place-items:center;font-size:58px}.file-detail-title h2{margin:0 0 7px;font-size:24px;overflow-wrap:anywhere}.file-detail-title p{margin:0;color:#78828e;font-size:12px;line-height:1.6}.file-detail-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.file-detail-actions form{margin:0}.file-meta-panel{margin-top:14px;background:#fff;border:1px solid #e1e6ec;border-radius:19px;padding:18px;box-shadow:0 8px 25px rgba(20,30,45,.04)}.file-meta-panel h3{font-size:14px;margin:0 0 14px}.file-meta-grid-v2{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.file-meta-item{padding:12px 13px;border:1px solid #edf0f3;border-radius:13px;background:#fafbfc;min-width:0}.file-meta-item small{display:block;color:#929ba5;font-size:9px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.file-meta-item strong{display:block;color:#313a46;font-size:12px;overflow-wrap:anywhere}.file-preview-frame-v2{margin-top:14px;border:1px solid #e1e6ec;border-radius:19px;background:#f5f7f9;overflow:hidden}.file-preview-frame-v2 iframe{display:block;width:100%;height:720px;border:0}.file-preview-frame-v2 img,.file-preview-frame-v2 video{display:block;max-width:100%;max-height:720px;margin:auto}.file-preview-frame-v2 audio{display:block;width:calc(100% - 30px);margin:30px 15px}
@media(max-width:800px){.file-detail-hero{grid-template-columns:78px 1fr}.file-detail-icon{width:78px;height:78px;font-size:43px;border-radius:16px}.file-detail-actions{grid-column:1/-1;justify-content:flex-start}.file-meta-grid-v2{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.file-page-head{align-items:flex-start;flex-direction:column}.file-page-head .btn{width:100%;text-align:center}.file-filters-v2{display:grid;grid-template-columns:1fr}.file-search{min-width:0}.file-results-note{display:none}.file-grid-v2{grid-template-columns:1fr}.file-preview{height:170px}.file-detail-hero{grid-template-columns:1fr;text-align:center}.file-detail-icon{margin:auto}.file-detail-actions{justify-content:center}.file-meta-grid-v2{grid-template-columns:1fr}.file-preview-frame-v2 iframe{height:520px}}


/* ===== FILE STORAGE V3 ===== */
.file-results-bar-v3{display:flex;align-items:center;justify-content:space-between;padding:4px 2px 13px;color:#697482;font-size:12px}.file-results-bar-v3 strong{font-size:18px;color:#151b24;margin-right:4px}.file-grid-v3{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:16px}.file-card-v3{background:#fff;border:1px solid #e3e7ec;border-radius:20px;overflow:hidden;box-shadow:0 8px 26px rgba(20,28,40,.055);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.file-card-v3:hover{transform:translateY(-3px);border-color:#d3d9e1;box-shadow:0 16px 36px rgba(20,28,40,.09)}.file-card-main-v3{display:block;color:inherit}.file-thumb-v3{height:150px;background:linear-gradient(145deg,#f7f8fa,#eceff3);position:relative;display:grid;place-items:center;overflow:hidden}.file-thumb-v3 img{width:100%;height:100%;object-fit:cover;display:block}.file-big-icon-v3{font-size:64px;line-height:1;filter:drop-shadow(0 7px 10px rgba(20,28,40,.1))}.file-ext-v3{position:absolute;left:12px;top:12px;padding:5px 8px;border-radius:9px;background:rgba(255,255,255,.94);border:1px solid #e1e5ea;color:#3c4652;font-size:9px;font-weight:850;letter-spacing:.06em;box-shadow:0 4px 12px rgba(20,28,40,.07)}.file-card-content-v3{padding:14px 15px 13px}.file-title-v3{font-size:15px;font-weight:800;color:#1a2028;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-sub-v3{display:flex;align-items:center;gap:7px;margin-top:6px;color:#8a94a0;font-size:11px}.file-sub-v3 i{font-style:normal;color:#c0c5cb}.file-actions-v3{display:flex;align-items:center;gap:5px;padding:10px 11px 11px;border-top:1px solid #edf0f3;background:#fcfdfe}.file-action-v3{flex:1;min-width:0;text-align:center;border:0;background:transparent;border-radius:10px;padding:9px 5px;color:#4d5865;font-size:11px;font-weight:750;cursor:pointer}.file-action-v3:hover{background:#f0f2f5;color:#151b24}.file-action-v3.primary{background:#111827;color:#fff}.file-action-v3.primary:hover{background:#000}.file-action-v3.danger{color:#b42318}.file-action-v3.danger:hover{background:#fff0f0}.file-actions-v3 form{flex:1;display:flex;margin:0}.file-actions-v3 form .file-action-v3{width:100%}
.file-detail-v3{max-width:1040px;margin:0 auto}.file-detail-top-v3{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}.file-detail-top-v3 h2{font-size:28px;margin:3px 0 5px;letter-spacing:-.04em}.file-detail-top-v3 p{margin:0}.file-back-v3{white-space:nowrap}.file-detail-hero-v3{display:grid;grid-template-columns:100px 1fr auto;gap:20px;align-items:center;padding:24px;background:linear-gradient(145deg,#fff 0%,#f7f9fb 100%);border:1px solid #e1e6ec;border-radius:24px;box-shadow:0 10px 35px rgba(20,30,45,.055)}.file-detail-icon-v3{width:100px;height:100px;border-radius:22px;background:#eef1f4;display:grid;place-items:center;font-size:54px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.8)}.file-detail-heading-v3{min-width:0}.file-detail-ext-v3{display:inline-block;padding:5px 8px;border-radius:8px;background:#eef1f4;color:#687381;font-size:9px;font-weight:850;letter-spacing:.06em;margin-bottom:8px}.file-detail-heading-v3 h3{margin:0;color:#151b24;font-size:24px;line-height:1.2;overflow-wrap:anywhere}.file-detail-heading-v3 p{margin:8px 0 0;color:#7d8793;font-size:12px}.file-detail-heading-v3 p span{padding:0 5px;color:#c0c5cb}.file-detail-actions-v3{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.file-detail-actions-v3 form{margin:0}.file-meta-panel-v3{margin-top:16px;background:#fff;border:1px solid #e1e6ec;border-radius:22px;padding:21px;box-shadow:0 8px 28px rgba(20,30,45,.045)}.file-section-title-v3{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.file-section-title-v3 span{display:block;color:#9aa3ad;font-size:9px;font-weight:850;letter-spacing:.15em}.file-section-title-v3 h3{margin:3px 0 0;font-size:17px}.file-status-v3{padding:7px 10px;border-radius:10px;font-size:10px;font-weight:750}.file-status-v3.ok{color:#147447;background:#edf9f3}.file-status-v3.missing{color:#b42318;background:#fff0f0}.file-meta-grid-v3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.file-meta-item-v3{min-width:0;padding:13px 14px;border:1px solid #edf0f3;border-radius:14px;background:#fafbfc}.file-meta-item-v3 small{display:block;color:#929ba5;font-size:9px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.file-meta-item-v3 strong{display:block;color:#303946;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.file-meta-wide-v3{grid-column:span 2}
@media(max-width:800px){.file-detail-hero-v3{grid-template-columns:78px 1fr}.file-detail-icon-v3{width:78px;height:78px;font-size:43px;border-radius:17px}.file-detail-actions-v3{grid-column:1/-1;justify-content:flex-start}.file-meta-grid-v3{grid-template-columns:1fr 1fr}.file-meta-wide-v3{grid-column:span 2}}
@media(max-width:600px){.file-results-note{display:none}.file-grid-v3{grid-template-columns:1fr}.file-thumb-v3{height:165px}.file-detail-top-v3{align-items:flex-start;flex-direction:column}.file-back-v3{width:100%;text-align:center}.file-detail-hero-v3{grid-template-columns:1fr;text-align:center;padding:20px}.file-detail-icon-v3{margin:auto}.file-detail-actions-v3{justify-content:center}.file-meta-grid-v3{grid-template-columns:1fr}.file-meta-wide-v3{grid-column:auto}.file-section-title-v3{align-items:flex-start;flex-direction:column}}


/* ===== FILE STORAGE V4 — clean visual grid ===== */
.file-results-bar-v4{display:flex;align-items:center;padding:2px 2px 14px;color:#707986;font-size:12px}
.file-results-bar-v4 strong{font-size:18px;color:#151a22;margin-right:4px}
.file-grid-v4{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:18px}
.file-card-v4{display:block;min-width:0;background:#fff;border:1px solid #e5e9ee;border-radius:20px;padding:10px;box-shadow:0 8px 25px rgba(25,32,42,.055);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;overflow:hidden}
.file-card-v4:hover{transform:translateY(-3px);border-color:#d6dce4;box-shadow:0 16px 34px rgba(25,32,42,.10)}
.file-card-v4:active{transform:scale(.985)}
.file-thumb-v4{width:100%;aspect-ratio:1/1;border-radius:15px;background:linear-gradient(145deg,#f7f9fb,#edf1f5);display:grid;place-items:center;overflow:hidden;position:relative}
.file-thumb-v4:after{content:"";position:absolute;inset:0;border-radius:15px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.72);pointer-events:none}
.file-thumb-v4 img{display:block;width:100%;height:100%;object-fit:cover}
.file-icon-v4{width:74px;height:88px;border-radius:10px;background:#fff;display:grid;place-items:center;font-size:48px;line-height:1;box-shadow:0 10px 22px rgba(20,28,40,.10);position:relative}
.file-icon-v4:after{content:"";position:absolute;right:0;top:0;width:22px;height:22px;background:linear-gradient(135deg,#e9edf2 0 49%,transparent 50%);border-radius:0 9px 0 5px}
.file-name-v4{padding:11px 5px 3px;text-align:center;color:#202733;font-size:13px;font-weight:750;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.file-empty-v4{grid-column:1/-1}
@media(max-width:900px){.file-grid-v4{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.file-card-v4{padding:8px;border-radius:17px}.file-thumb-v4{border-radius:13px}.file-name-v4{font-size:12px;padding-top:9px}}
@media(max-width:600px){.file-grid-v4{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.file-card-v4{padding:7px;border-radius:16px}.file-thumb-v4{border-radius:12px}.file-name-v4{font-size:12px;padding:8px 3px 2px}.file-page-head h2{font-size:22px}}


/* ===== FILE STORAGE V5 — clean mobile-first redesign ===== */
.file-page-head-v5{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px}.file-page-head-v5 h2{margin:3px 0 6px;font-size:30px;letter-spacing:-.04em}.file-page-head-v5 p{margin:0}.file-upload-btn-v5{min-width:145px}.file-upload-btn-v5 span{font-size:19px;margin-right:3px}.file-filters-v5{display:grid;grid-template-columns:minmax(0,1fr) 220px 86px;gap:10px;padding:9px;background:#fff;border:1px solid #e6eaf0;border-radius:18px;box-shadow:0 8px 28px rgba(25,32,42,.045);margin-bottom:18px}.file-search-v5{display:flex;align-items:center;gap:8px;min-width:0;padding:0 12px;border:1px solid #e3e7ec;border-radius:13px;background:#fafbfc}.file-search-v5 span{font-size:21px;color:#8b95a1}.file-search-v5 input{width:100%;border:0!important;background:transparent!important;box-shadow:none!important;min-height:42px!important;padding:0!important;outline:0}.file-filters-v5 select{width:100%;min-height:44px;border:1px solid #e3e7ec;border-radius:13px;padding:0 12px;background:#fafbfc;color:#252c36;outline:0}.filter-btn-v5{border:0;border-radius:13px;background:#111827;color:#fff;font-weight:750;cursor:pointer}.filter-btn-v5:active{transform:scale(.98)}.file-results-v5{display:flex;align-items:baseline;gap:5px;margin:0 2px 12px;color:#8b95a1;font-size:12px}.file-results-v5 strong{font-size:19px;color:#171d26}.file-grid-v5{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px}.file-card-v5{display:block;min-width:0;text-decoration:none;color:inherit;background:#fff;border:1px solid #e5e9ef;border-radius:20px;padding:9px;box-shadow:0 7px 25px rgba(24,32,44,.045);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.file-card-v5:hover{transform:translateY(-3px);border-color:#d7dde5;box-shadow:0 15px 34px rgba(24,32,44,.09)}.file-card-v5:active{transform:scale(.985)}.file-thumb-v5{aspect-ratio:1/1;border-radius:15px;background:linear-gradient(145deg,#f7f9fb,#edf1f5);display:grid;place-items:center;overflow:hidden}.file-thumb-v5 img{width:100%;height:100%;object-fit:cover;display:block}.file-paper-v5{width:72px;height:88px;border-radius:10px;background:#fff;border:1px solid #e0e5ea;box-shadow:0 12px 25px rgba(28,35,46,.11);display:flex;align-items:flex-end;justify-content:center;padding:0 6px 10px;position:relative}.file-paper-v5:before{content:"";position:absolute;top:0;right:0;width:25px;height:25px;background:linear-gradient(135deg,#e7ebef 0 49%,#fff 50%);border-radius:0 9px 0 5px}.file-paper-v5:after{content:"";position:absolute;left:14px;right:14px;top:44px;height:2px;background:#edf0f3;box-shadow:0 7px 0 #edf0f3}.file-paper-v5 span{position:relative;z-index:1;font-size:10px;font-weight:850;color:#5d6875;letter-spacing:.06em;max-width:100%;overflow:hidden;text-overflow:ellipsis}.file-name-v5{padding:10px 4px 3px;text-align:center;font-size:13px;font-weight:750;color:#202733;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-empty-v5{grid-column:1/-1}

.file-detail-v5{max-width:980px;margin:0 auto}.detail-head-v5{position:relative;padding:2px 0 18px}.back-link-v5{display:inline-flex;align-items:center;gap:6px;margin-bottom:22px;padding:9px 13px;border:1px solid #e2e6eb;border-radius:12px;background:#fff;color:#29313d;text-decoration:none;font-weight:700;box-shadow:0 5px 16px rgba(25,32,42,.04)}.back-link-v5 span{font-size:18px}.detail-kicker-v5{font-size:10px;letter-spacing:.18em;font-weight:850;color:#9aa3ad}.detail-head-v5 h2{font-size:31px;letter-spacing:-.045em;margin:3px 0 6px}.detail-head-v5 p{margin:0;color:#7c8793;font-size:14px}.detail-hero-v5{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:20px;align-items:center;padding:22px;background:linear-gradient(145deg,#fff,#f7f9fb);border:1px solid #e1e6ec;border-radius:24px;box-shadow:0 12px 35px rgba(20,30,45,.055)}.detail-file-icon-v5{width:92px;height:108px;border-radius:15px;background:#fff;border:1px solid #e0e5eb;box-shadow:0 12px 25px rgba(25,32,42,.10);display:flex;align-items:flex-end;justify-content:center;padding:0 8px 13px;position:relative}.detail-file-icon-v5:before{content:"";position:absolute;right:0;top:0;width:30px;height:30px;background:linear-gradient(135deg,#e5e9ee 0 49%,#fff 50%);border-radius:0 14px 0 6px}.detail-file-icon-v5:after{content:"";position:absolute;left:18px;right:18px;top:54px;height:2px;background:#edf0f3;box-shadow:0 8px 0 #edf0f3}.detail-file-icon-v5 span{position:relative;z-index:1;font-size:11px;font-weight:850;letter-spacing:.07em;color:#606b78;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis}.detail-file-main-v5{min-width:0}.detail-file-type-v5{display:inline-flex;padding:5px 8px;border-radius:8px;background:#edf1f4;color:#687381;font-size:9px;font-weight:850;letter-spacing:.08em;margin-bottom:8px}.detail-file-main-v5 h3{font-size:25px;line-height:1.2;margin:0;color:#151b24;overflow-wrap:anywhere}.detail-file-summary-v5{display:flex;align-items:center;gap:9px;margin-top:9px;color:#7b8692;font-size:12px}.detail-file-summary-v5 i{width:3px;height:3px;border-radius:50%;background:#b7bec6}.detail-actions-v5{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.detail-actions-v5 form{margin:0}.delete-btn-v5{color:#b42318!important;background:#fff1f1!important;border:1px solid #f2d0d0!important}.delete-btn-v5:hover{background:#ffe6e6!important}.details-card-v5{margin-top:15px;background:#fff;border:1px solid #e1e6ec;border-radius:22px;padding:21px;box-shadow:0 8px 28px rgba(20,30,45,.045)}.details-card-head-v5{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.details-card-head-v5>div:first-child span{display:block;color:#9aa3ad;font-size:9px;font-weight:850;letter-spacing:.15em}.details-card-head-v5 h3{margin:4px 0 0;font-size:18px}.file-status-v5{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:10px;font-size:10px;font-weight:750;white-space:nowrap}.file-status-v5 b{width:6px;height:6px;border-radius:50%;background:currentColor}.file-status-v5.ok{color:#16734a;background:#edf9f3}.file-status-v5.missing{color:#9b4b10;background:#fff5e8}.details-list-v5{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.details-list-v5>div{min-width:0;padding:13px 14px;border:1px solid #edf0f3;border-radius:14px;background:#fafbfc}.details-list-v5 span{display:block;color:#929ba5;font-size:9px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.details-list-v5 strong{display:block;color:#303946;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.details-wide-v5{grid-column:1/-1}
@media(max-width:800px){.file-grid-v5{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.detail-hero-v5{grid-template-columns:80px minmax(0,1fr)}.detail-file-icon-v5{width:80px;height:94px}.detail-actions-v5{grid-column:1/-1;justify-content:flex-start}.details-list-v5{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.file-page-head-v5{align-items:flex-start;flex-direction:column}.file-page-head-v5 h2{font-size:25px}.file-upload-btn-v5{width:100%}.file-filters-v5{grid-template-columns:1fr;padding:8px}.filter-btn-v5{min-height:44px}.file-grid-v5{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.file-card-v5{padding:7px;border-radius:17px}.file-thumb-v5{border-radius:12px}.file-name-v5{font-size:12px;padding:8px 2px 2px}.file-detail-v5{width:100%}.detail-head-v5{padding-bottom:14px}.back-link-v5{margin-bottom:17px}.detail-head-v5 h2{font-size:26px}.detail-head-v5 p{font-size:13px}.detail-hero-v5{grid-template-columns:1fr;text-align:center;padding:19px;border-radius:20px}.detail-file-icon-v5{margin:0 auto}.detail-file-summary-v5{justify-content:center;flex-wrap:wrap}.detail-actions-v5{justify-content:center}.detail-actions-v5 .btn{min-width:110px}.details-card-v5{padding:17px;border-radius:19px}.details-card-head-v5{align-items:flex-start;flex-direction:column}.details-list-v5{grid-template-columns:1fr}.details-wide-v5{grid-column:auto}}
