:root{--page-bg:#f5f7fb;--surface:#fff;--surface-soft:#f8fafc;--text:#1f2937;--muted:#6b7280;--line:#e5e7eb;--primary:#2563eb;--primary-dark:#1d4ed8;--accent:#059669;--danger:#dc2626;--shadow:0 18px 45px rgba(15,23,42,.08)}
html{min-height:100%}
body{min-height:100%;background:var(--page-bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",Arial,sans-serif;letter-spacing:0}
a{color:var(--primary)}
a:hover,a:focus{color:var(--primary-dark);text-decoration:none}
.container{max-width:1180px}
.navbar.navbar-default{margin:0 0 28px;border:0;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.08);position:relative;z-index:1200;overflow:visible}
.navbar .container{display:block;position:relative;overflow:visible}
.navbar-collapse,.navbar-nav,.navbar-nav>li{overflow:visible}
.navbar-collapse.collapsing{overflow:hidden!important}
.navbar-brand{height:64px;line-height:34px;font-weight:700;color:#111827!important}
.navbar-brand:before{content:"\f0c2";font-family:FontAwesome;margin-right:8px;color:var(--primary)}
.navbar-default .navbar-nav>li>a{padding-top:22px;padding-bottom:22px;color:#4b5563!important;font-weight:500}
.navbar-default .navbar-nav>li>a i{margin-right:5px;color:#64748b}
.navbar-default .navbar-nav>li.active>a,.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{background:#eef4ff!important;color:var(--primary)!important}
.navbar-default .navbar-nav>li.active>a i,.navbar-default .navbar-nav>li>a:hover i{color:var(--primary)}
.navbar-toggle{margin-top:15px;border:0;background:transparent!important;box-shadow:none!important}
.navbar-default .navbar-toggle{padding:10px 10px;background-color:var(--surface-soft)!important;background-image:none!important;border:1px solid var(--line)!important;border-radius:10px;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}
.navbar-default .navbar-toggle .icon-bar{background-color:var(--primary)!important;height:2px;border-radius:999px}
.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:var(--surface)!important;background-image:none!important;border-color:var(--primary)!important;box-shadow:0 0 0 3px rgba(47,134,255,.12)!important}
.dropdown-menu{border:0;border-radius:8px;box-shadow:var(--shadow);z-index:1300}
.dropdown-menu>li>a{color:#3f5370!important}
.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{background:#eaf4ff!important;color:var(--primary)!important}
.footer{margin-top:36px;padding:28px 0;background:transparent}
.footer p{margin:0;color:#94a3b8}
.well,.panel{border:0;border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}
.well.bs-component{padding:24px}
.well.bs-component h2{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 20px;color:#111827;font-size:26px;font-weight:700;line-height:1.25}
.panel{overflow:hidden}
.panel-heading{border:0!important;padding:14px 18px!important;background:#fff!important;color:#111827!important;border-bottom:1px solid var(--line)!important}
.panel-primary>.panel-heading,.panel-info>.panel-heading,.panel-default>.panel-heading{background:#fff!important;color:#111827!important}
.panel-title{font-size:16px;font-weight:700}
.panel-title i{margin-right:6px;color:var(--primary)}
.panel-body{padding:20px}
.list-group-item{border-color:var(--line);color:#4b5563;line-height:1.7}
.table-responsive{border:0}
.table{margin-bottom:0;background:#fff}
.table>thead>tr>th{border-bottom:1px solid var(--line);background:var(--surface-soft);color:#475569;font-size:13px;font-weight:700;white-space:nowrap}
.table>tbody>tr>td{border-top:1px solid #eef2f7;vertical-align:middle;color:#334155}
.table-striped>tbody>tr:nth-of-type(odd){background:#fbfdff}
.table-hover>tbody>tr:hover{background:#eef6ff}
.filelist>tbody>tr>td{max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.filelist td a{display:inline-block;margin:0 2px;font-weight:600}
.filelist .fa-fw{margin-right:7px;color:#64748b}
.perm-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin:0 0 18px;padding:11px 15px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}
.perm-item{display:inline-flex;align-items:baseline;gap:6px;font-size:13px;line-height:1.6}
.perm-item i{color:var(--primary);font-size:13px}
.perm-item em{color:var(--muted);font-style:normal}
.perm-item b{color:var(--text);font-weight:750}
.perm-buy{margin-left:auto;color:var(--primary)!important;font-size:13px;font-weight:750;text-decoration:none!important;white-space:nowrap}
.perm-buy:hover{opacity:.8}
.perm-buy-plain{color:var(--muted)!important;font-weight:600}
@media (max-width:767px){
.perm-bar{gap:6px 14px;padding:10px 12px}
.perm-buy{margin-left:0;flex:1 1 100%;padding-top:4px;border-top:1px solid var(--line)}
}
.loginpanel{margin-top:8vh}
.login-title{margin:0 0 18px;color:var(--text);font-size:20px;font-weight:800;text-align:center}
.login-other{margin-top:22px}
.login-divider{display:flex;align-items:center;gap:12px;margin-bottom:16px;color:var(--muted);font-size:12px}
.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--line)}
.login-other #loginform{margin:0}
.login-other .loginbtn{margin:0 8px}
.login-tip{margin:12px 0 0;font-size:12px}
.login-tabs{margin-bottom:20px}
.login-tabs>li>a{font-weight:700}
.loginform .form-group{margin-bottom:14px}
.loginform .form-control{height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background-color:var(--surface) !important;background-image:none !important;color:var(--text);box-shadow:none}
.loginform .form-control:focus{border-color:var(--primary);outline:none}
.loginform .form-control::-webkit-input-placeholder{color:var(--muted)}
.loginform .form-control::placeholder{color:var(--muted)}
/* 算术题的题面、获取验证码的按钮都收进输入框内部：
   这样每一行都是同一个等宽的框，左右边缘和其它输入框完全对齐，
   不会出现"一个固定块在左、一个固定块在右"的锯齿感 */
.loginform .field-wrap{position:relative}
.loginform .field-wrap .form-control{width:100%}
/* 题面最长形如 18 - 17 = ?，按最宽的情况预留左内边距 */
.loginform .has-prefix .form-control{padding-left:132px}
.loginform .has-suffix .form-control{padding-right:116px}
.loginform .field-prefix,.loginform .field-suffix{position:absolute;top:5px;bottom:5px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:0;background:transparent;color:var(--text);font-size:14px;font-weight:750;white-space:nowrap;cursor:pointer;box-shadow:none;outline:none}
.loginform .field-prefix{left:5px;max-width:122px;border-right:1px solid var(--line);border-radius:8px 0 0 8px;letter-spacing:1px}
.loginform .field-suffix{right:5px;max-width:106px;border-left:1px solid var(--line);border-radius:0 8px 8px 0;color:var(--primary)}
.loginform .field-prefix i{color:var(--muted);font-size:12px}
.loginform .field-prefix:hover i,.loginform .field-suffix:hover{opacity:.75}
.loginform .field-suffix:disabled{color:var(--muted);cursor:not-allowed;opacity:1}
@media (max-width:400px){
	.loginform .has-prefix .form-control{padding-left:116px}
	.loginform .has-suffix .form-control{padding-right:104px}
	.loginform .field-prefix{max-width:106px;padding:0 9px;font-size:13px}
	.loginform .field-suffix{max-width:96px;padding:0 9px;font-size:13px}
}
.loginform .loginsubmit{height:44px;margin-top:4px;border-radius:10px;font-size:15px;font-weight:700}
@media (max-width:767px){.loginpanel{margin-top:4vh}}
.upload-pwd{width:100%;max-width:300px;margin-left:auto;margin-right:auto}
.upload-pwd .form-control{width:100%;text-align:center}
.upload-pwd .help-block{margin:6px 0 0;font-size:12px;text-align:center}
/*
 * 上传页的「存储位置」下拉（只在后台开了多存储时出现）。
 *
 * flex-basis:100% 是给 layout-theme 那套外观用的——它把 #upload_frame 做成了一行 flex，
 * 不占满整行的话这一组会被挤到「在首页文件列表显示」复选框旁边，select 被压成一条竖线。
 * 非 flex 的外观下这条属性自动失效，不影响。
 * 宽度和居中沿用 .upload-pwd 那一套，和下面的密码框对得齐。
 *
 * 配色不在这里写：#storage_select 直接挂进了各主题给 #fileInput #pwd 写的那些规则里
 * （见下方每套主题的 "#fileInput #pwd,#fileInput #storage_select"），
 * 用的是同一份声明，28 套外观自动跟随，不用也不该在这儿再定一遍颜色。
 */
.upload-storage{flex:0 0 100%;width:100%;margin:10px 0;text-align:center}
.upload-storage>label{display:block;width:100%;max-width:300px;margin:0 auto 6px;font-size:14px}
.upload-storage-select{position:relative;width:100%;max-width:300px;margin:0 auto}
/* 关掉浏览器自带的下拉箭头：它由操作系统绘制，深色主题下会露出一块白底 */
#fileInput #storage_select{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;padding-right:34px;padding-left:34px;text-align:center;text-align-last:center;cursor:pointer}
/* 箭头自己画，颜色继承主题文字色 */
.upload-storage-select:after{content:"\f107";position:absolute;top:50%;right:14px;transform:translateY(-50%);font:400 16px/1 FontAwesome;opacity:.5;pointer-events:none}
.filelist-lock{margin-left:6px;color:#d69e2e;font-size:12px;vertical-align:1px}
.pagination>li>a,.pagination>li>span{border:0;border-radius:6px!important;margin:0 2px;color:#475569;background:#f1f5f9}
.pagination>.disabled>a,.pagination>.disabled>a:hover{background:#f8fafc;color:#94a3b8}
.pagination>li>a:hover{background:#dbeafe;color:var(--primary)}
.form-group{padding-bottom:0;margin:0 0 15px 0}
.form-control{border-radius:6px;border:1px solid var(--line);background:#fff;box-shadow:none;color:#111827}
.form-control:focus{border-color:#93c5fd;box-shadow:0 0 0 3px rgba(37,99,235,.14)}
.form-group label.control-label{font-size:15px;color:#334155;font-weight:600}
.input-group .form-control{height:40px}
.input-group-btn .btn{height:40px;margin:0;border-radius:0 6px 6px 0}
.btn{border-radius:6px!important;text-transform:none;font-weight:700;box-shadow:none!important}
.btn-raised.btn-primary,.btn-primary{background:var(--primary)!important;color:#fff!important}
.btn-raised.btn-primary:hover,.btn-primary:hover{background:var(--primary-dark)!important}
.btn-raised.btn-info,.btn-info{background:var(--accent)!important;color:#fff!important}
.btn-raised.btn-danger,.btn-danger{background:var(--danger)!important;color:#fff!important}
.btn-default{background:#eef2f7!important;color:#334155!important}
.btn-lg{padding:12px 18px;font-size:16px}
.searchbox{margin-top:0}
.searchbox .form-control{height:38px;min-width:240px}
.searchbox button{height:38px;margin-top:0}
.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}
.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}
@media (min-width:767px){.searchbox{float:right}}
.nav-tabs{background:#fff;border-bottom:1px solid var(--line)}
.nav-tabs>li>a{color:#64748b;border:0;margin:0;padding:13px 18px}
.nav-tabs>li>a:hover{background:#f8fafc;border:0}
.nav-tabs>li>a,.nav-tabs>li>a:focus,.nav-tabs>li>a:hover{background-color:transparent!important;border:0!important;color:#475569!important;font-weight:700}
.nav-tabs>li.disabled>a,.nav-tabs>li.disabled>a:hover{color:#cbd5e1}
.nav-tabs>li.active{background:#eef4ff;border-bottom:2px solid var(--primary)}
.nav-tabs>li.active>a{border-bottom-color:var(--primary);color:var(--primary)!important}
.tab-content{background:#fff}
.view{padding:54px 16px 66px;background:linear-gradient(180deg,#f8fafc 0,#fff 100%);border-radius:8px}
.elseview{height:128px;display:flex;align-items:center;justify-content:center}
.tubiao{display:flex;align-items:center;justify-content:center;background:#eef4ff;border-radius:50%;font-size:72px;color:var(--primary);width:112px;height:112px;margin:0 auto}
.elsetext{top:0;color:#475569;font-size:18px;line-height:1.7}
.elsetext p:first-child{color:#111827;font-weight:700;word-break:break-word}
.video_view{width:100%;max-height:450px;min-height:300px}
.image_view{display:flex;align-items:center;justify-content:center;max-width:100%;max-height:520px;min-height:280px;background:#0f172a;border-radius:8px;overflow:hidden}
.image{max-width:100%;max-height:520px}
.videoplayer{width:100%;height:530px;border-radius:8px;overflow:hidden;background:#0f172a}
.fileinfo-table{max-width:86%;background:#fff}
.fileinfo-table th{background:#f8fafc;color:#475569}
.progress{height:18px;margin-bottom:10px;border-radius:999px;background:#e2e8f0;box-shadow:none}
.progress-bar{background:linear-gradient(90deg,var(--primary),var(--accent));line-height:18px}
.filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#475569;font-weight:600}
#app .infobox{min-height:430px;padding:34px;border:1px dashed #bfdbfe;background:#fff!important;box-shadow:var(--shadow);transition:border-color .2s,box-shadow .2s,transform .2s}
#app .infobox:hover{border-color:var(--primary);box-shadow:0 22px 55px rgba(37,99,235,.13);transform:translateY(-1px)}
#uploadTitle{margin:10px 0 24px!important;color:#334155!important;font-size:30px;font-weight:800}
#uploadFile{height:52px!important;padding:0 24px;font-size:18px!important}
#upload_frame .checkbox{margin:12px 0}
#upload_frame .checkbox label{display:inline-flex;align-items:center;gap:8px;color:#5b6f88;font-weight:600;font-size:15px}
#upload_frame .checkbox input[type="checkbox"]{width:22px;height:22px;margin:0;accent-color:var(--primary);cursor:pointer}
#upload_frame .checkbox input[type="checkbox"]+span{line-height:1.4}
#pwd_frame{margin:0 auto}
#fileInput #pwd,#fileInput #storage_select{height:46px;background:#ffffff!important;border:1px solid #d9e6f5!important;color:#19304f!important;-webkit-text-fill-color:#19304f;border-radius:10px;box-shadow:none}
#fileInput #pwd::placeholder{color:#8aa0ba!important}
#fileInput #pwd:focus,#fileInput #storage_select:focus{background:#ffffff!important;border-color:#93c5ff!important;box-shadow:0 0 0 4px rgba(47,134,255,.12)!important}
#fileInput .help-block{color:#7b8ea8!important}
#upload_frame .checkbox .checkbox-material{display:inline-flex!important;align-items:center;justify-content:center;margin:0 2px 0 0}
#upload_frame .checkbox .checkbox-material .check{width:18px;height:18px;border:2px solid var(--primary)!important;border-radius:4px;background:transparent!important}
#upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:var(--primary)!important;border-color:var(--primary)!important}
#upload_frame .checkbox .checkbox-material .check:before{color:#fff!important}
.aplayer{border-radius:8px;box-shadow:none}
.aplayer .aplayer-pic{height:100px;width:100px}
.aplayer .aplayer-info .aplayer-music .aplayer-title{font-size:18px}
.aplayer .aplayer-info{margin-left:100px;padding:25px 7px 0 10px;height:66px;box-sizing:border-box}
#loginform .loginbtn{margin:15px;border-radius:8px}
.loginbtn i{padding-top:15px}
.editor-toolbar{border:1px solid var(--line);background:#f8fafc;border-radius:8px;padding:12px 14px}
#file_content{border-radius:8px!important;border-color:#cbd5e1!important;background:#0f172a!important;color:#e5e7eb!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03);caret-color:#fff}
@media (max-width:991px){.navbar-default .navbar-nav>li>a{padding-top:14px;padding-bottom:14px}.videoplayer{height:450px}.well.bs-component{padding:18px}.fileinfo-table{max-width:100%}}
@media (max-width:767px){body{background:#fff}.navbar.navbar-default{margin-bottom:18px}.navbar-brand{height:56px;line-height:28px}.navbar-default .navbar-nav>li>a{padding-top:12px;padding-bottom:12px}.navbar-collapse{overflow:hidden!important;clear:both}.navbar-collapse.in{overflow:visible!important}.navbar-collapse.collapsing{overflow:hidden!important}.container{width:100%}.well,.panel{border-radius:0;box-shadow:none}.well.bs-component h2{font-size:22px}.searchbox{width:100%}.searchbox .form-control{width:100%;min-width:0;margin-bottom:8px}.table-responsive{margin:0 -14px}.filelist>tbody>tr>td{max-width:220px}.view{padding:34px 10px 46px}.elsetext{font-size:16px}.btn-lg{display:block;width:100%;margin:8px 0!important}.videoplayer{height:400px}.fileinfo-table{max-width:100%}#app .infobox{min-height:360px;padding:22px 16px;border-left:0;border-right:0}#uploadTitle{font-size:24px}}

:root{--page-bg:#f4f3ec;--surface:#fffefa;--surface-soft:#f8f8f1;--text:#171c18;--muted:#64706a;--line:#d8ddd0;--primary:#119a8f;--primary-dark:#0b7770;--accent:#ef6b2f;--danger:#d9463e;--shadow:0 24px 60px rgba(31,37,29,.08)}
body{background:linear-gradient(90deg,rgba(218,221,207,.32) 0,rgba(255,255,255,0) 12%,rgba(255,255,255,0) 88%,rgba(218,221,207,.32) 100%),var(--page-bg);color:var(--text)}
.navbar.navbar-default{background:rgba(255,254,250,.9);box-shadow:none;border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}
.navbar-brand{color:#171c18!important}
.navbar-brand:before{color:var(--primary)}
.navbar-default .navbar-nav>li>a{color:#59645f!important}
.navbar-default .navbar-nav>li>a i{color:#6f7974}
.navbar-default .navbar-nav>li.active>a,.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{background:#171c18!important;color:#fff!important}
.navbar-default .navbar-nav>li.active>a i,.navbar-default .navbar-nav>li>a:hover i{color:#fff}
.well,.panel{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:none}
.well.bs-component h2{color:#171c18}
.panel-heading{background:var(--surface)!important;border-bottom:1px solid var(--line)!important;color:#171c18!important}
.panel-title i{color:var(--primary)}
.panel-footer,.tab-content,.list-group-item{background:var(--surface)}
.table{background:var(--surface)}
.table>thead>tr>th{background:var(--surface-soft);border-bottom:1px solid var(--line);color:#343c37}
.table>tbody>tr>td{border-top:1px solid #e8eadf;color:#26302b}
.table-striped>tbody>tr:nth-of-type(odd){background:#fdfcf7}
.table-hover>tbody>tr:hover{background:#f0f5ea}
.form-control{background:#fffefa;border-color:var(--line);color:#171c18}
.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(17,154,143,.12)}
.btn-raised.btn-primary,.btn-primary{background:#171c18!important;color:#fff!important}
.btn-raised.btn-primary:hover,.btn-primary:hover{background:#0f1411!important}
.btn-raised.btn-info,.btn-info{background:var(--primary)!important;color:#fff!important}
.btn-raised.btn-danger,.btn-danger{background:var(--danger)!important;color:#fff!important}
.btn-default{background:#f0f2e9!important;color:#3f4944!important;border:1px solid var(--line)!important}
.pagination>li>a,.pagination>li>span{background:#f0f2e9;color:#53615b}
.pagination>li>a:hover{background:#171c18;color:#fff}
.nav-tabs{background:var(--surface);border-bottom:1px solid var(--line)}
.nav-tabs>li>a,.nav-tabs>li>a:focus,.nav-tabs>li>a:hover{color:#59645f!important}
.nav-tabs>li.active{background:#171c18;border-bottom-color:#171c18}
.nav-tabs>li.active>a{color:#fff!important}
.view{background:linear-gradient(180deg,#fffefa 0,#f8f8f1 100%);border:1px solid var(--line)}
.tubiao{background:#edf4ed;color:var(--primary)}
.elsetext,.filename{color:#59645f}
.elsetext p:first-child{color:#171c18}
.image_view,.videoplayer{background:#171c18}
.fileinfo-table th{background:#f6f7ef;color:#3f4944}
.progress{background:#e2e5da}
.progress-bar{background:linear-gradient(90deg,var(--primary),var(--accent))}
#app .infobox{border:1px dashed #bcc8bd;background:var(--surface)!important;box-shadow:none}
#app .infobox:hover{border-color:var(--primary);box-shadow:0 16px 42px rgba(31,37,29,.08)}
#uploadTitle{color:#171c18!important}
.editor-toolbar{background:#f8f8f1;border-color:var(--line)}
#file_content{background:#171c18!important;color:#f7f4e9!important;border-color:#2d342f!important}
@media (max-width:767px){body{background:var(--page-bg)}.well,.panel{border-radius:8px;box-shadow:none}.table-responsive{margin:0}}

@-webkit-keyframes stretchdelay{0%,100%,40%{-webkit-transform:scaleY(.4)}20%{-webkit-transform:scaleY(1)}}@keyframes stretchdelay{0%,100%,40%{-webkit-transform:scaleY(.4);transform:scaleY(.4)}20%{-webkit-transform:scaleY(1);transform:scaleY(1)}}.colorful_loading_frame{position:fixed;top:0;left:0;z-index:99999;width:100%;height:100%;background:rgba(0,0,0,.5);color:red;text-align:center;font-size:2em}.colorful_loading{margin:25% auto;width:50px;height:60px;text-align:center;font-size:10px}.colorful_loading>i{display:inline-block;margin-right:3px;width:6px;height:100%;background-color:#fff;-webkit-animation:stretchdelay 1.2s infinite ease-in-out;animation:stretchdelay 1.2s infinite ease-in-out}.colorful_loading .rect2{-webkit-animation-delay:-1.1s;animation-delay:-1.1s}.colorful_loading .rect3{-webkit-animation-delay:-1s;animation-delay:-1s}.colorful_loading .rect4{-webkit-animation-delay:-.9s;animation-delay:-.9s}.colorful_loading .rect5{-webkit-animation-delay:-.8s;animation-delay:-.8s}

/* Blue cloud theme */
:root{--page-bg:#eef7ff;--surface:#fff;--surface-soft:#f4f9ff;--text:#19304f;--muted:#71839c;--line:#e3edf8;--primary:#2f86ff;--primary-dark:#1f6fe6;--accent:#6e9eff;--danger:#ef4b5a;--shadow:0 18px 48px rgba(47,134,255,.14)}
body{background:linear-gradient(180deg,#f8fcff 0,#eaf5ff 100%);color:var(--text)}
body:before{content:"";position:fixed;inset:78px 0 0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(47,134,255,.12),transparent 18%,transparent 82%,rgba(47,134,255,.12));}
.navbar.navbar-default{min-height:78px;margin:0 0 28px;background:rgba(255,255,255,.95);border:0;border-bottom:1px solid #e5eef9;box-shadow:0 10px 30px rgba(25,48,79,.06);backdrop-filter:blur(10px)}
.navbar-brand{height:78px;line-height:48px;color:#142642!important;font-size:20px;font-weight:800}
.navbar-brand:before{content:"\f0c2";color:var(--primary);font-size:24px}
.navbar-default .navbar-nav>li>a{margin:16px 4px;padding:13px 18px;border-radius:14px;color:#3f5370!important;font-weight:800}
.navbar-default .navbar-nav>li>a i{color:#3f5370}
.navbar-default .navbar-nav>li.active>a,.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{background:#eaf4ff!important;color:var(--primary)!important}
.navbar-default .navbar-nav>li.active>a i,.navbar-default .navbar-nav>li>a:hover i{color:var(--primary)}
.navbar-toggle{margin-top:22px}
.navbar-default .navbar-toggle .icon-bar{background:#3f5370}
.container{max-width:1320px}
.well,.panel{border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.96);box-shadow:var(--shadow)}
.well.bs-component{padding:28px}
.well.bs-component h2{margin-bottom:22px;color:#142642;font-size:28px}
.panel{overflow:hidden}
.panel-heading{background:#fff!important;border-bottom:1px solid var(--line)!important;color:#142642!important}
.panel-title i{color:var(--primary)}
.table{background:#fff}
.table>thead>tr>th{height:44px;background:#edf6ff;color:#19304f;border-bottom:0;font-weight:800}
.table>tbody>tr>td{border-top:1px solid #e7f0fa;color:#233c5e}
.table-striped>tbody>tr:nth-of-type(odd){background:#fff}
.table-hover>tbody>tr:hover{background:#f4f9ff}
.filelist td a{font-weight:800;color:var(--primary)}
.filelist .fa-fw{color:#7f96b3}
.file-actions{display:flex;align-items:center;flex-wrap:nowrap;gap:8px}
.file-action{display:inline-flex!important;align-items:center;gap:4px;margin:0!important;padding:4px 9px;border-radius:9px;background:#eef5ff;color:var(--primary)!important;font-size:13px;font-weight:800;line-height:1.3}
.file-action i{font-size:12px}
.file-action-view{background:#f2f6fb;color:#6d8199!important}
.file-action-edit{background:#eef8ff;color:#2b79d8!important}
.file-action:hover{background:var(--primary);color:#fff!important}
.filelist>tbody>tr>td.filelist-actions-cell{max-width:none;overflow:visible;text-overflow:clip;white-space:nowrap}
.file-type-badge{display:inline-flex;align-items:center;justify-content:center;min-width:38px;padding:4px 9px;border-radius:9px;background:#eaf4ff;color:var(--primary);font-weight:800;font-size:13px;line-height:1.2}
.filelist-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:22px}
.filelist-summary{flex:0 0 auto;margin-bottom:0;color:#426080}
.filelist-pager{display:flex;justify-content:flex-end;flex:1 1 auto;width:auto;min-width:0;overflow:visible}
.filelist-pager .pagination{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:wrap;margin:0}
.filelist-pager .pagination>li{display:block;flex:0 0 auto}
.filelist-pager .pagination>li>a{min-width:32px;height:32px;padding:6px 9px;text-align:center;line-height:20px;white-space:nowrap}
.filelist-pager .pagination>li.disabled>a{white-space:nowrap}
.searchbox .form-control,.form-control{height:42px;border:1px solid #d9e6f5;border-radius:10px;background:#fff;color:#19304f}
.form-control:focus{border-color:#93c5ff;box-shadow:0 0 0 4px rgba(47,134,255,.12)}
.input-group .form-control{height:42px}
.input-group-btn .btn{height:42px;border-radius:0 10px 10px 0!important}
.btn{border-radius:10px!important;font-weight:800}
.btn-raised.btn-primary,.btn-primary{background:var(--primary)!important;color:#fff!important}
.btn-raised.btn-primary:hover,.btn-primary:hover{background:var(--primary-dark)!important}
.btn-raised.btn-info,.btn-info{background:#6e9eff!important;color:#fff!important}
.btn-raised.btn-danger,.btn-danger{background:var(--danger)!important;color:#fff!important}
.btn-default{background:#eef5ff!important;border:0!important;color:#41617f!important}
.pagination>li>a,.pagination>li>span{background:#f0f6ff;color:#5d7693;border-radius:9px!important}
.pagination>li>a:hover,.pagination>.active>a,.pagination>.active>a:hover{background:var(--primary);color:#fff}
.nav-tabs{background:#fff;border-bottom:1px solid var(--line)}
.nav-tabs>li>a,.nav-tabs>li>a:focus,.nav-tabs>li>a:hover{color:#536b88!important}
.nav-tabs>li.active{background:#eaf4ff;border-bottom:2px solid var(--primary)}
.nav-tabs>li.active>a{color:var(--primary)!important}
.view{background:#f7fbff;border:1px solid var(--line);border-radius:14px}
.tubiao{background:#edf6ff;color:var(--primary)}
.image_view,.videoplayer{background:#10233c;border-radius:14px}
#app .infobox{border:1px solid var(--line);border-radius:16px;background:#fff!important;box-shadow:var(--shadow)}
#app .infobox:hover{border-color:#b8d8ff;box-shadow:0 22px 55px rgba(47,134,255,.18)}
#uploadTitle{color:#142642!important}
.editor-toolbar{background:#f4f9ff;border-color:var(--line);border-radius:14px}
#file_content{background:#10233c!important;color:#eef6ff!important;border-color:#294361!important}
.footer{color:#94a8bf}
@media (max-width:767px){body{background:#eef7ff}.navbar.navbar-default{min-height:64px}.navbar-brand{height:64px;line-height:36px}.navbar-default .navbar-nav>li>a{margin:4px 0}.navbar-collapse{background:rgba(255,255,255,.98);border-top:1px solid #e5eef9}.well,.panel{border-radius:14px}.well.bs-component{padding:20px}.table-responsive{margin:0}}

body.theme-cloud .navbar-default .navbar-toggle{background-color:#ffffff!important;border-color:#8dbdff!important;box-shadow:0 6px 16px rgba(47,134,255,.16)!important}
body.theme-cloud .navbar-default .navbar-toggle .icon-bar{background:#2f86ff!important;height:3px!important}
body.theme-cloud .navbar-default .navbar-toggle:hover,body.theme-cloud .navbar-default .navbar-toggle:focus{background-color:#eef5ff!important;border-color:#2f86ff!important;box-shadow:0 0 0 3px rgba(47,134,255,.16)!important,0 8px 18px rgba(47,134,255,.18)!important}
body.theme-night .navbar-default .navbar-toggle{background-color:#162235!important;border-color:#26354f!important}
body.theme-night .navbar-default .navbar-toggle .icon-bar{background:#c8d6ea!important}
body.theme-night .navbar-default .navbar-toggle:hover,body.theme-night .navbar-default .navbar-toggle:focus{background-color:#1d2b42!important;border-color:#4f8dff!important;box-shadow:0 0 0 3px rgba(79,141,255,.16)!important}
body.theme-neon .navbar-default .navbar-toggle{background-color:#101d35!important;border-color:#31558c!important}
body.theme-neon .navbar-default .navbar-toggle .icon-bar{background:#24d7ff!important}
body.theme-neon .navbar-default .navbar-toggle:hover,body.theme-neon .navbar-default .navbar-toggle:focus{background-color:#16253f!important;border-color:#24d7ff!important;box-shadow:0 0 0 3px rgba(36,215,255,.16)!important}
body.theme-aurora .navbar-default .navbar-toggle{background-color:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.22)!important}
body.theme-aurora .navbar-default .navbar-toggle .icon-bar{background:#eef5ff!important}
body.theme-aurora .navbar-default .navbar-toggle:hover,body.theme-aurora .navbar-default .navbar-toggle:focus{background-color:rgba(255,255,255,.18)!important;border-color:#67e8ff!important;box-shadow:0 0 0 3px rgba(103,232,255,.14)!important}
body.theme-onefour .navbar-default .navbar-toggle{background-color:#111216!important;border-color:rgba(255,255,255,.1)!important}
body.theme-onefour .navbar-default .navbar-toggle .icon-bar{background:#d7d9df!important}
body.theme-onefour .navbar-default .navbar-toggle:hover,body.theme-onefour .navbar-default .navbar-toggle:focus{background-color:#17181d!important;border-color:#ffffff!important;box-shadow:0 0 0 3px rgba(255,255,255,.08)!important}
@media (max-width:991px){.filelist-footer{display:block}.filelist-summary{margin-bottom:12px}.filelist-pager{justify-content:center;overflow:visible;padding-bottom:0}.filelist-pager .pagination{justify-content:center;flex-wrap:wrap}}

/* Night theme */
body.theme-night{--page-bg:#070d16;--surface:#0f1724;--surface-soft:#162235;--text:#dbe8ff;--muted:#8ea1bd;--line:#26354f;--primary:#2f86ff;--primary-dark:#4b9cff;--accent:#7c5cff;--danger:#ff5c73;--shadow:0 22px 60px rgba(0,0,0,.42);background:radial-gradient(circle at 8% 12%,rgba(47,134,255,.18),transparent 28%),linear-gradient(180deg,#0b1320 0,#060b12 100%);color:var(--text)}
body.theme-night:before{content:"";position:fixed;inset:78px 0 0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(47,134,255,.12),transparent 18%,transparent 82%,rgba(47,134,255,.1)),radial-gradient(circle at right 18%,rgba(124,92,255,.14),transparent 26%)}
body.theme-night a{color:#70aaff}
body.theme-night a:hover,body.theme-night a:focus{color:#9cc4ff}
body.theme-night .navbar.navbar-default{background:rgba(8,13,22,.94);border:0;border-bottom:1px solid #223048;box-shadow:0 14px 36px rgba(0,0,0,.36);backdrop-filter:blur(12px)}
body.theme-night .navbar-brand{color:#edf5ff!important}
body.theme-night .navbar-brand:before{color:var(--primary)}
body.theme-night .navbar-default .navbar-nav>li>a{color:#c5d2e6!important}
body.theme-night .navbar-default .navbar-nav>li>a i{color:#b6c4da}
body.theme-night .navbar-default .navbar-nav>li.active>a,body.theme-night .navbar-default .navbar-nav>li>a:hover,body.theme-night .navbar-default .navbar-nav>li>a:focus{background:rgba(47,134,255,.16)!important;color:#5fa3ff!important}
body.theme-night .navbar-default .navbar-nav>li.active>a i,body.theme-night .navbar-default .navbar-nav>li>a:hover i{color:#5fa3ff}
body.theme-night .navbar-toggle .icon-bar{background:#c8d6ea}
body.theme-night .dropdown-menu{background:#0f1724;border:1px solid var(--line);box-shadow:var(--shadow)}
body.theme-night .dropdown-menu>li>a{color:#c5d2e6}
body.theme-night .dropdown-menu>li>a:hover,body.theme-night .dropdown-menu>li>a:focus{background:#162235!important;color:#79a7ff!important}
body.theme-night .well,body.theme-night .panel{border:1px solid var(--line);background:rgba(13,22,34,.9);box-shadow:var(--shadow)}
body.theme-night .well.bs-component h2{color:#f0f6ff}
body.theme-night .panel-heading{background:#111b2a!important;border-bottom:1px solid var(--line)!important;color:#f0f6ff!important}
body.theme-night .panel-footer,body.theme-night .tab-content,body.theme-night .list-group-item{background:#0f1724;border-color:var(--line);color:#c5d2e6}
body.theme-night .panel-title,body.theme-night .panel-title i{color:#f0f6ff}
body.theme-night .table{background:transparent}
body.theme-night .table>thead>tr>th{background:#172235!important;border-bottom:1px solid #2d3c58!important;color:#dce9ff}
body.theme-night .table>tbody>tr>td{border-top:1px solid #202d43!important;color:#c8d6ea}
body.theme-night .table-striped>tbody>tr:nth-of-type(odd){background:rgba(255,255,255,.01)}
body.theme-night .table-hover>tbody>tr:hover{background:rgba(47,134,255,.1)}
body.theme-night .table-bordered,body.theme-night .table-bordered>tbody>tr>td,body.theme-night .table-bordered>thead>tr>th{border-color:#26354f!important}
body.theme-night .filelist td a{color:#70aaff}
body.theme-night .filelist .fa-fw{color:#86a2c8}
body.theme-night .file-action{background:rgba(47,134,255,.14);color:#5fa3ff!important}
body.theme-night .file-action-view{background:rgba(148,163,184,.12);color:#b7c6dd!important}
body.theme-night .file-action-edit{background:rgba(124,92,255,.16);color:#b8a7ff!important}
body.theme-night .file-action:hover{background:var(--primary);color:#fff!important}
body.theme-night .file-type-badge{background:rgba(47,134,255,.18);color:#72adff}
body.theme-night .filelist-summary{color:#9badc8}
body.theme-night .form-control,body.theme-night .searchbox .form-control{background:#0b121d;border-color:#2a3953;color:#dbe8ff}
body.theme-night .form-control::placeholder{color:#72839c}
body.theme-night .form-control:focus{border-color:#3f8cff;box-shadow:0 0 0 4px rgba(47,134,255,.16)}
body.theme-night .input-group-addon{background:#111b2a;border-color:#2a3953;color:#9badc8}
body.theme-night #upload_frame .checkbox label{color:#b7c6dd}
body.theme-night #fileInput #pwd,body.theme-night #fileInput #storage_select{background:#0b121d!important;border-color:#2a3953!important;color:#dbe8ff!important;-webkit-text-fill-color:#dbe8ff}
body.theme-night #fileInput #pwd::placeholder{color:#72839c!important}
body.theme-night #fileInput #pwd:focus,body.theme-night #fileInput #storage_select:focus{background:#0b121d!important;border-color:#3f8cff!important;box-shadow:0 0 0 4px rgba(47,134,255,.16)!important}
body.theme-night #fileInput .help-block{color:#8ea1bd!important}
body.theme-night #upload_frame .checkbox .checkbox-material .check{border-color:#4f8dff!important}
body.theme-night #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:#4f8dff!important;border-color:#4f8dff!important}
body.theme-night .btn-raised.btn-primary,body.theme-night .btn-primary{background:linear-gradient(135deg,#2f86ff,#255bd8)!important;color:#fff!important}
body.theme-night .btn-raised.btn-primary:hover,body.theme-night .btn-primary:hover{background:linear-gradient(135deg,#4b9cff,#2f6cff)!important}
body.theme-night .btn-raised.btn-info,body.theme-night .btn-info{background:#335fce!important;color:#fff!important}
body.theme-night .btn-raised.btn-danger,body.theme-night .btn-danger{background:var(--danger)!important;color:#fff!important}
body.theme-night .btn-default{background:#162235!important;border:1px solid #26354f!important;color:#c5d2e6!important}
body.theme-night .pagination>li>a,body.theme-night .pagination>li>span{background:#0d1522;border:1px solid #26354f;color:#aabbd3}
body.theme-night .pagination>li>a:hover,body.theme-night .pagination>.active>a,body.theme-night .pagination>.active>a:hover{background:#2f86ff;color:#fff;border-color:#2f86ff}
body.theme-night .pagination>.disabled>a,body.theme-night .pagination>.disabled>a:hover{background:#101925;color:#667790;border-color:#24334c}
body.theme-night .nav-tabs{background:#0f1724;border-bottom:1px solid var(--line)}
body.theme-night .nav-tabs>li>a,body.theme-night .nav-tabs>li>a:focus,body.theme-night .nav-tabs>li>a:hover{color:#aabbd3!important}
body.theme-night .nav-tabs>li.active{background:rgba(47,134,255,.16);border-bottom-color:#2f86ff}
body.theme-night .nav-tabs>li.active>a{color:#70aaff!important}
body.theme-night .view{background:#0f1724;border-color:var(--line)}
body.theme-night .tubiao{background:#162235;color:#70aaff}
body.theme-night .elsetext,body.theme-night .filename{color:#aabbd3}
body.theme-night .elsetext p:first-child{color:#f0f6ff}
body.theme-night .image_view,body.theme-night .videoplayer{background:#050914}
body.theme-night .fileinfo-table{background:#0f1724}
body.theme-night .fileinfo-table th{background:#162235;color:#dce9ff}
body.theme-night .progress{background:#1b2940}
body.theme-night .progress-bar{background:linear-gradient(90deg,#2f86ff,#7c5cff)}
body.theme-night #app .infobox{border-color:#26354f;background:#0f1724!important;box-shadow:var(--shadow)}
body.theme-night #app .infobox:hover{border-color:#3f8cff;box-shadow:0 24px 64px rgba(47,134,255,.18)}
body.theme-night #uploadTitle{color:#f0f6ff!important}
body.theme-night .editor-toolbar{background:#111b2a;border-color:var(--line)}
body.theme-night #file_content{background:#050914!important;color:#dbe8ff!important;border-color:#26354f!important}
body.theme-night .footer,body.theme-night .footer .text-muted{color:#7890ad}
@media (max-width:767px){body.theme-night{background:#070d16}body.theme-night .navbar-collapse{background:#08101b;border-top:1px solid #223048}body.theme-night .well,body.theme-night .panel{border-radius:14px;box-shadow:none}}

/* Neon tech night theme */
body.theme-neon{--page-bg:#050917;--surface:#0b1427;--surface-soft:#101d35;--text:#e7efff;--muted:#8fa7d5;--line:#24406f;--primary:#6d5cff;--primary-dark:#2bb8ff;--accent:#24d7ff;--danger:#ff4d8d;--shadow:0 26px 70px rgba(14,28,80,.48);background:radial-gradient(circle at 22% 0,rgba(45,143,255,.22),transparent 32%),radial-gradient(circle at 92% 58%,rgba(109,92,255,.25),transparent 26%),linear-gradient(180deg,#071024 0,#050917 100%);color:var(--text)}
body.theme-neon:before{content:"";position:fixed;inset:78px 0 0;z-index:-1;pointer-events:none;background:linear-gradient(135deg,rgba(39,209,255,.08) 0,transparent 34%,rgba(109,92,255,.1) 100%),repeating-linear-gradient(90deg,rgba(67,111,185,.08) 0 1px,transparent 1px 90px)}
body.theme-neon a{color:#73c7ff}
body.theme-neon a:hover,body.theme-neon a:focus{color:#b69cff}
body.theme-neon .navbar.navbar-default{background:rgba(5,10,20,.92);border:0;border-bottom:1px solid rgba(94,134,210,.28);box-shadow:0 16px 42px rgba(0,0,0,.45);backdrop-filter:blur(14px)}
body.theme-neon .navbar-brand{color:#f2f7ff!important;text-shadow:0 0 18px rgba(47,134,255,.45)}
body.theme-neon .navbar-brand:before{color:#2f86ff}
body.theme-neon .navbar-default .navbar-nav>li>a{color:#ced9ef!important}
body.theme-neon .navbar-default .navbar-nav>li>a i{color:#c4d2ec}
body.theme-neon .navbar-default .navbar-nav>li.active>a,body.theme-neon .navbar-default .navbar-nav>li>a:hover,body.theme-neon .navbar-default .navbar-nav>li>a:focus{background:linear-gradient(135deg,#2f86ff,#7b3dff)!important;color:#fff!important;box-shadow:0 10px 28px rgba(109,92,255,.35)}
body.theme-neon .dropdown-menu{background:#0d1630;border:1px solid #29456f;box-shadow:var(--shadow)}
body.theme-neon .dropdown-menu>li>a{color:#d7e4fb!important}
body.theme-neon .dropdown-menu>li>a:hover,body.theme-neon .dropdown-menu>li>a:focus{background:linear-gradient(135deg,rgba(36,215,255,.14),rgba(123,61,255,.16))!important;color:#24d7ff!important}
body.theme-neon .well,body.theme-neon .panel{border:1px solid rgba(86,130,218,.46);background:linear-gradient(180deg,rgba(13,26,49,.88),rgba(8,17,33,.9));box-shadow:var(--shadow)}
body.theme-neon .well.bs-component h2{color:#fff;text-shadow:0 0 20px rgba(47,134,255,.38)}
body.theme-neon .well.bs-component h2:before{content:"\f07b";font-family:FontAwesome;margin-right:12px;color:#63b7ff;text-shadow:0 0 18px rgba(99,183,255,.7)}
body.theme-neon .panel-heading{background:#101d35!important;border-bottom:1px solid #2b4777!important;color:#edf4ff!important}
body.theme-neon .panel-footer,body.theme-neon .tab-content,body.theme-neon .list-group-item{background:#0b1427;border-color:#24406f;color:#cad8f0}
body.theme-neon #fileInput.infobox{background:linear-gradient(180deg,rgba(13,26,49,.92),rgba(8,17,33,.94))!important;border:1px solid rgba(86,130,218,.46)!important;box-shadow:0 22px 56px rgba(0,0,0,.34),inset 0 0 0 1px rgba(47,134,255,.08)!important}
body.theme-neon #fileInput.infobox:hover{border-color:#5d78ff!important;box-shadow:0 24px 60px rgba(0,0,0,.4),0 0 24px rgba(47,134,255,.16)!important}
body.theme-neon #fileInput #uploadTitle{color:#eef5ff!important}
body.theme-neon #fileInput .checkbox label,body.theme-neon #fileInput .help-block{color:#b8c9e6!important}
body.theme-neon #fileInput #pwd,body.theme-neon #fileInput #storage_select{background:#07101f!important;border-color:#2b4777!important;color:#e7efff!important;-webkit-text-fill-color:#e7efff}
body.theme-neon .table{background:transparent}
body.theme-neon .table>thead>tr>th{background:linear-gradient(180deg,#16253f,#101a2e)!important;border-bottom:1px solid #314b7a!important;color:#e8f1ff}
body.theme-neon .table>tbody>tr>td{border-top:1px solid rgba(91,121,177,.22)!important;color:#cad8f0}
body.theme-neon .table-striped>tbody>tr:nth-of-type(odd){background:rgba(255,255,255,.015)}
body.theme-neon .table-hover>tbody>tr:hover{background:rgba(47,134,255,.12)}
body.theme-neon .file-action{background:rgba(109,92,255,.18);color:#7cc9ff!important}
body.theme-neon .file-action-view{background:rgba(36,215,255,.11);color:#41dfff!important}
body.theme-neon .file-action:hover{background:linear-gradient(135deg,#2f86ff,#7b3dff);color:#fff!important}
body.theme-neon .file-type-badge{background:rgba(109,92,255,.28);color:#c7b7ff}
body.theme-neon .searchbox .form-control,body.theme-neon .form-control{background:#07101f;border-color:#2b4777;color:#e7efff}
body.theme-neon .form-control::placeholder{color:#788fb8}
body.theme-neon .btn-raised.btn-primary,body.theme-neon .btn-primary{background:linear-gradient(135deg,#2f86ff,#7b3dff)!important;color:#fff!important}
body.theme-neon .btn-default{background:#101d35!important;border:1px solid #2b4777!important;color:#d7e4fb!important}
body.theme-neon .pagination>li>a,body.theme-neon .pagination>li>span{background:#0b1427;border:1px solid #2b4777;color:#b8c9e6}
body.theme-neon .pagination>li>a:hover,body.theme-neon .pagination>.active>a,body.theme-neon .pagination>.active>a:hover{background:linear-gradient(135deg,#2f86ff,#7b3dff);color:#fff;border-color:#7b3dff}
body.theme-neon .filelist-footer{padding:12px 14px;border:1px solid rgba(47,134,255,.42);border-radius:12px;background:linear-gradient(90deg,rgba(47,134,255,.14),rgba(109,92,255,.1));box-shadow:inset 0 0 24px rgba(47,134,255,.12)}
body.theme-neon .filelist-summary{color:#b8d2ff}
body.theme-neon .view{background:#0b1427;border-color:#24406f}
body.theme-neon .tubiao{background:#101d35;color:#73c7ff}
body.theme-neon .image_view,body.theme-neon .videoplayer{background:#050917}
body.theme-neon .footer,body.theme-neon .footer .text-muted{color:#8ea7d5}
body.theme-neon #upload_frame .checkbox label{color:#cfe0fb}
body.theme-neon #upload_frame .checkbox input[type="checkbox"]{accent-color:#73c7ff}
body.theme-neon #fileInput #pwd::placeholder{color:#788fb8!important}
body.theme-neon #fileInput #pwd:focus,body.theme-neon #fileInput #storage_select:focus{background:#07101f!important;border-color:#5d78ff!important;box-shadow:0 0 0 4px rgba(109,92,255,.18)!important}
body.theme-neon #upload_frame .checkbox .checkbox-material .check{border-color:#24d7ff!important;background:#091122!important}
body.theme-neon #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:linear-gradient(135deg,#24d7ff,#7b3dff)!important;border-color:#24d7ff!important}

/* Blue purple glass theme */
body.theme-aurora{--page-bg:#1a2772;--surface:rgba(255,255,255,.1);--surface-soft:rgba(255,255,255,.13);--text:#eef5ff;--muted:#c6d4f2;--line:rgba(255,255,255,.18);--primary:#5fe7ff;--primary-dark:#b872ff;--accent:#b872ff;--danger:#ff6f9f;--shadow:0 28px 72px rgba(30,20,93,.32);background:radial-gradient(circle at 17% 10%,rgba(94,230,255,.24),transparent 31%),radial-gradient(circle at 83% 62%,rgba(180,45,255,.28),transparent 36%),linear-gradient(135deg,#183d86 0,#332980 48%,#561a82 100%);color:var(--text)}
body.theme-aurora:before{content:"";position:fixed;inset:78px 0 0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0) 24%),radial-gradient(circle at 70% 22%,rgba(255,255,255,.08),transparent 28%)}
body.theme-aurora a{color:#78edff}
body.theme-aurora a:hover,body.theme-aurora a:focus{color:#f0b7ff}
body.theme-aurora .navbar.navbar-default{background:rgba(20,28,88,.72);border:0;border-bottom:1px solid rgba(255,255,255,.16);box-shadow:0 14px 40px rgba(15,16,70,.24);backdrop-filter:blur(14px)}
body.theme-aurora .navbar-brand{color:#f7fbff!important;text-shadow:0 8px 24px rgba(95,231,255,.22)}
body.theme-aurora .navbar-brand:before{color:#67e8ff}
body.theme-aurora .navbar-default .navbar-nav>li>a{color:#e6eeff!important}
body.theme-aurora .navbar-default .navbar-nav>li>a i{color:#dbe8ff}
body.theme-aurora .navbar-default .navbar-nav>li.active>a,body.theme-aurora .navbar-default .navbar-nav>li>a:hover,body.theme-aurora .navbar-default .navbar-nav>li>a:focus{background:linear-gradient(135deg,rgba(95,231,255,.24),rgba(184,114,255,.26))!important;color:#fff!important;box-shadow:0 14px 32px rgba(105,63,207,.22)}
body.theme-aurora .dropdown-menu{background:rgba(20,28,88,.88);border:1px solid rgba(255,255,255,.18);box-shadow:var(--shadow);backdrop-filter:blur(14px)}
body.theme-aurora .dropdown-menu>li>a{color:#eef5ff!important}
body.theme-aurora .dropdown-menu>li>a:hover,body.theme-aurora .dropdown-menu>li>a:focus{background:rgba(255,255,255,.12)!important;color:#67e8ff!important}
body.theme-aurora .well,body.theme-aurora .panel{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
body.theme-aurora .well.bs-component{padding:34px}
body.theme-aurora .well.bs-component h2{display:block;margin-bottom:24px;background:linear-gradient(90deg,#67e8ff,#eef5ff 52%,#f0b7ff);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:34px;font-weight:900;text-shadow:none}
body.theme-aurora .well.bs-component h2:after{content:"";display:block;width:92px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#67e8ff,#b872ff)}
body.theme-aurora .panel-heading{background:rgba(255,255,255,.08)!important;border-bottom:1px solid rgba(255,255,255,.18)!important;color:#fff!important}
body.theme-aurora .panel-footer,body.theme-aurora .tab-content,body.theme-aurora .list-group-item{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#dbe8ff}
body.theme-aurora #fileInput.infobox{background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:0 22px 56px rgba(15,16,70,.24)!important;backdrop-filter:blur(18px)}
body.theme-aurora #fileInput.infobox:hover{border-color:rgba(126,238,255,.55)!important;box-shadow:0 24px 64px rgba(15,16,70,.3)!important}
body.theme-aurora #fileInput #uploadTitle{color:#ffffff!important}
body.theme-aurora #fileInput .checkbox label,body.theme-aurora #fileInput .help-block{color:#dbe8ff!important}
body.theme-aurora #fileInput #pwd,body.theme-aurora #fileInput #storage_select{background:rgba(18,23,76,.38)!important;border-color:rgba(255,255,255,.24)!important;color:#fff!important;-webkit-text-fill-color:#fff}
body.theme-aurora .table{background:transparent}
body.theme-aurora .table>thead>tr>th{height:52px;background:rgba(255,255,255,.11)!important;border-bottom:1px solid rgba(255,255,255,.18)!important;color:#fff}
body.theme-aurora .table>tbody>tr>td{border-top:1px solid rgba(255,255,255,.12)!important;color:#e1eaff}
body.theme-aurora .table-striped>tbody>tr:nth-of-type(odd){background:rgba(255,255,255,.025)}
body.theme-aurora .table-hover>tbody>tr:hover{background:rgba(255,255,255,.08)}
body.theme-aurora .filelist td a{color:#94f2ff}
body.theme-aurora .filelist .fa-fw{color:#9eeeff}
body.theme-aurora .file-action{background:rgba(255,255,255,.12);color:#9ef2ff!important}
body.theme-aurora .file-action-view{background:rgba(255,255,255,.1);color:#e6d2ff!important}
body.theme-aurora .file-action-edit{background:rgba(184,114,255,.2);color:#f0d7ff!important}
body.theme-aurora .file-action:hover{background:linear-gradient(135deg,#5fe7ff,#b872ff);color:#fff!important}
body.theme-aurora .file-type-badge{background:rgba(255,255,255,.16);color:#dbf9ff}
body.theme-aurora .filelist-footer{padding:14px 16px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(255,255,255,.08);backdrop-filter:blur(14px)}
body.theme-aurora .filelist-summary{color:#dce8ff}
body.theme-aurora .searchbox .form-control,body.theme-aurora .form-control{background:rgba(18,23,76,.38);border-color:rgba(255,255,255,.24);color:#fff}
body.theme-aurora .form-control::placeholder{color:#c3cdec}
body.theme-aurora .form-control:focus{border-color:#7eeeff;box-shadow:0 0 0 4px rgba(95,231,255,.15)}
body.theme-aurora #upload_frame .checkbox label{color:#eef5ff}
body.theme-aurora #upload_frame .checkbox input[type="checkbox"]{accent-color:#7eeeff}
body.theme-aurora #fileInput #pwd::placeholder{color:#c3cdec!important}
body.theme-aurora #fileInput #pwd:focus,body.theme-aurora #fileInput #storage_select:focus{background:rgba(18,23,76,.46)!important;border-color:#7eeeff!important;box-shadow:0 0 0 4px rgba(95,231,255,.15)!important}
body.theme-aurora #upload_frame .checkbox .checkbox-material .check{border-color:#7eeeff!important;background:rgba(255,255,255,.08)!important}
body.theme-aurora #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:linear-gradient(135deg,#5fe7ff,#b872ff)!important;border-color:#7eeeff!important}
body.theme-aurora .btn-raised.btn-primary,body.theme-aurora .btn-primary{background:linear-gradient(135deg,#5fe7ff,#b872ff)!important;color:#fff!important}
body.theme-aurora .btn-default{background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.18)!important;color:#eef5ff!important}
body.theme-aurora .pagination>li>a,body.theme-aurora .pagination>li>span{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);color:#eef5ff}
body.theme-aurora .pagination>li>a:hover,body.theme-aurora .pagination>.active>a,body.theme-aurora .pagination>.active>a:hover{background:linear-gradient(135deg,#5fe7ff,#b872ff);color:#fff;border-color:rgba(255,255,255,.32)}
body.theme-aurora .pagination>.disabled>a,body.theme-aurora .pagination>.disabled>a:hover{background:rgba(255,255,255,.08);color:#c0cae6;border-color:rgba(255,255,255,.13)}
body.theme-aurora .view{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18)}
body.theme-aurora .tubiao{background:rgba(255,255,255,.12);color:#86efff}
body.theme-aurora .elsetext,body.theme-aurora .filename{color:#dce8ff}
body.theme-aurora .elsetext p:first-child{color:#fff}
body.theme-aurora .image_view,body.theme-aurora .videoplayer{background:#11174d}
body.theme-aurora .footer,body.theme-aurora .footer .text-muted{color:#c8d6f2}
@media (max-width:767px){body.theme-aurora{background:linear-gradient(135deg,#183d86,#561a82)}body.theme-aurora .navbar-collapse{background:rgba(20,28,88,.94);border-top:1px solid rgba(255,255,255,.16)}body.theme-aurora .well.bs-component{padding:22px}}

/* Homepage search box theme guard */
.searchbox form{display:flex;align-items:center;gap:10px}
.searchbox input.form-control[type="search"]{height:42px;min-width:260px;padding:9px 14px;background:#fff!important;background-image:none!important;border:1px solid #d9e6f5!important;border-radius:10px!important;color:#19304f!important;-webkit-text-fill-color:#19304f;box-shadow:none!important;outline:none!important}
.searchbox input.form-control[type="search"]::placeholder{color:#8aa0ba}
.searchbox input.form-control[type="search"]:focus{background:#fff!important;background-image:none!important;border-color:#93c5ff!important;box-shadow:0 0 0 4px rgba(47,134,255,.12)!important}
.searchbox .btn{height:42px;margin:0!important;padding:9px 16px;background:#eef5ff!important;border:0!important;color:#41617f!important;border-radius:10px!important;box-shadow:none!important}
.searchbox .btn:hover,.searchbox .btn:focus{background:#2f86ff!important;color:#fff!important}
.searchbox .btn i{color:inherit}
body.theme-night .searchbox input.form-control[type="search"]{background:#0b121d!important;border-color:#2a3953!important;color:#dbe8ff!important;-webkit-text-fill-color:#dbe8ff}
body.theme-night .searchbox input.form-control[type="search"]::placeholder{color:#72839c}
body.theme-night .searchbox input.form-control[type="search"]:focus{background:#0b121d!important;border-color:#3f8cff!important;box-shadow:0 0 0 4px rgba(47,134,255,.16)!important}
body.theme-night .searchbox .btn{background:#162235!important;border:1px solid #26354f!important;color:#c5d2e6!important}
body.theme-night .searchbox .btn:hover,body.theme-night .searchbox .btn:focus{background:#2f86ff!important;color:#fff!important}
body.theme-neon .searchbox input.form-control[type="search"]{background:#07101f!important;border-color:#2b4777!important;color:#e7efff!important;-webkit-text-fill-color:#e7efff}
body.theme-neon .searchbox input.form-control[type="search"]::placeholder{color:#788fb8}
body.theme-neon .searchbox input.form-control[type="search"]:focus{background:#07101f!important;border-color:#5d78ff!important;box-shadow:0 0 0 4px rgba(109,92,255,.18)!important}
body.theme-neon .searchbox .btn{background:#101d35!important;border:1px solid #2b4777!important;color:#d7e4fb!important}
body.theme-neon .searchbox .btn:hover,body.theme-neon .searchbox .btn:focus{background:linear-gradient(135deg,#2f86ff,#7b3dff)!important;color:#fff!important}
body.theme-aurora .searchbox input.form-control[type="search"]{background:rgba(18,23,76,.38)!important;border-color:rgba(255,255,255,.24)!important;color:#fff!important;-webkit-text-fill-color:#fff}
body.theme-aurora .searchbox input.form-control[type="search"]::placeholder{color:#c3cdec}
body.theme-aurora .searchbox input.form-control[type="search"]:focus{background:rgba(18,23,76,.46)!important;border-color:#7eeeff!important;box-shadow:0 0 0 4px rgba(95,231,255,.15)!important}
body.theme-aurora .searchbox .btn{background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.18)!important;color:#eef5ff!important}
body.theme-aurora .searchbox .btn:hover,body.theme-aurora .searchbox .btn:focus{background:linear-gradient(135deg,#5fe7ff,#b872ff)!important;color:#fff!important}
@media (max-width:767px){.searchbox form{display:block}.searchbox input.form-control[type="search"]{width:100%;min-width:0;margin-bottom:8px}.searchbox .btn{width:100%}}

.mpimg-link-band{--gg-ad-bg:rgba(255,255,255,.96);--gg-ad-border:#dbe8f7;--gg-ad-shadow:none;width:100%;margin:-28px 0 22px;padding:4px 0 0;background:none;border:0;box-shadow:none;box-sizing:border-box}
.mpimg-link-grid{position:relative;max-width:var(--mpimg-ad-grid-max,1320px);width:calc(100% - 24px);margin:0 auto;padding:0 12px;box-sizing:border-box}
.mpimg-link-grid .dh{display:inline-flex;flex:0 1 auto;min-width:110px;max-width:320px;align-items:center;justify-content:center;min-height:36px;padding:8px 16px;font-size:13px;font-weight:600;line-height:1.4;text-align:center;color:#fff!important;text-decoration:none;background:var(--ad-card-bg,#2f86ff);border:1px solid rgba(255,255,255,.2);border-radius:10px;box-shadow:0 2px 6px rgba(24,46,84,.14);transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;position:relative;overflow:visible;box-sizing:border-box}
.mpimg-link-grid .dh:hover,.mpimg-link-grid .dh:focus{color:#fff!important;transform:translateY(-1px);box-shadow:0 4px 12px rgba(24,46,84,.2);opacity:.94}
.mpimg-link-grid .dh.has-image{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;max-width:100%;margin:0;padding:0;background:transparent;border:0;box-shadow:none;overflow:visible}
.mpimg-link-grid .dh.has-image img{display:block;width:var(--mpimg-ad-img-w,100%);max-width:100%;height:var(--mpimg-ad-img-h,auto);object-fit:var(--mpimg-ad-img-fit,cover);border-radius:12px}
.mpimg-ad-carousel[data-tooltip]:not([data-tooltip=""]):hover::after{content:attr(data-tooltip);position:absolute;top:calc(100% + 4px);left:50%;transform:translateX(-50%);min-width:160px;max-width:260px;background:rgba(10,18,30,.92);color:#fff;padding:8px 12px;border-radius:8px;font-size:12px;line-height:1.5;text-align:center;white-space:normal;word-wrap:break-word;box-shadow:0 10px 24px rgba(0,0,0,.22);pointer-events:none;z-index:20}
.mpimg-ad-viewport{position:relative;overflow:hidden;padding:6px 0;border-radius:12px}
.mpimg-ad-track{display:flex;align-items:stretch;transition:transform .45s cubic-bezier(.4,0,.2,1);will-change:transform}
.mpimg-ad-slide{flex:0 0 100%;max-width:100%;display:flex;align-items:center;justify-content:center;min-width:0;box-sizing:border-box}
.mpimg-ad-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:0;border-radius:50%;background:rgba(15,23,42,.42);color:#fff;font-size:14px;line-height:1;cursor:pointer;opacity:.55;transition:opacity .2s ease,background .2s ease}
.mpimg-ad-nav:hover,.mpimg-ad-nav:focus{opacity:1;background:rgba(15,23,42,.66);color:#fff;outline:none}
.mpimg-ad-prev{left:10px}
.mpimg-ad-next{right:10px}
.mpimg-ad-dots{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:8px}
.mpimg-ad-dot{width:7px;height:7px;padding:0;border:0;border-radius:999px;background:#94a3b8;opacity:.45;cursor:pointer;transition:width .2s ease,opacity .2s ease}
.mpimg-ad-dot.is-active{width:18px;opacity:.9}
.mpimg-link-grid.is-single .mpimg-ad-nav,.mpimg-link-grid.is-single .mpimg-ad-dots{display:none}
body.theme-night .mpimg-link-band{--gg-ad-bg:rgba(9,15,25,.94);--gg-ad-border:#26354f;--gg-ad-shadow:0 14px 36px rgba(0,0,0,.28)}
body.theme-neon .mpimg-link-band{--gg-ad-bg:linear-gradient(180deg,rgba(13,26,49,.9),rgba(8,17,33,.92));--gg-ad-border:rgba(86,130,218,.46);--gg-ad-shadow:0 16px 42px rgba(0,0,0,.35)}
body.theme-neon .mpimg-link-grid .dh{box-shadow:0 0 22px rgba(47,134,255,.16)}
body.theme-aurora .mpimg-link-band{--gg-ad-bg:rgba(20,28,88,.54);--gg-ad-border:rgba(255,255,255,.2);--gg-ad-shadow:0 14px 40px rgba(15,16,70,.18);backdrop-filter:blur(14px)}
body.theme-aurora .mpimg-link-grid .dh{border-color:rgba(255,255,255,.28);box-shadow:0 12px 28px rgba(30,20,93,.18)}
body.theme-onefour{--page-bg:#040404;--surface:rgba(7,7,9,.92);--surface-soft:rgba(11,11,14,.96);--text:#e7e8ec;--muted:#9c9faa;--line:rgba(255,255,255,.08);--primary:#ffffff;--primary-dark:#c8cad1;--accent:#7f848f;--danger:#ff6b7d;--shadow:0 22px 56px rgba(0,0,0,.42);background-color:#040404;background-image:radial-gradient(rgba(255,255,255,.085) .9px,transparent .9px);background-size:18px 18px;color:var(--text)}
body.theme-onefour:before{content:"";position:fixed;inset:78px 0 0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 50% 38%,rgba(255,255,255,.035),transparent 22%),linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,0) 28%)}
body.theme-onefour a{color:#f4f5f7}body.theme-onefour a:hover,body.theme-onefour a:focus{color:#bfc3cb}
body.theme-onefour .navbar.navbar-default{background:rgba(6,6,8,.88);border:0;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 14px 34px rgba(0,0,0,.34);backdrop-filter:blur(10px)}
body.theme-onefour .navbar-brand{color:#f5f6f8!important}body.theme-onefour .navbar-brand:before{color:#f5f6f8}
body.theme-onefour .navbar-default .navbar-nav>li>a{color:#d7d9df!important}body.theme-onefour .navbar-default .navbar-nav>li>a i{color:#a9adb8}
body.theme-onefour .navbar-default .navbar-nav>li.active>a,body.theme-onefour .navbar-default .navbar-nav>li>a:hover,body.theme-onefour .navbar-default .navbar-nav>li>a:focus{background:rgba(255,255,255,.06)!important;color:#fff!important}
body.theme-onefour .navbar-default .navbar-nav>li.active>a i,body.theme-onefour .navbar-default .navbar-nav>li>a:hover i{color:#fff}
body.theme-onefour .navbar-toggle .icon-bar{background:#d7d9df}
body.theme-onefour .dropdown-menu{background:#08080a;border:1px solid var(--line);box-shadow:var(--shadow)}body.theme-onefour .dropdown-menu>li>a{color:#d8dae4!important}body.theme-onefour .dropdown-menu>li>a:hover,body.theme-onefour .dropdown-menu>li>a:focus{background:#111216!important;color:#fff!important}
body.theme-onefour .well,body.theme-onefour .panel{border:1px solid var(--line);background:rgba(7,7,9,.9);box-shadow:var(--shadow)}
body.theme-onefour .well.bs-component h2{color:#f4f5f7}
body.theme-onefour .panel-heading{background:#0c0c10!important;border-bottom:1px solid var(--line)!important;color:#f4f5f7!important}
body.theme-onefour .panel-footer,body.theme-onefour .tab-content,body.theme-onefour .list-group-item{background:#09090c;border-color:var(--line);color:#d0d2d9}
body.theme-onefour .panel-title,body.theme-onefour .panel-title i{color:#f4f5f7}
body.theme-onefour .table{background:transparent}
body.theme-onefour .table>thead>tr>th{background:#101115!important;border-bottom:1px solid rgba(255,255,255,.1)!important;color:#f2f3f5}
body.theme-onefour .table>tbody>tr>td{border-top:1px solid rgba(255,255,255,.06)!important;color:#d7d9df}
body.theme-onefour .table-striped>tbody>tr:nth-of-type(odd){background:rgba(255,255,255,.012)}body.theme-onefour .table-hover>tbody>tr:hover{background:rgba(255,255,255,.04)}
body.theme-onefour .table-bordered,body.theme-onefour .table-bordered>tbody>tr>td,body.theme-onefour .table-bordered>thead>tr>th{border-color:rgba(255,255,255,.08)!important}
body.theme-onefour .filelist td a{color:#f4f5f7}body.theme-onefour .filelist .fa-fw{color:#a9adb8}
body.theme-onefour .file-action{background:rgba(255,255,255,.06);color:#f4f5f7!important}body.theme-onefour .file-action-view{background:rgba(255,255,255,.04);color:#c4c8d0!important}body.theme-onefour .file-action-edit{background:rgba(255,255,255,.08);color:#fff!important}body.theme-onefour .file-action:hover{background:#fff;color:#050505!important}
body.theme-onefour .file-type-badge{background:rgba(255,255,255,.07);color:#d8dae4}body.theme-onefour .filelist-summary{color:#a6aab5}
body.theme-onefour .form-control,body.theme-onefour .searchbox .form-control{background:#09090c;border-color:rgba(255,255,255,.1);color:#f2f3f5}
body.theme-onefour .form-control::placeholder{color:#7f848f}
body.theme-onefour .form-control:focus{border-color:rgba(255,255,255,.28);box-shadow:0 0 0 4px rgba(255,255,255,.08)}
body.theme-onefour .input-group-addon{background:#0f1014;border-color:rgba(255,255,255,.1);color:#9c9faa}
body.theme-onefour #upload_frame .checkbox label{color:#d8dae4}
body.theme-onefour #upload_frame .checkbox input[type="checkbox"]{accent-color:#ffffff}
body.theme-onefour #fileInput #pwd,body.theme-onefour #fileInput #storage_select{background:#09090c!important;border-color:rgba(255,255,255,.1)!important;color:#f2f3f5!important;-webkit-text-fill-color:#f2f3f5}
body.theme-onefour #fileInput #pwd::placeholder{color:#7f848f!important}
body.theme-onefour #fileInput #pwd:focus,body.theme-onefour #fileInput #storage_select:focus{background:#09090c!important;border-color:rgba(255,255,255,.28)!important;box-shadow:0 0 0 4px rgba(255,255,255,.08)!important}
body.theme-onefour #fileInput .help-block{color:#9c9faa!important}
body.theme-onefour #upload_frame .checkbox .checkbox-material .check{border-color:#ffffff!important;background:#09090c!important}
body.theme-onefour #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:#ffffff!important;border-color:#ffffff!important}
body.theme-onefour #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check:before{color:#050505!important}
body.theme-onefour .btn-raised.btn-primary,body.theme-onefour .btn-primary{background:#f5f6f8!important;color:#060606!important;border-color:#f5f6f8!important}
body.theme-onefour .btn-raised.btn-primary:hover,body.theme-onefour .btn-primary:hover{background:#d9dde4!important;color:#060606!important}
body.theme-onefour .btn-raised.btn-info,body.theme-onefour .btn-info{background:#1a1c22!important;color:#fff!important;border:1px solid rgba(255,255,255,.12)}
body.theme-onefour .btn-raised.btn-danger,body.theme-onefour .btn-danger{background:var(--danger)!important;color:#fff!important}
body.theme-onefour .btn-default{background:#101115!important;border:1px solid rgba(255,255,255,.1)!important;color:#d8dae4!important}
body.theme-onefour .pagination>li>a,body.theme-onefour .pagination>li>span{background:#09090c;border:1px solid rgba(255,255,255,.1);color:#b0b4be}
body.theme-onefour .pagination>li>a:hover,body.theme-onefour .pagination>.active>a,body.theme-onefour .pagination>.active>a:hover{background:#f5f6f8;color:#050505;border-color:#f5f6f8}
body.theme-onefour .pagination>.disabled>a,body.theme-onefour .pagination>.disabled>a:hover{background:#09090c;color:#666b77;border-color:rgba(255,255,255,.06)}
body.theme-onefour .nav-tabs{background:#09090c;border-bottom:1px solid var(--line)}body.theme-onefour .nav-tabs>li>a,body.theme-onefour .nav-tabs>li>a:focus,body.theme-onefour .nav-tabs>li>a:hover{color:#c4c8d0!important}
body.theme-onefour .nav-tabs>li.active{background:rgba(255,255,255,.05);border-bottom-color:#fff}body.theme-onefour .nav-tabs>li.active>a{color:#fff!important}
body.theme-onefour .view{background:#09090c;border-color:var(--line)}body.theme-onefour .tubiao{background:#111216;color:#f5f6f8}
body.theme-onefour .elsetext,body.theme-onefour .filename{color:#b7bcc6}body.theme-onefour .elsetext p:first-child{color:#fff}
body.theme-onefour .image_view,body.theme-onefour .videoplayer{background:#020202}
body.theme-onefour .fileinfo-table{background:#09090c}body.theme-onefour .fileinfo-table th{background:#111216;color:#f2f3f5}
body.theme-onefour .progress{background:#17181d}body.theme-onefour .progress-bar{background:linear-gradient(90deg,#f5f6f8,#aeb3bd)}
body.theme-onefour #app .infobox{border-color:rgba(255,255,255,.08);background:#09090c!important;box-shadow:var(--shadow)}body.theme-onefour #app .infobox:hover{border-color:rgba(255,255,255,.18);box-shadow:0 24px 64px rgba(0,0,0,.34)}
body.theme-onefour #uploadTitle{color:#f4f5f7!important}body.theme-onefour .editor-toolbar{background:#0d0d11;border-color:var(--line)}
body.theme-onefour #file_content{background:#020202!important;color:#e7e8ec!important;border-color:rgba(255,255,255,.08)!important}
body.theme-onefour .footer,body.theme-onefour .footer .text-muted{color:#8b909b}
body.theme-onefour .searchbox input.form-control[type="search"]{background:#09090c!important;border-color:rgba(255,255,255,.1)!important;color:#f2f3f5!important;-webkit-text-fill-color:#f2f3f5}
body.theme-onefour .searchbox input.form-control[type="search"]::placeholder{color:#7f848f}
body.theme-onefour .searchbox input.form-control[type="search"]:focus{background:#09090c!important;border-color:rgba(255,255,255,.28)!important;box-shadow:0 0 0 4px rgba(255,255,255,.08)!important}
body.theme-onefour .searchbox .btn{background:#101115!important;border:1px solid rgba(255,255,255,.1)!important;color:#d8dae4!important}
body.theme-onefour .searchbox .btn:hover,body.theme-onefour .searchbox .btn:focus{background:#f5f6f8!important;color:#050505!important}
body.theme-onefour .mpimg-link-band{--gg-ad-bg:rgba(6,6,9,.92);--gg-ad-border:rgba(255,255,255,.08);--gg-ad-shadow:0 16px 40px rgba(0,0,0,.34)}
body.theme-onefour .mpimg-link-grid .dh{border-color:rgba(255,255,255,.1);box-shadow:none}
@media (max-width:767px){body.theme-onefour{background-color:#040404}body.theme-onefour .navbar-collapse{background:#070709;border-top:1px solid rgba(255,255,255,.08)}body.theme-onefour .well,body.theme-onefour .panel{border-radius:14px;box-shadow:none}}
@media (max-width:768px){.mpimg-link-band{margin:-18px 0 14px;padding:2px 0 0}.mpimg-link-grid{width:calc(100% - 16px);padding:0 8px}.mpimg-link-grid .dh{min-width:0;min-height:32px;padding:7px 12px;font-size:12px}.mpimg-link-grid .dh.has-image img{width:100%!important;border-radius:10px}.mpimg-ad-nav{width:26px;height:26px;font-size:12px}.mpimg-ad-prev{left:6px}.mpimg-ad-next{right:6px}.mpimg-ad-dots{margin-top:6px}.mpimg-ad-carousel[data-tooltip]:not([data-tooltip=""]):hover::after{min-width:130px;max-width:200px;font-size:11px;padding:6px 8px}}

/* File detail share/code panel theme sync */
.tab-content .input-group .form-control[readonly]{height:42px;background:#f7fbff!important;border:1px solid #d9e6f5!important;color:#19304f!important;-webkit-text-fill-color:#19304f;box-shadow:none!important;cursor:text}
.tab-content .input-group .form-control[readonly]:focus{background:#f7fbff!important;border-color:#93c5ff!important;box-shadow:0 0 0 4px rgba(47,134,255,.12)!important}
.tab-content .input-group-btn .copy-btn{height:42px;margin:0!important;padding:9px 16px;background:#eef5ff!important;border:1px solid #d9e6f5!important;border-left:0!important;color:#41617f!important;border-radius:0 10px 10px 0!important;box-shadow:none!important}
.tab-content .input-group-btn .copy-btn:hover,.tab-content .input-group-btn .copy-btn:focus{background:#dfeeff!important;color:#1f6fe6!important}
.tab-content .form-group .control-label{padding-top:10px;color:#426080;font-weight:700}
body.theme-night .tab-content .input-group .form-control[readonly]{background:#0b121d!important;border-color:#2a3953!important;color:#dbe8ff!important;-webkit-text-fill-color:#dbe8ff}
body.theme-night .tab-content .input-group .form-control[readonly]:focus{background:#0b121d!important;border-color:#3f8cff!important;box-shadow:0 0 0 4px rgba(47,134,255,.16)!important}
body.theme-night .tab-content .input-group-btn .copy-btn{background:#162235!important;border-color:#26354f!important;color:#c5d2e6!important}
body.theme-night .tab-content .input-group-btn .copy-btn:hover,body.theme-night .tab-content .input-group-btn .copy-btn:focus{background:#20314d!important;color:#70aaff!important}
body.theme-night .tab-content .form-group .control-label{color:#9badc8}
body.theme-neon .tab-content .input-group .form-control[readonly]{background:#07101f!important;border-color:#2b4777!important;color:#e7efff!important;-webkit-text-fill-color:#e7efff}
body.theme-neon .tab-content .input-group .form-control[readonly]:focus{background:#07101f!important;border-color:#5d78ff!important;box-shadow:0 0 0 4px rgba(109,92,255,.18)!important}
body.theme-neon .tab-content .input-group-btn .copy-btn{background:#101d35!important;border-color:#2b4777!important;color:#d7e4fb!important}
body.theme-neon .tab-content .input-group-btn .copy-btn:hover,body.theme-neon .tab-content .input-group-btn .copy-btn:focus{background:#16253f!important;color:#73c7ff!important}
body.theme-neon .tab-content .form-group .control-label{color:#9fb7de}
body.theme-aurora .tab-content .input-group .form-control[readonly]{background:rgba(18,23,76,.38)!important;border-color:rgba(255,255,255,.24)!important;color:#fff!important;-webkit-text-fill-color:#fff}
body.theme-aurora .tab-content .input-group .form-control[readonly]:focus{background:rgba(18,23,76,.46)!important;border-color:#7eeeff!important;box-shadow:0 0 0 4px rgba(95,231,255,.15)!important}
body.theme-aurora .tab-content .input-group-btn .copy-btn{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.18)!important;color:#eef5ff!important}
body.theme-aurora .tab-content .input-group-btn .copy-btn:hover,body.theme-aurora .tab-content .input-group-btn .copy-btn:focus{background:linear-gradient(135deg,#5fe7ff,#b872ff)!important;border-color:transparent!important;color:#fff!important}
body.theme-aurora .tab-content .form-group .control-label{color:#dbe8ff}
body.theme-onefour .tab-content .input-group .form-control[readonly]{background:#09090c!important;border-color:rgba(255,255,255,.1)!important;color:#f2f3f5!important;-webkit-text-fill-color:#f2f3f5}
body.theme-onefour .tab-content .input-group .form-control[readonly]:focus{background:#09090c!important;border-color:rgba(255,255,255,.28)!important;box-shadow:0 0 0 4px rgba(255,255,255,.08)!important}
body.theme-onefour .tab-content .input-group-btn .copy-btn{background:#101115!important;border-color:rgba(255,255,255,.1)!important;color:#d8dae4!important}
body.theme-onefour .tab-content .input-group-btn .copy-btn:hover,body.theme-onefour .tab-content .input-group-btn .copy-btn:focus{background:#17181d!important;color:#fff!important}
body.theme-onefour .tab-content .form-group .control-label{color:#b7bcc6}

/* File detail tabs final theme override */
body.theme-neon .nav-tabs{background:#0b1427!important;border-bottom:1px solid #24406f!important}
body.theme-neon .nav-tabs>li>a,body.theme-neon .nav-tabs>li>a:focus,body.theme-neon .nav-tabs>li>a:hover{background:transparent!important;color:#b8c9e6!important}
body.theme-neon .nav-tabs>li.active{background:rgba(47,134,255,.14)!important;border-bottom:2px solid #5d78ff!important}
body.theme-neon .nav-tabs>li.active>a{background:transparent!important;color:#73c7ff!important}
body.theme-neon .tab-content{background:#0b1427!important;border-color:#24406f!important;color:#cad8f0!important}

body.theme-aurora .nav-tabs{background:rgba(255,255,255,.08)!important;border-bottom:1px solid rgba(255,255,255,.16)!important}
body.theme-aurora .nav-tabs>li>a,body.theme-aurora .nav-tabs>li>a:focus,body.theme-aurora .nav-tabs>li>a:hover{background:transparent!important;color:#dbe8ff!important}
body.theme-aurora .nav-tabs>li.active{background:rgba(255,255,255,.12)!important;border-bottom:2px solid #7eeeff!important}
body.theme-aurora .nav-tabs>li.active>a{background:transparent!important;color:#ffffff!important}
body.theme-aurora .tab-content{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.16)!important;color:#dbe8ff!important}
body.theme-neon .fileinfo-table{background:transparent!important;border-color:#314b7a!important}
body.theme-neon .fileinfo-table th{background:#16253f!important;border:1px solid #314b7a!important;color:#e8f1ff!important}
body.theme-neon .fileinfo-table td{background:#0b1427!important;border:1px solid rgba(91,121,177,.28)!important;color:#cad8f0!important}
body.theme-aurora .fileinfo-table{background:transparent!important;border-color:rgba(255,255,255,.18)!important}
body.theme-aurora .fileinfo-table th{background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.2)!important;color:#ffffff!important}
body.theme-aurora .fileinfo-table td{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.16)!important;color:#e1eaff!important}

/* ===== 青瓷微澜 ===== */
body.theme-celadon .navbar-default .navbar-toggle{background-color:#d8e9e8!important;border-color:rgba(24,120,120,.22)!important}
body.theme-celadon .navbar-default .navbar-toggle .icon-bar{background:#1d474a!important}
body.theme-celadon .navbar-default .navbar-toggle:hover,body.theme-celadon .navbar-default .navbar-toggle:focus{background-color:#c9e0df!important;border-color:#2b9c9c!important;box-shadow:0 0 0 3px rgba(24,120,120,.18)!important}
body.theme-celadon{--page-bg:#eef6f5;--surface:rgba(255,255,255,.95);--surface-soft:rgba(255,255,255,.97);--text:#123234;--muted:#6f9496;--line:rgba(24,120,120,.18);--primary:#2b9c9c;--primary-dark:#1f8080;--accent:#22908f;--danger:#d9455c;--shadow:0 22px 56px rgba(24,120,120,.17);background-color:#eef6f5;background-image:repeating-radial-gradient(circle at 50% -10%,rgba(24,120,120,0) 0 27px,rgba(24,120,120,.045) 27px 28px);color:var(--text)}
body.theme-celadon a{color:#17868a}body.theme-celadon a:hover,body.theme-celadon a:focus{color:#2a5c5f}
body.theme-celadon .navbar.navbar-default{background:rgba(255,255,255,.92);border:0;border-bottom:1px solid rgba(24,120,120,.18);box-shadow:0 14px 34px rgba(24,120,120,.14);backdrop-filter:blur(10px)}
body.theme-celadon .navbar-brand{color:#1d474a!important}body.theme-celadon .navbar-brand:before{color:#1d474a}
body.theme-celadon .navbar-default .navbar-nav>li>a{color:#1d474a!important}body.theme-celadon .navbar-default .navbar-nav>li>a i{color:#5c8386}
body.theme-celadon .navbar-default .navbar-nav>li.active>a,body.theme-celadon .navbar-default .navbar-nav>li>a:hover,body.theme-celadon .navbar-default .navbar-nav>li>a:focus{background:rgba(24,120,120,.15)!important;color:#1d474a!important}
body.theme-celadon .navbar-default .navbar-nav>li.active>a i,body.theme-celadon .navbar-default .navbar-nav>li>a:hover i{color:#1d474a}
body.theme-celadon .navbar-toggle .icon-bar{background:#1d474a}
body.theme-celadon .dropdown-menu{background:#ffffff;border:1px solid var(--line);box-shadow:var(--shadow)}body.theme-celadon .dropdown-menu>li>a{color:#1d474a!important}body.theme-celadon .dropdown-menu>li>a:hover,body.theme-celadon .dropdown-menu>li>a:focus{background:#d8e9e8!important;color:#1d474a!important}
body.theme-celadon .well,body.theme-celadon .panel{border:1px solid var(--line);background:rgba(255,255,255,.92);box-shadow:var(--shadow)}
body.theme-celadon .well.bs-component h2{color:#17868a}
body.theme-celadon .panel-heading{background:#e8f3f2!important;border-bottom:1px solid var(--line)!important;color:#17868a!important}
body.theme-celadon .panel-footer,body.theme-celadon .tab-content,body.theme-celadon .list-group-item{background:#ffffff;border-color:var(--line);color:#2a5c5f}
body.theme-celadon .panel-title,body.theme-celadon .panel-title i{color:#17868a}
body.theme-celadon .table{background:transparent}
body.theme-celadon .table>thead>tr>th{background:#e2efee!important;border-bottom:1px solid rgba(24,120,120,.22)!important;color:#123234}
body.theme-celadon .table>tbody>tr>td{border-top:1px solid rgba(24,120,120,.15)!important;color:#1d474a}
body.theme-celadon .table-striped>tbody>tr:nth-of-type(odd){background:rgba(24,120,120,.05)}body.theme-celadon .table-hover>tbody>tr:hover{background:rgba(24,120,120,.11)}
body.theme-celadon .table-bordered,body.theme-celadon .table-bordered>tbody>tr>td,body.theme-celadon .table-bordered>thead>tr>th{border-color:rgba(24,120,120,.18)!important}
body.theme-celadon .filelist td a{color:#17868a}body.theme-celadon .filelist .fa-fw{color:#5c8386}
body.theme-celadon .file-action{background:rgba(24,120,120,.15);color:#17868a!important}body.theme-celadon .file-action-view{background:rgba(24,120,120,.11);color:#2a5c5f!important}body.theme-celadon .file-action-edit{background:rgba(24,120,120,.18);color:#1d474a!important}body.theme-celadon .file-action:hover{background:#2b9c9c;color:#123234!important}
body.theme-celadon .file-type-badge{background:rgba(24,120,120,.16);color:#1d474a}body.theme-celadon .filelist-summary{color:#5c8386}
body.theme-celadon .form-control,body.theme-celadon .searchbox .form-control{background:#ffffff;border-color:rgba(24,120,120,.22);color:#123234}
body.theme-celadon .form-control::placeholder{color:#22908f}
body.theme-celadon .form-control:focus{border-color:rgba(34,144,143,.55);box-shadow:0 0 0 4px rgba(24,120,120,.18)}
body.theme-celadon .input-group-addon{background:#e8f3f2;border-color:rgba(24,120,120,.22);color:#6f9496}
body.theme-celadon #upload_frame .checkbox label{color:#1d474a}
body.theme-celadon #upload_frame .checkbox input[type="checkbox"]{accent-color:#2b9c9c}
body.theme-celadon #fileInput #pwd,body.theme-celadon #fileInput #storage_select{background:#ffffff!important;border-color:rgba(24,120,120,.22)!important;color:#123234!important;-webkit-text-fill-color:#123234}
body.theme-celadon #fileInput #pwd::placeholder{color:#22908f!important}
body.theme-celadon #fileInput #pwd:focus,body.theme-celadon #fileInput #storage_select:focus{background:#ffffff!important;border-color:rgba(34,144,143,.55)!important;box-shadow:0 0 0 4px rgba(24,120,120,.18)!important}
body.theme-celadon #fileInput .help-block{color:#6f9496!important}
body.theme-celadon #upload_frame .checkbox .checkbox-material .check{border-color:#2b9c9c!important;background:#ffffff!important}
body.theme-celadon #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:#2b9c9c!important;border-color:#2b9c9c!important}
body.theme-celadon #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check:before{color:#ffffff!important}
body.theme-celadon .btn-raised.btn-primary,body.theme-celadon .btn-primary{background:#2b9c9c!important;color:#ffffff!important;border-color:#2b9c9c!important}
body.theme-celadon .btn-raised.btn-primary:hover,body.theme-celadon .btn-primary:hover{background:#1f8080!important;color:#ffffff!important}
body.theme-celadon .btn-raised.btn-info,body.theme-celadon .btn-info{background:#bcd8d7!important;color:#1d474a!important;border:1px solid rgba(24,120,120,.26)}
body.theme-celadon .btn-raised.btn-danger,body.theme-celadon .btn-danger{background:var(--danger)!important;color:#1d474a!important}
body.theme-celadon .btn-default{background:#e2efee!important;border:1px solid rgba(24,120,120,.22)!important;color:#1d474a!important}
body.theme-celadon .pagination>li>a,body.theme-celadon .pagination>li>span{background:#ffffff;border:1px solid rgba(24,120,120,.22);color:#5c8386}
body.theme-celadon .pagination>li>a:hover,body.theme-celadon .pagination>.active>a,body.theme-celadon .pagination>.active>a:hover{background:#2b9c9c;color:#ffffff;border-color:#2b9c9c}
body.theme-celadon .pagination>.disabled>a,body.theme-celadon .pagination>.disabled>a:hover{background:#ffffff;color:#8aa9ab;border-color:rgba(24,120,120,.15)}
body.theme-celadon .nav-tabs{background:#ffffff;border-bottom:1px solid var(--line)}body.theme-celadon .nav-tabs>li>a,body.theme-celadon .nav-tabs>li>a:focus,body.theme-celadon .nav-tabs>li>a:hover{color:#2a5c5f!important}
body.theme-celadon .nav-tabs>li.active{background:rgba(24,120,120,.13);border-bottom-color:#1d474a}body.theme-celadon .nav-tabs>li.active>a{color:#1d474a!important}
body.theme-celadon .view{background:#ffffff;border-color:var(--line)}body.theme-celadon .tubiao{background:#d8e9e8;color:#1d474a}
body.theme-celadon .elsetext,body.theme-celadon .filename{color:#5c8386}body.theme-celadon .elsetext p:first-child{color:#1d474a}
body.theme-celadon .image_view,body.theme-celadon .videoplayer{background:#f7fbfa}
body.theme-celadon .fileinfo-table{background:#ffffff}body.theme-celadon .fileinfo-table th{background:#d8e9e8;color:#123234}
body.theme-celadon .progress{background:#c9e0df}body.theme-celadon .progress-bar{background:linear-gradient(90deg,#2b9c9c,#5c8386)}
body.theme-celadon #app .infobox{border-color:rgba(24,120,120,.18);background:#ffffff!important;box-shadow:var(--shadow)}body.theme-celadon #app .infobox:hover{border-color:rgba(24,120,120,.34);box-shadow:0 24px 64px rgba(24,120,120,.14)}
body.theme-celadon #uploadTitle{color:#17868a!important}body.theme-celadon .editor-toolbar{background:#e8f3f2;border-color:var(--line)}
body.theme-celadon #file_content{background:#f7fbfa!important;color:#123234!important;border-color:rgba(24,120,120,.18)!important}
body.theme-celadon .footer,body.theme-celadon .footer .text-muted{color:#6f9496}
body.theme-celadon .searchbox input.form-control[type="search"]{background:#ffffff!important;border-color:rgba(24,120,120,.22)!important;color:#123234!important;-webkit-text-fill-color:#123234}
body.theme-celadon .searchbox input.form-control[type="search"]::placeholder{color:#22908f}
body.theme-celadon .searchbox input.form-control[type="search"]:focus{background:#ffffff!important;border-color:rgba(34,144,143,.55)!important;box-shadow:0 0 0 4px rgba(24,120,120,.18)!important}
body.theme-celadon .searchbox .btn{background:#e2efee!important;border:1px solid rgba(24,120,120,.22)!important;color:#1d474a!important}
body.theme-celadon .searchbox .btn:hover,body.theme-celadon .searchbox .btn:focus{background:#2b9c9c!important;color:#ffffff!important}
body.theme-celadon .mpimg-link-band{--gg-ad-bg:rgba(255,255,255,.95);--gg-ad-border:rgba(24,120,120,.18);--gg-ad-shadow:0 16px 40px rgba(24,120,120,.14)}
body.theme-celadon .mpimg-link-grid .dh{border-color:rgba(24,120,120,.22);box-shadow:none}
@media (max-width:767px){body.theme-celadon{background-color:#eef6f5}body.theme-celadon .navbar-collapse{background:#ffffff;border-top:1px solid rgba(24,120,120,.18)}body.theme-celadon .well,body.theme-celadon .panel{border-radius:14px;box-shadow:none}}
body.theme-celadon .tab-content .input-group .form-control[readonly]{background:#ffffff!important;border-color:rgba(24,120,120,.22)!important;color:#123234!important;-webkit-text-fill-color:#123234}
body.theme-celadon .tab-content .input-group .form-control[readonly]:focus{background:#ffffff!important;border-color:rgba(34,144,143,.55)!important;box-shadow:0 0 0 4px rgba(24,120,120,.18)!important}
body.theme-celadon .tab-content .input-group-btn .copy-btn{background:#e2efee!important;border-color:rgba(24,120,120,.22)!important;color:#1d474a!important}
body.theme-celadon .tab-content .input-group-btn .copy-btn:hover,body.theme-celadon .tab-content .input-group-btn .copy-btn:focus{background:#c9e0df!important;color:#1d474a!important}
body.theme-celadon .tab-content .form-group .control-label{color:#5c8386}
body.theme-celadon:before{content:"";position:fixed;inset:78px 0 0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 16% 6%,rgba(24,120,120,.10),transparent 26%),radial-gradient(circle at 88% 62%,rgba(24,120,120,.07),transparent 30%)}
body.theme-celadon .well.bs-component h2{background:linear-gradient(90deg,#2b9c9c,#17696b);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:30px;font-weight:800;letter-spacing:.01em}
body.theme-celadon .well.bs-component h2:after{content:"";display:block;width:84px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#2b9c9c,#17696b)}
body.theme-celadon .well,body.theme-celadon .panel{border-radius:18px;box-shadow:0 18px 44px rgba(24,120,120,.10)}
body.theme-celadon .navbar.navbar-default{box-shadow:0 10px 30px rgba(24,120,120,.08)}
body.theme-celadon .btn-raised.btn-primary,body.theme-celadon .btn-primary{background:linear-gradient(135deg,#2b9c9c,#1f8080)!important;border-color:transparent!important;box-shadow:0 8px 20px rgba(24,120,120,.22)!important}
body.theme-celadon .btn-raised.btn-primary:hover,body.theme-celadon .btn-primary:hover{background:linear-gradient(135deg,#22908f,#1f8080)!important;box-shadow:0 10px 26px rgba(24,120,120,.3)!important}
body.theme-celadon .file-type-badge{border-radius:999px;font-weight:600}
body.theme-celadon .file-action{border-radius:999px}
body.theme-celadon .table>thead>tr>th{letter-spacing:.02em;font-weight:700}
body.theme-celadon .pagination>li>a{border-radius:10px;margin:0 3px}
body.theme-celadon .filelist-footer{border-radius:14px}

/* ===== 淡紫点阵 ===== */
body.theme-lilac .navbar-default .navbar-toggle{background-color:#ded9f1!important;border-color:rgba(96,82,190,.22)!important}
body.theme-lilac .navbar-default .navbar-toggle .icon-bar{background:#2f2952!important}
body.theme-lilac .navbar-default .navbar-toggle:hover,body.theme-lilac .navbar-default .navbar-toggle:focus{background-color:#cfc9ea!important;border-color:#6d5dd3!important;box-shadow:0 0 0 3px rgba(96,82,190,.18)!important}
body.theme-lilac{--page-bg:#f4f3fb;--surface:rgba(255,255,255,.95);--surface-soft:rgba(255,255,255,.97);--text:#211c3d;--muted:#837ca3;--line:rgba(96,82,190,.18);--primary:#6d5dd3;--primary-dark:#574ab5;--accent:#6455c9;--danger:#d9455c;--shadow:0 22px 56px rgba(96,82,190,.17);background-color:#f4f3fb;background-image:radial-gradient(rgba(96,82,190,.085) 1px,transparent 1px);background-size:22px 22px;color:var(--text)}
body.theme-lilac a{color:#5b4fc4}body.theme-lilac a:hover,body.theme-lilac a:focus{color:#3d3663}
body.theme-lilac .navbar.navbar-default{background:rgba(255,255,255,.92);border:0;border-bottom:1px solid rgba(96,82,190,.18);box-shadow:0 14px 34px rgba(96,82,190,.14);backdrop-filter:blur(10px)}
body.theme-lilac .navbar-brand{color:#2f2952!important}body.theme-lilac .navbar-brand:before{color:#2f2952}
body.theme-lilac .navbar-default .navbar-nav>li>a{color:#2f2952!important}body.theme-lilac .navbar-default .navbar-nav>li>a i{color:#6f6890}
body.theme-lilac .navbar-default .navbar-nav>li.active>a,body.theme-lilac .navbar-default .navbar-nav>li>a:hover,body.theme-lilac .navbar-default .navbar-nav>li>a:focus{background:rgba(96,82,190,.15)!important;color:#2f2952!important}
body.theme-lilac .navbar-default .navbar-nav>li.active>a i,body.theme-lilac .navbar-default .navbar-nav>li>a:hover i{color:#2f2952}
body.theme-lilac .navbar-toggle .icon-bar{background:#2f2952}
body.theme-lilac .dropdown-menu{background:#ffffff;border:1px solid var(--line);box-shadow:var(--shadow)}body.theme-lilac .dropdown-menu>li>a{color:#2f2952!important}body.theme-lilac .dropdown-menu>li>a:hover,body.theme-lilac .dropdown-menu>li>a:focus{background:#ded9f1!important;color:#2f2952!important}
body.theme-lilac .well,body.theme-lilac .panel{border:1px solid var(--line);background:rgba(255,255,255,.92);box-shadow:var(--shadow)}
body.theme-lilac .well.bs-component h2{color:#5b4fc4}
body.theme-lilac .panel-heading{background:#eeecf9!important;border-bottom:1px solid var(--line)!important;color:#5b4fc4!important}
body.theme-lilac .panel-footer,body.theme-lilac .tab-content,body.theme-lilac .list-group-item{background:#ffffff;border-color:var(--line);color:#3d3663}
body.theme-lilac .panel-title,body.theme-lilac .panel-title i{color:#5b4fc4}
body.theme-lilac .table{background:transparent}
body.theme-lilac .table>thead>tr>th{background:#e8e5f6!important;border-bottom:1px solid rgba(96,82,190,.22)!important;color:#211c3d}
body.theme-lilac .table>tbody>tr>td{border-top:1px solid rgba(96,82,190,.15)!important;color:#2f2952}
body.theme-lilac .table-striped>tbody>tr:nth-of-type(odd){background:rgba(96,82,190,.05)}body.theme-lilac .table-hover>tbody>tr:hover{background:rgba(96,82,190,.11)}
body.theme-lilac .table-bordered,body.theme-lilac .table-bordered>tbody>tr>td,body.theme-lilac .table-bordered>thead>tr>th{border-color:rgba(96,82,190,.18)!important}
body.theme-lilac .filelist td a{color:#5b4fc4}body.theme-lilac .filelist .fa-fw{color:#6f6890}
body.theme-lilac .file-action{background:rgba(96,82,190,.15);color:#5b4fc4!important}body.theme-lilac .file-action-view{background:rgba(96,82,190,.11);color:#3d3663!important}body.theme-lilac .file-action-edit{background:rgba(96,82,190,.18);color:#2f2952!important}body.theme-lilac .file-action:hover{background:#6d5dd3;color:#211c3d!important}
body.theme-lilac .file-type-badge{background:rgba(96,82,190,.16);color:#2f2952}body.theme-lilac .filelist-summary{color:#6f6890}
body.theme-lilac .form-control,body.theme-lilac .searchbox .form-control{background:#ffffff;border-color:rgba(96,82,190,.22);color:#211c3d}
body.theme-lilac .form-control::placeholder{color:#6455c9}
body.theme-lilac .form-control:focus{border-color:rgba(100,85,201,.55);box-shadow:0 0 0 4px rgba(96,82,190,.18)}
body.theme-lilac .input-group-addon{background:#eeecf9;border-color:rgba(96,82,190,.22);color:#837ca3}
body.theme-lilac #upload_frame .checkbox label{color:#2f2952}
body.theme-lilac #upload_frame .checkbox input[type="checkbox"]{accent-color:#6d5dd3}
body.theme-lilac #fileInput #pwd,body.theme-lilac #fileInput #storage_select{background:#ffffff!important;border-color:rgba(96,82,190,.22)!important;color:#211c3d!important;-webkit-text-fill-color:#211c3d}
body.theme-lilac #fileInput #pwd::placeholder{color:#6455c9!important}
body.theme-lilac #fileInput #pwd:focus,body.theme-lilac #fileInput #storage_select:focus{background:#ffffff!important;border-color:rgba(100,85,201,.55)!important;box-shadow:0 0 0 4px rgba(96,82,190,.18)!important}
body.theme-lilac #fileInput .help-block{color:#837ca3!important}
body.theme-lilac #upload_frame .checkbox .checkbox-material .check{border-color:#6d5dd3!important;background:#ffffff!important}
body.theme-lilac #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:#6d5dd3!important;border-color:#6d5dd3!important}
body.theme-lilac #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check:before{color:#ffffff!important}
body.theme-lilac .btn-raised.btn-primary,body.theme-lilac .btn-primary{background:#6d5dd3!important;color:#ffffff!important;border-color:#6d5dd3!important}
body.theme-lilac .btn-raised.btn-primary:hover,body.theme-lilac .btn-primary:hover{background:#574ab5!important;color:#ffffff!important}
body.theme-lilac .btn-raised.btn-info,body.theme-lilac .btn-info{background:#c0b8e3!important;color:#2f2952!important;border:1px solid rgba(96,82,190,.26)}
body.theme-lilac .btn-raised.btn-danger,body.theme-lilac .btn-danger{background:var(--danger)!important;color:#2f2952!important}
body.theme-lilac .btn-default{background:#e8e5f6!important;border:1px solid rgba(96,82,190,.22)!important;color:#2f2952!important}
body.theme-lilac .pagination>li>a,body.theme-lilac .pagination>li>span{background:#ffffff;border:1px solid rgba(96,82,190,.22);color:#6f6890}
body.theme-lilac .pagination>li>a:hover,body.theme-lilac .pagination>.active>a,body.theme-lilac .pagination>.active>a:hover{background:#6d5dd3;color:#ffffff;border-color:#6d5dd3}
body.theme-lilac .pagination>.disabled>a,body.theme-lilac .pagination>.disabled>a:hover{background:#ffffff;color:#9a94b5;border-color:rgba(96,82,190,.15)}
body.theme-lilac .nav-tabs{background:#ffffff;border-bottom:1px solid var(--line)}body.theme-lilac .nav-tabs>li>a,body.theme-lilac .nav-tabs>li>a:focus,body.theme-lilac .nav-tabs>li>a:hover{color:#3d3663!important}
body.theme-lilac .nav-tabs>li.active{background:rgba(96,82,190,.13);border-bottom-color:#2f2952}body.theme-lilac .nav-tabs>li.active>a{color:#2f2952!important}
body.theme-lilac .view{background:#ffffff;border-color:var(--line)}body.theme-lilac .tubiao{background:#ded9f1;color:#2f2952}
body.theme-lilac .elsetext,body.theme-lilac .filename{color:#6f6890}body.theme-lilac .elsetext p:first-child{color:#2f2952}
body.theme-lilac .image_view,body.theme-lilac .videoplayer{background:#faf9fe}
body.theme-lilac .fileinfo-table{background:#ffffff}body.theme-lilac .fileinfo-table th{background:#ded9f1;color:#211c3d}
body.theme-lilac .progress{background:#cfc9ea}body.theme-lilac .progress-bar{background:linear-gradient(90deg,#6d5dd3,#6f6890)}
body.theme-lilac #app .infobox{border-color:rgba(96,82,190,.18);background:#ffffff!important;box-shadow:var(--shadow)}body.theme-lilac #app .infobox:hover{border-color:rgba(96,82,190,.34);box-shadow:0 24px 64px rgba(96,82,190,.14)}
body.theme-lilac #uploadTitle{color:#5b4fc4!important}body.theme-lilac .editor-toolbar{background:#eeecf9;border-color:var(--line)}
body.theme-lilac #file_content{background:#faf9fe!important;color:#211c3d!important;border-color:rgba(96,82,190,.18)!important}
body.theme-lilac .footer,body.theme-lilac .footer .text-muted{color:#837ca3}
body.theme-lilac .searchbox input.form-control[type="search"]{background:#ffffff!important;border-color:rgba(96,82,190,.22)!important;color:#211c3d!important;-webkit-text-fill-color:#211c3d}
body.theme-lilac .searchbox input.form-control[type="search"]::placeholder{color:#6455c9}
body.theme-lilac .searchbox input.form-control[type="search"]:focus{background:#ffffff!important;border-color:rgba(100,85,201,.55)!important;box-shadow:0 0 0 4px rgba(96,82,190,.18)!important}
body.theme-lilac .searchbox .btn{background:#e8e5f6!important;border:1px solid rgba(96,82,190,.22)!important;color:#2f2952!important}
body.theme-lilac .searchbox .btn:hover,body.theme-lilac .searchbox .btn:focus{background:#6d5dd3!important;color:#ffffff!important}
body.theme-lilac .mpimg-link-band{--gg-ad-bg:rgba(255,255,255,.95);--gg-ad-border:rgba(96,82,190,.18);--gg-ad-shadow:0 16px 40px rgba(96,82,190,.14)}
body.theme-lilac .mpimg-link-grid .dh{border-color:rgba(96,82,190,.22);box-shadow:none}
@media (max-width:767px){body.theme-lilac{background-color:#f4f3fb}body.theme-lilac .navbar-collapse{background:#ffffff;border-top:1px solid rgba(96,82,190,.18)}body.theme-lilac .well,body.theme-lilac .panel{border-radius:14px;box-shadow:none}}
body.theme-lilac .tab-content .input-group .form-control[readonly]{background:#ffffff!important;border-color:rgba(96,82,190,.22)!important;color:#211c3d!important;-webkit-text-fill-color:#211c3d}
body.theme-lilac .tab-content .input-group .form-control[readonly]:focus{background:#ffffff!important;border-color:rgba(100,85,201,.55)!important;box-shadow:0 0 0 4px rgba(96,82,190,.18)!important}
body.theme-lilac .tab-content .input-group-btn .copy-btn{background:#e8e5f6!important;border-color:rgba(96,82,190,.22)!important;color:#2f2952!important}
body.theme-lilac .tab-content .input-group-btn .copy-btn:hover,body.theme-lilac .tab-content .input-group-btn .copy-btn:focus{background:#cfc9ea!important;color:#2f2952!important}
body.theme-lilac .tab-content .form-group .control-label{color:#6f6890}
body.theme-lilac:before{content:"";position:fixed;inset:78px 0 0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 16% 6%,rgba(96,82,190,.10),transparent 26%),radial-gradient(circle at 88% 62%,rgba(96,82,190,.07),transparent 30%)}
body.theme-lilac .well.bs-component h2{background:linear-gradient(90deg,#6d5dd3,#453a94);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:30px;font-weight:800;letter-spacing:.01em}
body.theme-lilac .well.bs-component h2:after{content:"";display:block;width:84px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#6d5dd3,#453a94)}
body.theme-lilac .well,body.theme-lilac .panel{border-radius:18px;box-shadow:0 18px 44px rgba(96,82,190,.10)}
body.theme-lilac .navbar.navbar-default{box-shadow:0 10px 30px rgba(96,82,190,.08)}
body.theme-lilac .btn-raised.btn-primary,body.theme-lilac .btn-primary{background:linear-gradient(135deg,#6d5dd3,#574ab5)!important;border-color:transparent!important;box-shadow:0 8px 20px rgba(96,82,190,.22)!important}
body.theme-lilac .btn-raised.btn-primary:hover,body.theme-lilac .btn-primary:hover{background:linear-gradient(135deg,#6455c9,#574ab5)!important;box-shadow:0 10px 26px rgba(96,82,190,.3)!important}
body.theme-lilac .file-type-badge{border-radius:999px;font-weight:600}
body.theme-lilac .file-action{border-radius:999px}
body.theme-lilac .table>thead>tr>th{letter-spacing:.02em;font-weight:700}
body.theme-lilac .pagination>li>a{border-radius:10px;margin:0 3px}
body.theme-lilac .filelist-footer{border-radius:14px}

/* ===== 米白纸张 ===== */
body.theme-paper .navbar-default .navbar-toggle{background-color:#e6e2d9!important;border-color:rgba(120,114,98,.22)!important}
body.theme-paper .navbar-default .navbar-toggle .icon-bar{background:#2c2b27!important}
body.theme-paper .navbar-default .navbar-toggle:hover,body.theme-paper .navbar-default .navbar-toggle:focus{background-color:#dad5c9!important;border-color:#3f3f3d!important;box-shadow:0 0 0 3px rgba(120,114,98,.18)!important}
body.theme-paper{--page-bg:#faf9f6;--surface:rgba(255,255,255,.95);--surface-soft:rgba(255,255,255,.97);--text:#1c1b18;--muted:#83806f;--line:rgba(120,114,98,.18);--primary:#3f3f3d;--primary-dark:#242423;--accent:#57544c;--danger:#c0392b;--shadow:0 22px 56px rgba(120,114,98,.17);background-color:#faf9f6;background-image:repeating-linear-gradient(180deg,rgba(120,114,98,.07) 0 1px,transparent 1px 30px);color:var(--text)}
body.theme-paper a{color:#46443e}body.theme-paper a:hover,body.theme-paper a:focus{color:#3d3b35}
body.theme-paper .navbar.navbar-default{background:rgba(255,255,255,.92);border:0;border-bottom:1px solid rgba(120,114,98,.18);box-shadow:0 14px 34px rgba(120,114,98,.14);backdrop-filter:blur(10px)}
body.theme-paper .navbar-brand{color:#2c2b27!important}body.theme-paper .navbar-brand:before{color:#2c2b27}
body.theme-paper .navbar-default .navbar-nav>li>a{color:#2c2b27!important}body.theme-paper .navbar-default .navbar-nav>li>a i{color:#6f6c62}
body.theme-paper .navbar-default .navbar-nav>li.active>a,body.theme-paper .navbar-default .navbar-nav>li>a:hover,body.theme-paper .navbar-default .navbar-nav>li>a:focus{background:rgba(120,114,98,.15)!important;color:#2c2b27!important}
body.theme-paper .navbar-default .navbar-nav>li.active>a i,body.theme-paper .navbar-default .navbar-nav>li>a:hover i{color:#2c2b27}
body.theme-paper .navbar-toggle .icon-bar{background:#2c2b27}
body.theme-paper .dropdown-menu{background:#ffffff;border:1px solid var(--line);box-shadow:var(--shadow)}body.theme-paper .dropdown-menu>li>a{color:#2c2b27!important}body.theme-paper .dropdown-menu>li>a:hover,body.theme-paper .dropdown-menu>li>a:focus{background:#e6e2d9!important;color:#2c2b27!important}
body.theme-paper .well,body.theme-paper .panel{border:1px solid var(--line);background:rgba(255,255,255,.92);box-shadow:var(--shadow)}
body.theme-paper .well.bs-component h2{color:#46443e}
body.theme-paper .panel-heading{background:#f3f1ec!important;border-bottom:1px solid var(--line)!important;color:#46443e!important}
body.theme-paper .panel-footer,body.theme-paper .tab-content,body.theme-paper .list-group-item{background:#ffffff;border-color:var(--line);color:#3d3b35}
body.theme-paper .panel-title,body.theme-paper .panel-title i{color:#46443e}
body.theme-paper .table{background:transparent}
body.theme-paper .table>thead>tr>th{background:#eeebe4!important;border-bottom:1px solid rgba(120,114,98,.22)!important;color:#1c1b18}
body.theme-paper .table>tbody>tr>td{border-top:1px solid rgba(120,114,98,.15)!important;color:#2c2b27}
body.theme-paper .table-striped>tbody>tr:nth-of-type(odd){background:rgba(120,114,98,.05)}body.theme-paper .table-hover>tbody>tr:hover{background:rgba(120,114,98,.11)}
body.theme-paper .table-bordered,body.theme-paper .table-bordered>tbody>tr>td,body.theme-paper .table-bordered>thead>tr>th{border-color:rgba(120,114,98,.18)!important}
body.theme-paper .filelist td a{color:#46443e}body.theme-paper .filelist .fa-fw{color:#6f6c62}
body.theme-paper .file-action{background:rgba(120,114,98,.15);color:#46443e!important}body.theme-paper .file-action-view{background:rgba(120,114,98,.11);color:#3d3b35!important}body.theme-paper .file-action-edit{background:rgba(120,114,98,.18);color:#2c2b27!important}body.theme-paper .file-action:hover{background:#3f3f3d;color:#1c1b18!important}
body.theme-paper .file-type-badge{background:rgba(120,114,98,.16);color:#2c2b27}body.theme-paper .filelist-summary{color:#6f6c62}
body.theme-paper .form-control,body.theme-paper .searchbox .form-control{background:#ffffff;border-color:rgba(120,114,98,.22);color:#1c1b18}
body.theme-paper .form-control::placeholder{color:#57544c}
body.theme-paper .form-control:focus{border-color:rgba(87,84,76,.55);box-shadow:0 0 0 4px rgba(120,114,98,.18)}
body.theme-paper .input-group-addon{background:#f3f1ec;border-color:rgba(120,114,98,.22);color:#83806f}
body.theme-paper #upload_frame .checkbox label{color:#2c2b27}
body.theme-paper #upload_frame .checkbox input[type="checkbox"]{accent-color:#3f3f3d}
body.theme-paper #fileInput #pwd,body.theme-paper #fileInput #storage_select{background:#ffffff!important;border-color:rgba(120,114,98,.22)!important;color:#1c1b18!important;-webkit-text-fill-color:#1c1b18}
body.theme-paper #fileInput #pwd::placeholder{color:#57544c!important}
body.theme-paper #fileInput #pwd:focus,body.theme-paper #fileInput #storage_select:focus{background:#ffffff!important;border-color:rgba(87,84,76,.55)!important;box-shadow:0 0 0 4px rgba(120,114,98,.18)!important}
body.theme-paper #fileInput .help-block{color:#83806f!important}
body.theme-paper #upload_frame .checkbox .checkbox-material .check{border-color:#3f3f3d!important;background:#ffffff!important}
body.theme-paper #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:#3f3f3d!important;border-color:#3f3f3d!important}
body.theme-paper #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check:before{color:#ffffff!important}
body.theme-paper .btn-raised.btn-primary,body.theme-paper .btn-primary{background:#3f3f3d!important;color:#ffffff!important;border-color:#3f3f3d!important}
body.theme-paper .btn-raised.btn-primary:hover,body.theme-paper .btn-primary:hover{background:#242423!important;color:#ffffff!important}
body.theme-paper .btn-raised.btn-info,body.theme-paper .btn-info{background:#cec8b9!important;color:#2c2b27!important;border:1px solid rgba(120,114,98,.26)}
body.theme-paper .btn-raised.btn-danger,body.theme-paper .btn-danger{background:var(--danger)!important;color:#2c2b27!important}
body.theme-paper .btn-default{background:#eeebe4!important;border:1px solid rgba(120,114,98,.22)!important;color:#2c2b27!important}
body.theme-paper .pagination>li>a,body.theme-paper .pagination>li>span{background:#ffffff;border:1px solid rgba(120,114,98,.22);color:#6f6c62}
body.theme-paper .pagination>li>a:hover,body.theme-paper .pagination>.active>a,body.theme-paper .pagination>.active>a:hover{background:#3f3f3d;color:#ffffff;border-color:#3f3f3d}
body.theme-paper .pagination>.disabled>a,body.theme-paper .pagination>.disabled>a:hover{background:#ffffff;color:#9a9788;border-color:rgba(120,114,98,.15)}
body.theme-paper .nav-tabs{background:#ffffff;border-bottom:1px solid var(--line)}body.theme-paper .nav-tabs>li>a,body.theme-paper .nav-tabs>li>a:focus,body.theme-paper .nav-tabs>li>a:hover{color:#3d3b35!important}
body.theme-paper .nav-tabs>li.active{background:rgba(120,114,98,.13);border-bottom-color:#2c2b27}body.theme-paper .nav-tabs>li.active>a{color:#2c2b27!important}
body.theme-paper .view{background:#ffffff;border-color:var(--line)}body.theme-paper .tubiao{background:#e6e2d9;color:#2c2b27}
body.theme-paper .elsetext,body.theme-paper .filename{color:#6f6c62}body.theme-paper .elsetext p:first-child{color:#2c2b27}
body.theme-paper .image_view,body.theme-paper .videoplayer{background:#fdfcfa}
body.theme-paper .fileinfo-table{background:#ffffff}body.theme-paper .fileinfo-table th{background:#e6e2d9;color:#1c1b18}
body.theme-paper .progress{background:#dad5c9}body.theme-paper .progress-bar{background:linear-gradient(90deg,#3f3f3d,#6f6c62)}
body.theme-paper #app .infobox{border-color:rgba(120,114,98,.18);background:#ffffff!important;box-shadow:var(--shadow)}body.theme-paper #app .infobox:hover{border-color:rgba(120,114,98,.34);box-shadow:0 24px 64px rgba(120,114,98,.14)}
body.theme-paper #uploadTitle{color:#46443e!important}body.theme-paper .editor-toolbar{background:#f3f1ec;border-color:var(--line)}
body.theme-paper #file_content{background:#fdfcfa!important;color:#1c1b18!important;border-color:rgba(120,114,98,.18)!important}
body.theme-paper .footer,body.theme-paper .footer .text-muted{color:#83806f}
body.theme-paper .searchbox input.form-control[type="search"]{background:#ffffff!important;border-color:rgba(120,114,98,.22)!important;color:#1c1b18!important;-webkit-text-fill-color:#1c1b18}
body.theme-paper .searchbox input.form-control[type="search"]::placeholder{color:#57544c}
body.theme-paper .searchbox input.form-control[type="search"]:focus{background:#ffffff!important;border-color:rgba(87,84,76,.55)!important;box-shadow:0 0 0 4px rgba(120,114,98,.18)!important}
body.theme-paper .searchbox .btn{background:#eeebe4!important;border:1px solid rgba(120,114,98,.22)!important;color:#2c2b27!important}
body.theme-paper .searchbox .btn:hover,body.theme-paper .searchbox .btn:focus{background:#3f3f3d!important;color:#ffffff!important}
body.theme-paper .mpimg-link-band{--gg-ad-bg:rgba(255,255,255,.95);--gg-ad-border:rgba(120,114,98,.18);--gg-ad-shadow:0 16px 40px rgba(120,114,98,.14)}
body.theme-paper .mpimg-link-grid .dh{border-color:rgba(120,114,98,.22);box-shadow:none}
@media (max-width:767px){body.theme-paper{background-color:#faf9f6}body.theme-paper .navbar-collapse{background:#ffffff;border-top:1px solid rgba(120,114,98,.18)}body.theme-paper .well,body.theme-paper .panel{border-radius:14px;box-shadow:none}}
body.theme-paper .tab-content .input-group .form-control[readonly]{background:#ffffff!important;border-color:rgba(120,114,98,.22)!important;color:#1c1b18!important;-webkit-text-fill-color:#1c1b18}
body.theme-paper .tab-content .input-group .form-control[readonly]:focus{background:#ffffff!important;border-color:rgba(87,84,76,.55)!important;box-shadow:0 0 0 4px rgba(120,114,98,.18)!important}
body.theme-paper .tab-content .input-group-btn .copy-btn{background:#eeebe4!important;border-color:rgba(120,114,98,.22)!important;color:#2c2b27!important}
body.theme-paper .tab-content .input-group-btn .copy-btn:hover,body.theme-paper .tab-content .input-group-btn .copy-btn:focus{background:#dad5c9!important;color:#2c2b27!important}
body.theme-paper .tab-content .form-group .control-label{color:#6f6c62}
body.theme-paper:before{content:"";position:fixed;inset:78px 0 0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 16% 6%,rgba(120,114,98,.10),transparent 26%),radial-gradient(circle at 88% 62%,rgba(120,114,98,.07),transparent 30%)}
body.theme-paper .well.bs-component h2{background:linear-gradient(90deg,#3f3f3d,#6b6760);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:30px;font-weight:800;letter-spacing:.01em}
body.theme-paper .well.bs-component h2:after{content:"";display:block;width:84px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#3f3f3d,#6b6760)}
body.theme-paper .well,body.theme-paper .panel{border-radius:18px;box-shadow:0 18px 44px rgba(120,114,98,.10)}
body.theme-paper .navbar.navbar-default{box-shadow:0 10px 30px rgba(120,114,98,.08)}
body.theme-paper .btn-raised.btn-primary,body.theme-paper .btn-primary{background:linear-gradient(135deg,#3f3f3d,#242423)!important;border-color:transparent!important;box-shadow:0 8px 20px rgba(120,114,98,.22)!important}
body.theme-paper .btn-raised.btn-primary:hover,body.theme-paper .btn-primary:hover{background:linear-gradient(135deg,#57544c,#242423)!important;box-shadow:0 10px 26px rgba(120,114,98,.3)!important}
body.theme-paper .file-type-badge{border-radius:999px;font-weight:600}
body.theme-paper .file-action{border-radius:999px}
body.theme-paper .table>thead>tr>th{letter-spacing:.02em;font-weight:700}
body.theme-paper .pagination>li>a{border-radius:10px;margin:0 3px}
body.theme-paper .filelist-footer{border-radius:14px}

/* ===== 淡粉暖调 ===== */
body.theme-blush .navbar-default .navbar-toggle{background-color:#f5d7de!important;border-color:rgba(190,110,135,.22)!important}
body.theme-blush .navbar-default .navbar-toggle .icon-bar{background:#4a2833!important}
body.theme-blush .navbar-default .navbar-toggle:hover,body.theme-blush .navbar-default .navbar-toggle:focus{background-color:#efc4ce!important;border-color:#e0648a!important;box-shadow:0 0 0 3px rgba(190,110,135,.18)!important}
body.theme-blush{--page-bg:#fdf4f6;--surface:rgba(255,255,255,.95);--surface-soft:rgba(255,255,255,.97);--text:#3a1c25;--muted:#a17a85;--line:rgba(190,110,135,.18);--primary:#e0648a;--primary-dark:#c44f74;--accent:#d55a80;--danger:#d0324f;--shadow:0 22px 56px rgba(190,110,135,.17);background-color:#fdf4f6;background-image:radial-gradient(rgba(190,110,135,.1) 1.2px,transparent 1.2px),radial-gradient(rgba(190,110,135,.07) 1.2px,transparent 1.2px);background-size:26px 26px,26px 26px;background-position:0 0,13px 13px;color:var(--text)}
body.theme-blush a{color:#c9527a}body.theme-blush a:hover,body.theme-blush a:focus{color:#5c3440}
body.theme-blush .navbar.navbar-default{background:rgba(255,255,255,.92);border:0;border-bottom:1px solid rgba(190,110,135,.18);box-shadow:0 14px 34px rgba(190,110,135,.14);backdrop-filter:blur(10px)}
body.theme-blush .navbar-brand{color:#4a2833!important}body.theme-blush .navbar-brand:before{color:#4a2833}
body.theme-blush .navbar-default .navbar-nav>li>a{color:#4a2833!important}body.theme-blush .navbar-default .navbar-nav>li>a i{color:#8d6470}
body.theme-blush .navbar-default .navbar-nav>li.active>a,body.theme-blush .navbar-default .navbar-nav>li>a:hover,body.theme-blush .navbar-default .navbar-nav>li>a:focus{background:rgba(190,110,135,.15)!important;color:#4a2833!important}
body.theme-blush .navbar-default .navbar-nav>li.active>a i,body.theme-blush .navbar-default .navbar-nav>li>a:hover i{color:#4a2833}
body.theme-blush .navbar-toggle .icon-bar{background:#4a2833}
body.theme-blush .dropdown-menu{background:#ffffff;border:1px solid var(--line);box-shadow:var(--shadow)}body.theme-blush .dropdown-menu>li>a{color:#4a2833!important}body.theme-blush .dropdown-menu>li>a:hover,body.theme-blush .dropdown-menu>li>a:focus{background:#f5d7de!important;color:#4a2833!important}
body.theme-blush .well,body.theme-blush .panel{border:1px solid var(--line);background:rgba(255,255,255,.92);box-shadow:var(--shadow)}
body.theme-blush .well.bs-component h2{color:#c9527a}
body.theme-blush .panel-heading{background:#fbebef!important;border-bottom:1px solid var(--line)!important;color:#c9527a!important}
body.theme-blush .panel-footer,body.theme-blush .tab-content,body.theme-blush .list-group-item{background:#ffffff;border-color:var(--line);color:#5c3440}
body.theme-blush .panel-title,body.theme-blush .panel-title i{color:#c9527a}
body.theme-blush .table{background:transparent}
body.theme-blush .table>thead>tr>th{background:#f9e3e8!important;border-bottom:1px solid rgba(190,110,135,.22)!important;color:#3a1c25}
body.theme-blush .table>tbody>tr>td{border-top:1px solid rgba(190,110,135,.15)!important;color:#4a2833}
body.theme-blush .table-striped>tbody>tr:nth-of-type(odd){background:rgba(190,110,135,.05)}body.theme-blush .table-hover>tbody>tr:hover{background:rgba(190,110,135,.11)}
body.theme-blush .table-bordered,body.theme-blush .table-bordered>tbody>tr>td,body.theme-blush .table-bordered>thead>tr>th{border-color:rgba(190,110,135,.18)!important}
body.theme-blush .filelist td a{color:#c9527a}body.theme-blush .filelist .fa-fw{color:#8d6470}
body.theme-blush .file-action{background:rgba(190,110,135,.15);color:#c9527a!important}body.theme-blush .file-action-view{background:rgba(190,110,135,.11);color:#5c3440!important}body.theme-blush .file-action-edit{background:rgba(190,110,135,.18);color:#4a2833!important}body.theme-blush .file-action:hover{background:#e0648a;color:#3a1c25!important}
body.theme-blush .file-type-badge{background:rgba(190,110,135,.16);color:#4a2833}body.theme-blush .filelist-summary{color:#8d6470}
body.theme-blush .form-control,body.theme-blush .searchbox .form-control{background:#ffffff;border-color:rgba(190,110,135,.22);color:#3a1c25}
body.theme-blush .form-control::placeholder{color:#d55a80}
body.theme-blush .form-control:focus{border-color:rgba(213,90,128,.55);box-shadow:0 0 0 4px rgba(190,110,135,.18)}
body.theme-blush .input-group-addon{background:#fbebef;border-color:rgba(190,110,135,.22);color:#a17a85}
body.theme-blush #upload_frame .checkbox label{color:#4a2833}
body.theme-blush #upload_frame .checkbox input[type="checkbox"]{accent-color:#e0648a}
body.theme-blush #fileInput #pwd,body.theme-blush #fileInput #storage_select{background:#ffffff!important;border-color:rgba(190,110,135,.22)!important;color:#3a1c25!important;-webkit-text-fill-color:#3a1c25}
body.theme-blush #fileInput #pwd::placeholder{color:#d55a80!important}
body.theme-blush #fileInput #pwd:focus,body.theme-blush #fileInput #storage_select:focus{background:#ffffff!important;border-color:rgba(213,90,128,.55)!important;box-shadow:0 0 0 4px rgba(190,110,135,.18)!important}
body.theme-blush #fileInput .help-block{color:#a17a85!important}
body.theme-blush #upload_frame .checkbox .checkbox-material .check{border-color:#e0648a!important;background:#ffffff!important}
body.theme-blush #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:#e0648a!important;border-color:#e0648a!important}
body.theme-blush #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check:before{color:#ffffff!important}
body.theme-blush .btn-raised.btn-primary,body.theme-blush .btn-primary{background:#e0648a!important;color:#ffffff!important;border-color:#e0648a!important}
body.theme-blush .btn-raised.btn-primary:hover,body.theme-blush .btn-primary:hover{background:#c44f74!important;color:#ffffff!important}
body.theme-blush .btn-raised.btn-info,body.theme-blush .btn-info{background:#e9b2bf!important;color:#4a2833!important;border:1px solid rgba(190,110,135,.26)}
body.theme-blush .btn-raised.btn-danger,body.theme-blush .btn-danger{background:var(--danger)!important;color:#4a2833!important}
body.theme-blush .btn-default{background:#f9e3e8!important;border:1px solid rgba(190,110,135,.22)!important;color:#4a2833!important}
body.theme-blush .pagination>li>a,body.theme-blush .pagination>li>span{background:#ffffff;border:1px solid rgba(190,110,135,.22);color:#8d6470}
body.theme-blush .pagination>li>a:hover,body.theme-blush .pagination>.active>a,body.theme-blush .pagination>.active>a:hover{background:#e0648a;color:#ffffff;border-color:#e0648a}
body.theme-blush .pagination>.disabled>a,body.theme-blush .pagination>.disabled>a:hover{background:#ffffff;color:#b8949d;border-color:rgba(190,110,135,.15)}
body.theme-blush .nav-tabs{background:#ffffff;border-bottom:1px solid var(--line)}body.theme-blush .nav-tabs>li>a,body.theme-blush .nav-tabs>li>a:focus,body.theme-blush .nav-tabs>li>a:hover{color:#5c3440!important}
body.theme-blush .nav-tabs>li.active{background:rgba(190,110,135,.13);border-bottom-color:#4a2833}body.theme-blush .nav-tabs>li.active>a{color:#4a2833!important}
body.theme-blush .view{background:#ffffff;border-color:var(--line)}body.theme-blush .tubiao{background:#f5d7de;color:#4a2833}
body.theme-blush .elsetext,body.theme-blush .filename{color:#8d6470}body.theme-blush .elsetext p:first-child{color:#4a2833}
body.theme-blush .image_view,body.theme-blush .videoplayer{background:#fffafb}
body.theme-blush .fileinfo-table{background:#ffffff}body.theme-blush .fileinfo-table th{background:#f5d7de;color:#3a1c25}
body.theme-blush .progress{background:#efc4ce}body.theme-blush .progress-bar{background:linear-gradient(90deg,#e0648a,#8d6470)}
body.theme-blush #app .infobox{border-color:rgba(190,110,135,.18);background:#ffffff!important;box-shadow:var(--shadow)}body.theme-blush #app .infobox:hover{border-color:rgba(190,110,135,.34);box-shadow:0 24px 64px rgba(190,110,135,.14)}
body.theme-blush #uploadTitle{color:#c9527a!important}body.theme-blush .editor-toolbar{background:#fbebef;border-color:var(--line)}
body.theme-blush #file_content{background:#fffafb!important;color:#3a1c25!important;border-color:rgba(190,110,135,.18)!important}
body.theme-blush .footer,body.theme-blush .footer .text-muted{color:#a17a85}
body.theme-blush .searchbox input.form-control[type="search"]{background:#ffffff!important;border-color:rgba(190,110,135,.22)!important;color:#3a1c25!important;-webkit-text-fill-color:#3a1c25}
body.theme-blush .searchbox input.form-control[type="search"]::placeholder{color:#d55a80}
body.theme-blush .searchbox input.form-control[type="search"]:focus{background:#ffffff!important;border-color:rgba(213,90,128,.55)!important;box-shadow:0 0 0 4px rgba(190,110,135,.18)!important}
body.theme-blush .searchbox .btn{background:#f9e3e8!important;border:1px solid rgba(190,110,135,.22)!important;color:#4a2833!important}
body.theme-blush .searchbox .btn:hover,body.theme-blush .searchbox .btn:focus{background:#e0648a!important;color:#ffffff!important}
body.theme-blush .mpimg-link-band{--gg-ad-bg:rgba(255,255,255,.95);--gg-ad-border:rgba(190,110,135,.18);--gg-ad-shadow:0 16px 40px rgba(190,110,135,.14)}
body.theme-blush .mpimg-link-grid .dh{border-color:rgba(190,110,135,.22);box-shadow:none}
@media (max-width:767px){body.theme-blush{background-color:#fdf4f6}body.theme-blush .navbar-collapse{background:#ffffff;border-top:1px solid rgba(190,110,135,.18)}body.theme-blush .well,body.theme-blush .panel{border-radius:14px;box-shadow:none}}
body.theme-blush .tab-content .input-group .form-control[readonly]{background:#ffffff!important;border-color:rgba(190,110,135,.22)!important;color:#3a1c25!important;-webkit-text-fill-color:#3a1c25}
body.theme-blush .tab-content .input-group .form-control[readonly]:focus{background:#ffffff!important;border-color:rgba(213,90,128,.55)!important;box-shadow:0 0 0 4px rgba(190,110,135,.18)!important}
body.theme-blush .tab-content .input-group-btn .copy-btn{background:#f9e3e8!important;border-color:rgba(190,110,135,.22)!important;color:#4a2833!important}
body.theme-blush .tab-content .input-group-btn .copy-btn:hover,body.theme-blush .tab-content .input-group-btn .copy-btn:focus{background:#efc4ce!important;color:#4a2833!important}
body.theme-blush .tab-content .form-group .control-label{color:#8d6470}
body.theme-blush:before{content:"";position:fixed;inset:78px 0 0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 16% 6%,rgba(190,110,135,.10),transparent 26%),radial-gradient(circle at 88% 62%,rgba(190,110,135,.07),transparent 30%)}
body.theme-blush .well.bs-component h2{background:linear-gradient(90deg,#e0648a,#a13c5d);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:30px;font-weight:800;letter-spacing:.01em}
body.theme-blush .well.bs-component h2:after{content:"";display:block;width:84px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#e0648a,#a13c5d)}
body.theme-blush .well,body.theme-blush .panel{border-radius:18px;box-shadow:0 18px 44px rgba(190,110,135,.10)}
body.theme-blush .navbar.navbar-default{box-shadow:0 10px 30px rgba(190,110,135,.08)}
body.theme-blush .btn-raised.btn-primary,body.theme-blush .btn-primary{background:linear-gradient(135deg,#e0648a,#c44f74)!important;border-color:transparent!important;box-shadow:0 8px 20px rgba(190,110,135,.22)!important}
body.theme-blush .btn-raised.btn-primary:hover,body.theme-blush .btn-primary:hover{background:linear-gradient(135deg,#d55a80,#c44f74)!important;box-shadow:0 10px 26px rgba(190,110,135,.3)!important}
body.theme-blush .file-type-badge{border-radius:999px;font-weight:600}
body.theme-blush .file-action{border-radius:999px}
body.theme-blush .table>thead>tr>th{letter-spacing:.02em;font-weight:700}
body.theme-blush .pagination>li>a{border-radius:10px;margin:0 3px}
body.theme-blush .filelist-footer{border-radius:14px}

/* ===== 天蓝细纹 ===== */
body.theme-sky .navbar-default .navbar-toggle{background-color:#cbe8f7!important;border-color:rgba(14,120,180,.22)!important}
body.theme-sky .navbar-default .navbar-toggle .icon-bar{background:#143a52!important}
body.theme-sky .navbar-default .navbar-toggle:hover,body.theme-sky .navbar-default .navbar-toggle:focus{background-color:#b3ddf2!important;border-color:#0ea5e9!important;box-shadow:0 0 0 3px rgba(14,120,180,.18)!important}
body.theme-sky{--page-bg:#eff8fd;--surface:rgba(255,255,255,.95);--surface-soft:rgba(255,255,255,.97);--text:#0b2637;--muted:#6b92aa;--line:rgba(14,120,180,.18);--primary:#0ea5e9;--primary-dark:#0284c7;--accent:#0d94d1;--danger:#d9455c;--shadow:0 22px 56px rgba(14,120,180,.17);background-color:#eff8fd;background-image:repeating-linear-gradient(45deg,rgba(14,120,180,.05) 0 1px,transparent 1px 15px);color:var(--text)}
body.theme-sky a{color:#0284c7}body.theme-sky a:hover,body.theme-sky a:focus{color:#1d4c68}
body.theme-sky .navbar.navbar-default{background:rgba(255,255,255,.92);border:0;border-bottom:1px solid rgba(14,120,180,.18);box-shadow:0 14px 34px rgba(14,120,180,.14);backdrop-filter:blur(10px)}
body.theme-sky .navbar-brand{color:#143a52!important}body.theme-sky .navbar-brand:before{color:#143a52}
body.theme-sky .navbar-default .navbar-nav>li>a{color:#143a52!important}body.theme-sky .navbar-default .navbar-nav>li>a i{color:#557d97}
body.theme-sky .navbar-default .navbar-nav>li.active>a,body.theme-sky .navbar-default .navbar-nav>li>a:hover,body.theme-sky .navbar-default .navbar-nav>li>a:focus{background:rgba(14,120,180,.15)!important;color:#143a52!important}
body.theme-sky .navbar-default .navbar-nav>li.active>a i,body.theme-sky .navbar-default .navbar-nav>li>a:hover i{color:#143a52}
body.theme-sky .navbar-toggle .icon-bar{background:#143a52}
body.theme-sky .dropdown-menu{background:#ffffff;border:1px solid var(--line);box-shadow:var(--shadow)}body.theme-sky .dropdown-menu>li>a{color:#143a52!important}body.theme-sky .dropdown-menu>li>a:hover,body.theme-sky .dropdown-menu>li>a:focus{background:#cbe8f7!important;color:#143a52!important}
body.theme-sky .well,body.theme-sky .panel{border:1px solid var(--line);background:rgba(255,255,255,.92);box-shadow:var(--shadow)}
body.theme-sky .well.bs-component h2{color:#0284c7}
body.theme-sky .panel-heading{background:#e6f4fc!important;border-bottom:1px solid var(--line)!important;color:#0284c7!important}
body.theme-sky .panel-footer,body.theme-sky .tab-content,body.theme-sky .list-group-item{background:#ffffff;border-color:var(--line);color:#1d4c68}
body.theme-sky .panel-title,body.theme-sky .panel-title i{color:#0284c7}
body.theme-sky .table{background:transparent}
body.theme-sky .table>thead>tr>th{background:#dcf0fa!important;border-bottom:1px solid rgba(14,120,180,.22)!important;color:#0b2637}
body.theme-sky .table>tbody>tr>td{border-top:1px solid rgba(14,120,180,.15)!important;color:#143a52}
body.theme-sky .table-striped>tbody>tr:nth-of-type(odd){background:rgba(14,120,180,.05)}body.theme-sky .table-hover>tbody>tr:hover{background:rgba(14,120,180,.11)}
body.theme-sky .table-bordered,body.theme-sky .table-bordered>tbody>tr>td,body.theme-sky .table-bordered>thead>tr>th{border-color:rgba(14,120,180,.18)!important}
body.theme-sky .filelist td a{color:#0284c7}body.theme-sky .filelist .fa-fw{color:#557d97}
body.theme-sky .file-action{background:rgba(14,120,180,.15);color:#0284c7!important}body.theme-sky .file-action-view{background:rgba(14,120,180,.11);color:#1d4c68!important}body.theme-sky .file-action-edit{background:rgba(14,120,180,.18);color:#143a52!important}body.theme-sky .file-action:hover{background:#0ea5e9;color:#0b2637!important}
body.theme-sky .file-type-badge{background:rgba(14,120,180,.16);color:#143a52}body.theme-sky .filelist-summary{color:#557d97}
body.theme-sky .form-control,body.theme-sky .searchbox .form-control{background:#ffffff;border-color:rgba(14,120,180,.22);color:#0b2637}
body.theme-sky .form-control::placeholder{color:#0d94d1}
body.theme-sky .form-control:focus{border-color:rgba(13,148,209,.55);box-shadow:0 0 0 4px rgba(14,120,180,.18)}
body.theme-sky .input-group-addon{background:#e6f4fc;border-color:rgba(14,120,180,.22);color:#6b92aa}
body.theme-sky #upload_frame .checkbox label{color:#143a52}
body.theme-sky #upload_frame .checkbox input[type="checkbox"]{accent-color:#0ea5e9}
body.theme-sky #fileInput #pwd,body.theme-sky #fileInput #storage_select{background:#ffffff!important;border-color:rgba(14,120,180,.22)!important;color:#0b2637!important;-webkit-text-fill-color:#0b2637}
body.theme-sky #fileInput #pwd::placeholder{color:#0d94d1!important}
body.theme-sky #fileInput #pwd:focus,body.theme-sky #fileInput #storage_select:focus{background:#ffffff!important;border-color:rgba(13,148,209,.55)!important;box-shadow:0 0 0 4px rgba(14,120,180,.18)!important}
body.theme-sky #fileInput .help-block{color:#6b92aa!important}
body.theme-sky #upload_frame .checkbox .checkbox-material .check{border-color:#0ea5e9!important;background:#ffffff!important}
body.theme-sky #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:#0ea5e9!important;border-color:#0ea5e9!important}
body.theme-sky #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check:before{color:#ffffff!important}
body.theme-sky .btn-raised.btn-primary,body.theme-sky .btn-primary{background:#0ea5e9!important;color:#ffffff!important;border-color:#0ea5e9!important}
body.theme-sky .btn-raised.btn-primary:hover,body.theme-sky .btn-primary:hover{background:#0284c7!important;color:#ffffff!important}
body.theme-sky .btn-raised.btn-info,body.theme-sky .btn-info{background:#9bd1ed!important;color:#143a52!important;border:1px solid rgba(14,120,180,.26)}
body.theme-sky .btn-raised.btn-danger,body.theme-sky .btn-danger{background:var(--danger)!important;color:#143a52!important}
body.theme-sky .btn-default{background:#dcf0fa!important;border:1px solid rgba(14,120,180,.22)!important;color:#143a52!important}
body.theme-sky .pagination>li>a,body.theme-sky .pagination>li>span{background:#ffffff;border:1px solid rgba(14,120,180,.22);color:#557d97}
body.theme-sky .pagination>li>a:hover,body.theme-sky .pagination>.active>a,body.theme-sky .pagination>.active>a:hover{background:#0ea5e9;color:#ffffff;border-color:#0ea5e9}
body.theme-sky .pagination>.disabled>a,body.theme-sky .pagination>.disabled>a:hover{background:#ffffff;color:#8aabc0;border-color:rgba(14,120,180,.15)}
body.theme-sky .nav-tabs{background:#ffffff;border-bottom:1px solid var(--line)}body.theme-sky .nav-tabs>li>a,body.theme-sky .nav-tabs>li>a:focus,body.theme-sky .nav-tabs>li>a:hover{color:#1d4c68!important}
body.theme-sky .nav-tabs>li.active{background:rgba(14,120,180,.13);border-bottom-color:#143a52}body.theme-sky .nav-tabs>li.active>a{color:#143a52!important}
body.theme-sky .view{background:#ffffff;border-color:var(--line)}body.theme-sky .tubiao{background:#cbe8f7;color:#143a52}
body.theme-sky .elsetext,body.theme-sky .filename{color:#557d97}body.theme-sky .elsetext p:first-child{color:#143a52}
body.theme-sky .image_view,body.theme-sky .videoplayer{background:#f8fcff}
body.theme-sky .fileinfo-table{background:#ffffff}body.theme-sky .fileinfo-table th{background:#cbe8f7;color:#0b2637}
body.theme-sky .progress{background:#b3ddf2}body.theme-sky .progress-bar{background:linear-gradient(90deg,#0ea5e9,#557d97)}
body.theme-sky #app .infobox{border-color:rgba(14,120,180,.18);background:#ffffff!important;box-shadow:var(--shadow)}body.theme-sky #app .infobox:hover{border-color:rgba(14,120,180,.34);box-shadow:0 24px 64px rgba(14,120,180,.14)}
body.theme-sky #uploadTitle{color:#0284c7!important}body.theme-sky .editor-toolbar{background:#e6f4fc;border-color:var(--line)}
body.theme-sky #file_content{background:#f8fcff!important;color:#0b2637!important;border-color:rgba(14,120,180,.18)!important}
body.theme-sky .footer,body.theme-sky .footer .text-muted{color:#6b92aa}
body.theme-sky .searchbox input.form-control[type="search"]{background:#ffffff!important;border-color:rgba(14,120,180,.22)!important;color:#0b2637!important;-webkit-text-fill-color:#0b2637}
body.theme-sky .searchbox input.form-control[type="search"]::placeholder{color:#0d94d1}
body.theme-sky .searchbox input.form-control[type="search"]:focus{background:#ffffff!important;border-color:rgba(13,148,209,.55)!important;box-shadow:0 0 0 4px rgba(14,120,180,.18)!important}
body.theme-sky .searchbox .btn{background:#dcf0fa!important;border:1px solid rgba(14,120,180,.22)!important;color:#143a52!important}
body.theme-sky .searchbox .btn:hover,body.theme-sky .searchbox .btn:focus{background:#0ea5e9!important;color:#ffffff!important}
body.theme-sky .mpimg-link-band{--gg-ad-bg:rgba(255,255,255,.95);--gg-ad-border:rgba(14,120,180,.18);--gg-ad-shadow:0 16px 40px rgba(14,120,180,.14)}
body.theme-sky .mpimg-link-grid .dh{border-color:rgba(14,120,180,.22);box-shadow:none}
@media (max-width:767px){body.theme-sky{background-color:#eff8fd}body.theme-sky .navbar-collapse{background:#ffffff;border-top:1px solid rgba(14,120,180,.18)}body.theme-sky .well,body.theme-sky .panel{border-radius:14px;box-shadow:none}}
body.theme-sky .tab-content .input-group .form-control[readonly]{background:#ffffff!important;border-color:rgba(14,120,180,.22)!important;color:#0b2637!important;-webkit-text-fill-color:#0b2637}
body.theme-sky .tab-content .input-group .form-control[readonly]:focus{background:#ffffff!important;border-color:rgba(13,148,209,.55)!important;box-shadow:0 0 0 4px rgba(14,120,180,.18)!important}
body.theme-sky .tab-content .input-group-btn .copy-btn{background:#dcf0fa!important;border-color:rgba(14,120,180,.22)!important;color:#143a52!important}
body.theme-sky .tab-content .input-group-btn .copy-btn:hover,body.theme-sky .tab-content .input-group-btn .copy-btn:focus{background:#b3ddf2!important;color:#143a52!important}
body.theme-sky .tab-content .form-group .control-label{color:#557d97}
body.theme-sky:before{content:"";position:fixed;inset:78px 0 0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 16% 6%,rgba(14,120,180,.10),transparent 26%),radial-gradient(circle at 88% 62%,rgba(14,120,180,.07),transparent 30%)}
body.theme-sky .well.bs-component h2{background:linear-gradient(90deg,#0ea5e9,#075e86);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:30px;font-weight:800;letter-spacing:.01em}
body.theme-sky .well.bs-component h2:after{content:"";display:block;width:84px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#0ea5e9,#075e86)}
body.theme-sky .well,body.theme-sky .panel{border-radius:18px;box-shadow:0 18px 44px rgba(14,120,180,.10)}
body.theme-sky .navbar.navbar-default{box-shadow:0 10px 30px rgba(14,120,180,.08)}
body.theme-sky .btn-raised.btn-primary,body.theme-sky .btn-primary{background:linear-gradient(135deg,#0ea5e9,#0284c7)!important;border-color:transparent!important;box-shadow:0 8px 20px rgba(14,120,180,.22)!important}
body.theme-sky .btn-raised.btn-primary:hover,body.theme-sky .btn-primary:hover{background:linear-gradient(135deg,#0d94d1,#0284c7)!important;box-shadow:0 10px 26px rgba(14,120,180,.3)!important}
body.theme-sky .file-type-badge{border-radius:999px;font-weight:600}
body.theme-sky .file-action{border-radius:999px}
body.theme-sky .table>thead>tr>th{letter-spacing:.02em;font-weight:700}
body.theme-sky .pagination>li>a{border-radius:10px;margin:0 3px}
body.theme-sky .filelist-footer{border-radius:14px}

/* ===== 薄荷蜂巢 ===== */
body.theme-mint .navbar-default .navbar-toggle{background-color:#cfebda!important;border-color:rgba(30,150,100,.22)!important}
body.theme-mint .navbar-default .navbar-toggle .icon-bar{background:#16412a!important}
body.theme-mint .navbar-default .navbar-toggle:hover,body.theme-mint .navbar-default .navbar-toggle:focus{background-color:#bae0c9!important;border-color:#22b573!important;box-shadow:0 0 0 3px rgba(30,150,100,.18)!important}
body.theme-mint{--page-bg:#f0faf4;--surface:rgba(255,255,255,.95);--surface-soft:rgba(255,255,255,.97);--text:#0e2c1b;--muted:#6a9479;--line:rgba(30,150,100,.18);--primary:#22b573;--primary-dark:#17945c;--accent:#1fa568;--danger:#d9455c;--shadow:0 22px 56px rgba(30,150,100,.17);background-color:#f0faf4;background-image:radial-gradient(circle farthest-side at 0% 50%,rgba(30,150,100,.05) 23.5%,rgba(0,0,0,0) 0) 21px 30px,radial-gradient(circle farthest-side at 0% 50%,rgba(30,150,100,.09) 24%,rgba(0,0,0,0) 0) 19px 30px,linear-gradient(rgba(30,150,100,.05) 14%,rgba(0,0,0,0) 0,rgba(0,0,0,0) 85%,rgba(30,150,100,.05) 0) 0 0,linear-gradient(150deg,rgba(30,150,100,.05) 24%,rgba(30,150,100,.09) 0,rgba(30,150,100,.09) 26%,rgba(0,0,0,0) 0,rgba(0,0,0,0) 74%,rgba(30,150,100,.09) 0,rgba(30,150,100,.09) 76%,rgba(30,150,100,.05) 0) 0 0,linear-gradient(30deg,rgba(30,150,100,.05) 24%,rgba(30,150,100,.09) 0,rgba(30,150,100,.09) 26%,rgba(0,0,0,0) 0,rgba(0,0,0,0) 74%,rgba(30,150,100,.09) 0,rgba(30,150,100,.09) 76%,rgba(30,150,100,.05) 0) 0 0,linear-gradient(90deg,rgba(30,150,100,.09) 2%,rgba(30,150,100,.05) 0,rgba(30,150,100,.05) 98%,rgba(30,150,100,.09) 0) 0 0;background-size:46px 68px;color:var(--text)}
body.theme-mint a{color:#159a63}body.theme-mint a:hover,body.theme-mint a:focus{color:#205338}
body.theme-mint .navbar.navbar-default{background:rgba(255,255,255,.92);border:0;border-bottom:1px solid rgba(30,150,100,.18);box-shadow:0 14px 34px rgba(30,150,100,.14);backdrop-filter:blur(10px)}
body.theme-mint .navbar-brand{color:#16412a!important}body.theme-mint .navbar-brand:before{color:#16412a}
body.theme-mint .navbar-default .navbar-nav>li>a{color:#16412a!important}body.theme-mint .navbar-default .navbar-nav>li>a i{color:#547f66}
body.theme-mint .navbar-default .navbar-nav>li.active>a,body.theme-mint .navbar-default .navbar-nav>li>a:hover,body.theme-mint .navbar-default .navbar-nav>li>a:focus{background:rgba(30,150,100,.15)!important;color:#16412a!important}
body.theme-mint .navbar-default .navbar-nav>li.active>a i,body.theme-mint .navbar-default .navbar-nav>li>a:hover i{color:#16412a}
body.theme-mint .navbar-toggle .icon-bar{background:#16412a}
body.theme-mint .dropdown-menu{background:#ffffff;border:1px solid var(--line);box-shadow:var(--shadow)}body.theme-mint .dropdown-menu>li>a{color:#16412a!important}body.theme-mint .dropdown-menu>li>a:hover,body.theme-mint .dropdown-menu>li>a:focus{background:#cfebda!important;color:#16412a!important}
body.theme-mint .well,body.theme-mint .panel{border:1px solid var(--line);background:rgba(255,255,255,.92);box-shadow:var(--shadow)}
body.theme-mint .well.bs-component h2{color:#159a63}
body.theme-mint .panel-heading{background:#e7f6ed!important;border-bottom:1px solid var(--line)!important;color:#159a63!important}
body.theme-mint .panel-footer,body.theme-mint .tab-content,body.theme-mint .list-group-item{background:#ffffff;border-color:var(--line);color:#205338}
body.theme-mint .panel-title,body.theme-mint .panel-title i{color:#159a63}
body.theme-mint .table{background:transparent}
body.theme-mint .table>thead>tr>th{background:#ddf2e5!important;border-bottom:1px solid rgba(30,150,100,.22)!important;color:#0e2c1b}
body.theme-mint .table>tbody>tr>td{border-top:1px solid rgba(30,150,100,.15)!important;color:#16412a}
body.theme-mint .table-striped>tbody>tr:nth-of-type(odd){background:rgba(30,150,100,.05)}body.theme-mint .table-hover>tbody>tr:hover{background:rgba(30,150,100,.11)}
body.theme-mint .table-bordered,body.theme-mint .table-bordered>tbody>tr>td,body.theme-mint .table-bordered>thead>tr>th{border-color:rgba(30,150,100,.18)!important}
body.theme-mint .filelist td a{color:#159a63}body.theme-mint .filelist .fa-fw{color:#547f66}
body.theme-mint .file-action{background:rgba(30,150,100,.15);color:#159a63!important}body.theme-mint .file-action-view{background:rgba(30,150,100,.11);color:#205338!important}body.theme-mint .file-action-edit{background:rgba(30,150,100,.18);color:#16412a!important}body.theme-mint .file-action:hover{background:#22b573;color:#0e2c1b!important}
body.theme-mint .file-type-badge{background:rgba(30,150,100,.16);color:#16412a}body.theme-mint .filelist-summary{color:#547f66}
body.theme-mint .form-control,body.theme-mint .searchbox .form-control{background:#ffffff;border-color:rgba(30,150,100,.22);color:#0e2c1b}
body.theme-mint .form-control::placeholder{color:#1fa568}
body.theme-mint .form-control:focus{border-color:rgba(31,165,104,.55);box-shadow:0 0 0 4px rgba(30,150,100,.18)}
body.theme-mint .input-group-addon{background:#e7f6ed;border-color:rgba(30,150,100,.22);color:#6a9479}
body.theme-mint #upload_frame .checkbox label{color:#16412a}
body.theme-mint #upload_frame .checkbox input[type="checkbox"]{accent-color:#22b573}
body.theme-mint #fileInput #pwd,body.theme-mint #fileInput #storage_select{background:#ffffff!important;border-color:rgba(30,150,100,.22)!important;color:#0e2c1b!important;-webkit-text-fill-color:#0e2c1b}
body.theme-mint #fileInput #pwd::placeholder{color:#1fa568!important}
body.theme-mint #fileInput #pwd:focus,body.theme-mint #fileInput #storage_select:focus{background:#ffffff!important;border-color:rgba(31,165,104,.55)!important;box-shadow:0 0 0 4px rgba(30,150,100,.18)!important}
body.theme-mint #fileInput .help-block{color:#6a9479!important}
body.theme-mint #upload_frame .checkbox .checkbox-material .check{border-color:#22b573!important;background:#ffffff!important}
body.theme-mint #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:#22b573!important;border-color:#22b573!important}
body.theme-mint #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check:before{color:#ffffff!important}
body.theme-mint .btn-raised.btn-primary,body.theme-mint .btn-primary{background:#22b573!important;color:#ffffff!important;border-color:#22b573!important}
body.theme-mint .btn-raised.btn-primary:hover,body.theme-mint .btn-primary:hover{background:#17945c!important;color:#ffffff!important}
body.theme-mint .btn-raised.btn-info,body.theme-mint .btn-info{background:#a5d5b8!important;color:#16412a!important;border:1px solid rgba(30,150,100,.26)}
body.theme-mint .btn-raised.btn-danger,body.theme-mint .btn-danger{background:var(--danger)!important;color:#16412a!important}
body.theme-mint .btn-default{background:#ddf2e5!important;border:1px solid rgba(30,150,100,.22)!important;color:#16412a!important}
body.theme-mint .pagination>li>a,body.theme-mint .pagination>li>span{background:#ffffff;border:1px solid rgba(30,150,100,.22);color:#547f66}
body.theme-mint .pagination>li>a:hover,body.theme-mint .pagination>.active>a,body.theme-mint .pagination>.active>a:hover{background:#22b573;color:#ffffff;border-color:#22b573}
body.theme-mint .pagination>.disabled>a,body.theme-mint .pagination>.disabled>a:hover{background:#ffffff;color:#88ad95;border-color:rgba(30,150,100,.15)}
body.theme-mint .nav-tabs{background:#ffffff;border-bottom:1px solid var(--line)}body.theme-mint .nav-tabs>li>a,body.theme-mint .nav-tabs>li>a:focus,body.theme-mint .nav-tabs>li>a:hover{color:#205338!important}
body.theme-mint .nav-tabs>li.active{background:rgba(30,150,100,.13);border-bottom-color:#16412a}body.theme-mint .nav-tabs>li.active>a{color:#16412a!important}
body.theme-mint .view{background:#ffffff;border-color:var(--line)}body.theme-mint .tubiao{background:#cfebda;color:#16412a}
body.theme-mint .elsetext,body.theme-mint .filename{color:#547f66}body.theme-mint .elsetext p:first-child{color:#16412a}
body.theme-mint .image_view,body.theme-mint .videoplayer{background:#f8fdfa}
body.theme-mint .fileinfo-table{background:#ffffff}body.theme-mint .fileinfo-table th{background:#cfebda;color:#0e2c1b}
body.theme-mint .progress{background:#bae0c9}body.theme-mint .progress-bar{background:linear-gradient(90deg,#22b573,#547f66)}
body.theme-mint #app .infobox{border-color:rgba(30,150,100,.18);background:#ffffff!important;box-shadow:var(--shadow)}body.theme-mint #app .infobox:hover{border-color:rgba(30,150,100,.34);box-shadow:0 24px 64px rgba(30,150,100,.14)}
body.theme-mint #uploadTitle{color:#159a63!important}body.theme-mint .editor-toolbar{background:#e7f6ed;border-color:var(--line)}
body.theme-mint #file_content{background:#f8fdfa!important;color:#0e2c1b!important;border-color:rgba(30,150,100,.18)!important}
body.theme-mint .footer,body.theme-mint .footer .text-muted{color:#6a9479}
body.theme-mint .searchbox input.form-control[type="search"]{background:#ffffff!important;border-color:rgba(30,150,100,.22)!important;color:#0e2c1b!important;-webkit-text-fill-color:#0e2c1b}
body.theme-mint .searchbox input.form-control[type="search"]::placeholder{color:#1fa568}
body.theme-mint .searchbox input.form-control[type="search"]:focus{background:#ffffff!important;border-color:rgba(31,165,104,.55)!important;box-shadow:0 0 0 4px rgba(30,150,100,.18)!important}
body.theme-mint .searchbox .btn{background:#ddf2e5!important;border:1px solid rgba(30,150,100,.22)!important;color:#16412a!important}
body.theme-mint .searchbox .btn:hover,body.theme-mint .searchbox .btn:focus{background:#22b573!important;color:#ffffff!important}
body.theme-mint .mpimg-link-band{--gg-ad-bg:rgba(255,255,255,.95);--gg-ad-border:rgba(30,150,100,.18);--gg-ad-shadow:0 16px 40px rgba(30,150,100,.14)}
body.theme-mint .mpimg-link-grid .dh{border-color:rgba(30,150,100,.22);box-shadow:none}
@media (max-width:767px){body.theme-mint{background-color:#f0faf4}body.theme-mint .navbar-collapse{background:#ffffff;border-top:1px solid rgba(30,150,100,.18)}body.theme-mint .well,body.theme-mint .panel{border-radius:14px;box-shadow:none}}
body.theme-mint .tab-content .input-group .form-control[readonly]{background:#ffffff!important;border-color:rgba(30,150,100,.22)!important;color:#0e2c1b!important;-webkit-text-fill-color:#0e2c1b}
body.theme-mint .tab-content .input-group .form-control[readonly]:focus{background:#ffffff!important;border-color:rgba(31,165,104,.55)!important;box-shadow:0 0 0 4px rgba(30,150,100,.18)!important}
body.theme-mint .tab-content .input-group-btn .copy-btn{background:#ddf2e5!important;border-color:rgba(30,150,100,.22)!important;color:#16412a!important}
body.theme-mint .tab-content .input-group-btn .copy-btn:hover,body.theme-mint .tab-content .input-group-btn .copy-btn:focus{background:#bae0c9!important;color:#16412a!important}
body.theme-mint .tab-content .form-group .control-label{color:#547f66}
body.theme-mint:before{content:"";position:fixed;inset:78px 0 0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 16% 6%,rgba(30,150,100,.10),transparent 26%),radial-gradient(circle at 88% 62%,rgba(30,150,100,.07),transparent 30%)}
body.theme-mint .well.bs-component h2{background:linear-gradient(90deg,#22b573,#106b41);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:30px;font-weight:800;letter-spacing:.01em}
body.theme-mint .well.bs-component h2:after{content:"";display:block;width:84px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#22b573,#106b41)}
body.theme-mint .well,body.theme-mint .panel{border-radius:18px;box-shadow:0 18px 44px rgba(30,150,100,.10)}
body.theme-mint .navbar.navbar-default{box-shadow:0 10px 30px rgba(30,150,100,.08)}
body.theme-mint .btn-raised.btn-primary,body.theme-mint .btn-primary{background:linear-gradient(135deg,#22b573,#17945c)!important;border-color:transparent!important;box-shadow:0 8px 20px rgba(30,150,100,.22)!important}
body.theme-mint .btn-raised.btn-primary:hover,body.theme-mint .btn-primary:hover{background:linear-gradient(135deg,#1fa568,#17945c)!important;box-shadow:0 10px 26px rgba(30,150,100,.3)!important}
body.theme-mint .file-type-badge{border-radius:999px;font-weight:600}
body.theme-mint .file-action{border-radius:999px}
body.theme-mint .table>thead>tr>th{letter-spacing:.02em;font-weight:700}
body.theme-mint .pagination>li>a{border-radius:10px;margin:0 3px}
body.theme-mint .filelist-footer{border-radius:14px}

/* ===== 落日熔金（毛玻璃）===== */
body.theme-sunset .navbar-default .navbar-toggle{background-color:rgba(255,255,255,0.12)!important;border-color:rgba(255,255,255,0.22)!important}
body.theme-sunset .navbar-default .navbar-toggle .icon-bar{background:#fff3ea!important}
body.theme-sunset .navbar-default .navbar-toggle:hover,body.theme-sunset .navbar-default .navbar-toggle:focus{background-color:rgba(255,255,255,0.18)!important;border-color:#ffb057!important;box-shadow:0 0 0 3px rgba(255,176,87,.14)!important}
body.theme-sunset{--page-bg:#4a1136;--surface:rgba(255,255,255,0.1);--surface-soft:rgba(255,255,255,0.13);--text:#fff3ea;--muted:#e8bfae;--line:rgba(255,255,255,0.18);--primary:#ffb057;--primary-dark:#ff6b9d;--accent:#ff6b9d;--danger:#ff7b8a;--shadow:0 28px 72px rgba(60,10,40,.32);background:radial-gradient(circle at 14% 8%,rgba(255,176,87,.3),transparent 33%),radial-gradient(circle at 84% 60%,rgba(255,77,148,.32),transparent 38%),linear-gradient(135deg,#5a1030 0,#96241f 48%,#c2410c 100%);color:var(--text)}
body.theme-sunset a{color:#ffc98a}
body.theme-sunset a:hover,body.theme-sunset a:focus{color:#ffb3cd}
body.theme-sunset .navbar.navbar-default{background:rgba(61,15,46,.72);border:0;border-bottom:1px solid rgba(255,255,255,0.16);box-shadow:0 14px 40px rgba(60,10,40,.24);backdrop-filter:blur(14px)}
body.theme-sunset .navbar-brand{color:#fffaf5!important;text-shadow:0 8px 24px rgba(255,176,87,.22)}
body.theme-sunset .navbar-brand:before{color:#ffb057}
body.theme-sunset .navbar-default .navbar-nav>li>a{color:#ffe7d6!important}
body.theme-sunset .navbar-default .navbar-nav>li>a i{color:#ffdcc6}
body.theme-sunset .navbar-default .navbar-nav>li.active>a,body.theme-sunset .navbar-default .navbar-nav>li>a:hover,body.theme-sunset .navbar-default .navbar-nav>li>a:focus{background:linear-gradient(135deg,rgba(255,176,87,.24),rgba(184,114,255,.26))!important;color:#ffffff!important;box-shadow:0 14px 32px rgba(255,107,157,.22)}
body.theme-sunset .dropdown-menu{background:rgba(61,15,46,.88);border:1px solid rgba(255,255,255,0.18);box-shadow:var(--shadow);backdrop-filter:blur(14px)}
body.theme-sunset .dropdown-menu>li>a{color:#fff3ea!important}
body.theme-sunset .dropdown-menu>li>a:hover,body.theme-sunset .dropdown-menu>li>a:focus{background:rgba(255,255,255,0.12)!important;color:#ffb057!important}
body.theme-sunset .well,body.theme-sunset .panel{border:1px solid rgba(255,255,255,0.2);background:rgba(255,255,255,0.1);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
body.theme-sunset .well.bs-component{padding:34px}
body.theme-sunset .well.bs-component h2{display:block;margin-bottom:24px;background:linear-gradient(90deg,#ffb057,#fff3ea 52%,#ffb3cd);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:34px;font-weight:900;text-shadow:none}
body.theme-sunset .well.bs-component h2:after{content:"";display:block;width:92px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#ffb057,#ff6b9d)}
body.theme-sunset .panel-heading{background:rgba(255,255,255,0.08)!important;border-bottom:1px solid rgba(255,255,255,0.18)!important;color:#ffffff!important}
body.theme-sunset .panel-footer,body.theme-sunset .tab-content,body.theme-sunset .list-group-item{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.16);color:#ffdcc6}
body.theme-sunset #fileInput.infobox{background:rgba(255,255,255,0.1)!important;border:1px solid rgba(255,255,255,0.22)!important;box-shadow:0 22px 56px rgba(60,10,40,.24)!important;backdrop-filter:blur(18px)}
body.theme-sunset #fileInput.infobox:hover{border-color:rgba(126,238,255,.55)!important;box-shadow:0 24px 64px rgba(60,10,40,.3)!important}
body.theme-sunset #fileInput #uploadTitle{color:#ffffff!important}
body.theme-sunset #fileInput .checkbox label,body.theme-sunset #fileInput .help-block{color:#ffdcc6!important}
body.theme-sunset #fileInput #pwd,body.theme-sunset #fileInput #storage_select{background:rgba(56,13,42,.38)!important;border-color:rgba(255,255,255,0.24)!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff}
body.theme-sunset .table{background:transparent}
body.theme-sunset .table>thead>tr>th{height:52px;background:rgba(255,255,255,0.11)!important;border-bottom:1px solid rgba(255,255,255,0.18)!important;color:#ffffff}
body.theme-sunset .table>tbody>tr>td{border-top:1px solid rgba(255,255,255,0.12)!important;color:#ffe7d6}
body.theme-sunset .table-striped>tbody>tr:nth-of-type(odd){background:rgba(255,255,255,0.025)}
body.theme-sunset .table-hover>tbody>tr:hover{background:rgba(255,255,255,0.08)}
body.theme-sunset .filelist td a{color:#ffd9a8}
body.theme-sunset .filelist .fa-fw{color:#ffd9a8}
body.theme-sunset .file-action{background:rgba(255,255,255,0.12);color:#ffd9a8!important}
body.theme-sunset .file-action-view{background:rgba(255,255,255,0.1);color:#ffb3cd!important}
body.theme-sunset .file-action-edit{background:rgba(184,114,255,.2);color:#ffb3cd!important}
body.theme-sunset .file-action:hover{background:linear-gradient(135deg,#ffb057,#ff6b9d);color:#ffffff!important}
body.theme-sunset .file-type-badge{background:rgba(255,255,255,0.16);color:#ffeacd}
body.theme-sunset .filelist-footer{padding:14px 16px;border:1px solid rgba(255,255,255,0.18);border-radius:14px;background:rgba(255,255,255,0.08);backdrop-filter:blur(14px)}
body.theme-sunset .filelist-summary{color:#ffe7d6}
body.theme-sunset .searchbox .form-control,body.theme-sunset .form-control{background:rgba(56,13,42,.38);border-color:rgba(255,255,255,0.24);color:#ffffff}
body.theme-sunset .form-control::placeholder{color:#e8bfae}
body.theme-sunset .form-control:focus{border-color:#ffc98a;box-shadow:0 0 0 4px rgba(255,176,87,.15)}
body.theme-sunset #upload_frame .checkbox label{color:#fff3ea}
body.theme-sunset #upload_frame .checkbox input[type="checkbox"]{accent-color:#ffc98a}
body.theme-sunset #fileInput #pwd::placeholder{color:#e8bfae!important}
body.theme-sunset #fileInput #pwd:focus,body.theme-sunset #fileInput #storage_select:focus{background:rgba(56,13,42,.46)!important;border-color:#ffc98a!important;box-shadow:0 0 0 4px rgba(255,176,87,.15)!important}
body.theme-sunset #upload_frame .checkbox .checkbox-material .check{border-color:#ffc98a!important;background:rgba(255,255,255,0.08)!important}
body.theme-sunset #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:linear-gradient(135deg,#ffb057,#ff6b9d)!important;border-color:#ffc98a!important}
body.theme-sunset .btn-raised.btn-primary,body.theme-sunset .btn-primary{background:linear-gradient(135deg,#ffb057,#ff6b9d)!important;color:#ffffff!important}
body.theme-sunset .btn-default{background:rgba(255,255,255,0.12)!important;border:1px solid rgba(255,255,255,0.18)!important;color:#fff3ea!important}
body.theme-sunset .pagination>li>a,body.theme-sunset .pagination>li>span{background:rgba(255,255,255,0.09);border:1px solid rgba(255,255,255,0.16);color:#fff3ea}
body.theme-sunset .pagination>li>a:hover,body.theme-sunset .pagination>.active>a,body.theme-sunset .pagination>.active>a:hover{background:linear-gradient(135deg,#ffb057,#ff6b9d);color:#ffffff;border-color:rgba(255,255,255,0.32)}
body.theme-sunset .pagination>.disabled>a,body.theme-sunset .pagination>.disabled>a:hover{background:rgba(255,255,255,0.08);color:#e8bfae;border-color:rgba(255,255,255,0.13)}
body.theme-sunset .view{background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.18)}
body.theme-sunset .tubiao{background:rgba(255,255,255,0.12);color:#ffc98a}
body.theme-sunset .elsetext,body.theme-sunset .filename{color:#ffe7d6}
body.theme-sunset .elsetext p:first-child{color:#ffffff}
body.theme-sunset .image_view,body.theme-sunset .videoplayer{background:#380d2a}
body.theme-sunset .footer,body.theme-sunset .footer .text-muted{color:#e8bfae}
@media (max-width:767px){body.theme-sunset{background:linear-gradient(135deg,#5a1030,#c2410c)}body.theme-sunset .navbar-collapse{background:rgba(61,15,46,.94);border-top:1px solid rgba(255,255,255,0.16)}body.theme-sunset .well.bs-component{padding:22px}}
body.theme-sunset .searchbox input.form-control[type="search"]{background:rgba(56,13,42,.38)!important;border-color:rgba(255,255,255,0.24)!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff}
body.theme-sunset .searchbox input.form-control[type="search"]::placeholder{color:#e8bfae}
body.theme-sunset .searchbox input.form-control[type="search"]:focus{background:rgba(56,13,42,.46)!important;border-color:#ffc98a!important;box-shadow:0 0 0 4px rgba(255,176,87,.15)!important}
body.theme-sunset .searchbox .btn{background:rgba(255,255,255,0.12)!important;border:1px solid rgba(255,255,255,0.18)!important;color:#fff3ea!important}
body.theme-sunset .searchbox .btn:hover,body.theme-sunset .searchbox .btn:focus{background:linear-gradient(135deg,#ffb057,#ff6b9d)!important;color:#ffffff!important}
body.theme-sunset .mpimg-link-band{--gg-ad-bg:rgba(61,15,46,.54);--gg-ad-border:rgba(255,255,255,0.2);--gg-ad-shadow:0 14px 40px rgba(60,10,40,.18);backdrop-filter:blur(14px)}
body.theme-sunset .mpimg-link-grid .dh{border-color:rgba(255,255,255,0.28);box-shadow:0 12px 28px rgba(60,10,40,.18)}
body.theme-sunset .tab-content .input-group .form-control[readonly]{background:rgba(56,13,42,.38)!important;border-color:rgba(255,255,255,0.24)!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff}
body.theme-sunset .tab-content .input-group .form-control[readonly]:focus{background:rgba(56,13,42,.46)!important;border-color:#ffc98a!important;box-shadow:0 0 0 4px rgba(255,176,87,.15)!important}
body.theme-sunset .tab-content .input-group-btn .copy-btn{background:rgba(255,255,255,0.12)!important;border-color:rgba(255,255,255,0.18)!important;color:#fff3ea!important}
body.theme-sunset .tab-content .input-group-btn .copy-btn:hover,body.theme-sunset .tab-content .input-group-btn .copy-btn:focus{background:linear-gradient(135deg,#ffb057,#ff6b9d)!important;border-color:transparent!important;color:#ffffff!important}
body.theme-sunset .tab-content .form-group .control-label{color:#ffdcc6}
body.theme-sunset .nav-tabs{background:rgba(255,255,255,0.08)!important;border-bottom:1px solid rgba(255,255,255,0.16)!important}
body.theme-sunset .nav-tabs>li>a,body.theme-sunset .nav-tabs>li>a:focus,body.theme-sunset .nav-tabs>li>a:hover{background:transparent!important;color:#ffdcc6!important}
body.theme-sunset .nav-tabs>li.active{background:rgba(255,255,255,0.12)!important;border-bottom:2px solid #ffc98a!important}
body.theme-sunset .nav-tabs>li.active>a{background:transparent!important;color:#ffffff!important}
body.theme-sunset .tab-content{background:rgba(255,255,255,0.08)!important;border-color:rgba(255,255,255,0.16)!important;color:#ffdcc6!important}
body.theme-sunset .fileinfo-table{background:transparent!important;border-color:rgba(255,255,255,0.18)!important}
body.theme-sunset .fileinfo-table th{background:rgba(255,255,255,0.14)!important;border:1px solid rgba(255,255,255,0.2)!important;color:#ffffff!important}
body.theme-sunset .fileinfo-table td{background:rgba(255,255,255,0.06)!important;border:1px solid rgba(255,255,255,0.16)!important;color:#ffe7d6!important}
body.theme-sunset .well,body.theme-sunset .panel{border-radius:22px;backdrop-filter:blur(22px) saturate(1.25);-webkit-backdrop-filter:blur(22px) saturate(1.25);box-shadow:0 30px 80px rgba(60,10,40,.35),inset 0 1px 0 rgba(255,255,255,.28)}
body.theme-sunset .navbar.navbar-default{backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);box-shadow:0 14px 40px rgba(60,10,40,.28),inset 0 -1px 0 rgba(255,255,255,.14)}
body.theme-sunset .well.bs-component h2{background:linear-gradient(92deg,#ffb057,#ff6b9d);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:34px;font-weight:900}
body.theme-sunset .well.bs-component h2:after{content:"";display:block;width:96px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#ffb057,#ff6b9d)}
body.theme-sunset .btn-raised.btn-primary,body.theme-sunset .btn-primary{background:linear-gradient(135deg,#ffb057,#ff6b9d)!important;border:0!important;box-shadow:0 12px 30px rgba(255,176,87,.32)!important}
body.theme-sunset .btn-raised.btn-primary:hover,body.theme-sunset .btn-primary:hover{box-shadow:0 16px 38px rgba(255,176,87,.44)!important;filter:brightness(1.06)}
body.theme-sunset .file-type-badge{border-radius:999px;backdrop-filter:blur(6px)}
body.theme-sunset .file-action{border-radius:999px;backdrop-filter:blur(6px)}
body.theme-sunset .filelist-footer{border-radius:18px;backdrop-filter:blur(16px)}
body.theme-sunset .table>thead>tr>th{letter-spacing:.03em;font-weight:700}
body.theme-sunset .pagination>li>a{border-radius:12px;margin:0 3px;backdrop-filter:blur(8px)}
body.theme-sunset #fileInput.infobox{border-radius:22px;backdrop-filter:blur(20px) saturate(1.2)}

/* ===== 深海玻璃（毛玻璃）===== */
body.theme-abyss .navbar-default .navbar-toggle{background-color:rgba(255,255,255,0.12)!important;border-color:rgba(255,255,255,0.22)!important}
body.theme-abyss .navbar-default .navbar-toggle .icon-bar{background:#e8fbff!important}
body.theme-abyss .navbar-default .navbar-toggle:hover,body.theme-abyss .navbar-default .navbar-toggle:focus{background-color:rgba(255,255,255,0.18)!important;border-color:#38e0d8!important;box-shadow:0 0 0 3px rgba(56,224,216,.14)!important}
body.theme-abyss{--page-bg:#07293a;--surface:rgba(255,255,255,0.1);--surface-soft:rgba(255,255,255,0.13);--text:#e8fbff;--muted:#96c6d2;--line:rgba(255,255,255,0.18);--primary:#38e0d8;--primary-dark:#7dd3fc;--accent:#7dd3fc;--danger:#fb7185;--shadow:0 28px 72px rgba(2,24,36,.32);background:radial-gradient(circle at 16% 10%,rgba(56,224,216,.26),transparent 32%),radial-gradient(circle at 82% 64%,rgba(125,211,252,.24),transparent 36%),linear-gradient(135deg,#062a3d 0,#0b4152 48%,#0a5f63 100%);color:var(--text)}
body.theme-abyss a{color:#7fefe8}
body.theme-abyss a:hover,body.theme-abyss a:focus{color:#bae6fd}
body.theme-abyss .navbar.navbar-default{background:rgba(6,36,52,.72);border:0;border-bottom:1px solid rgba(255,255,255,0.16);box-shadow:0 14px 40px rgba(2,24,36,.24);backdrop-filter:blur(14px)}
body.theme-abyss .navbar-brand{color:#f4feff!important;text-shadow:0 8px 24px rgba(56,224,216,.22)}
body.theme-abyss .navbar-brand:before{color:#38e0d8}
body.theme-abyss .navbar-default .navbar-nav>li>a{color:#d3f4fb!important}
body.theme-abyss .navbar-default .navbar-nav>li>a i{color:#c4eef7}
body.theme-abyss .navbar-default .navbar-nav>li.active>a,body.theme-abyss .navbar-default .navbar-nav>li>a:hover,body.theme-abyss .navbar-default .navbar-nav>li>a:focus{background:linear-gradient(135deg,rgba(56,224,216,.24),rgba(184,114,255,.26))!important;color:#ffffff!important;box-shadow:0 14px 32px rgba(125,211,252,.22)}
body.theme-abyss .dropdown-menu{background:rgba(6,36,52,.88);border:1px solid rgba(255,255,255,0.18);box-shadow:var(--shadow);backdrop-filter:blur(14px)}
body.theme-abyss .dropdown-menu>li>a{color:#e8fbff!important}
body.theme-abyss .dropdown-menu>li>a:hover,body.theme-abyss .dropdown-menu>li>a:focus{background:rgba(255,255,255,0.12)!important;color:#38e0d8!important}
body.theme-abyss .well,body.theme-abyss .panel{border:1px solid rgba(255,255,255,0.2);background:rgba(255,255,255,0.1);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
body.theme-abyss .well.bs-component{padding:34px}
body.theme-abyss .well.bs-component h2{display:block;margin-bottom:24px;background:linear-gradient(90deg,#38e0d8,#e8fbff 52%,#bae6fd);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:34px;font-weight:900;text-shadow:none}
body.theme-abyss .well.bs-component h2:after{content:"";display:block;width:92px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#38e0d8,#7dd3fc)}
body.theme-abyss .panel-heading{background:rgba(255,255,255,0.08)!important;border-bottom:1px solid rgba(255,255,255,0.18)!important;color:#ffffff!important}
body.theme-abyss .panel-footer,body.theme-abyss .tab-content,body.theme-abyss .list-group-item{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.16);color:#c4eef7}
body.theme-abyss #fileInput.infobox{background:rgba(255,255,255,0.1)!important;border:1px solid rgba(255,255,255,0.22)!important;box-shadow:0 22px 56px rgba(2,24,36,.24)!important;backdrop-filter:blur(18px)}
body.theme-abyss #fileInput.infobox:hover{border-color:rgba(126,238,255,.55)!important;box-shadow:0 24px 64px rgba(2,24,36,.3)!important}
body.theme-abyss #fileInput #uploadTitle{color:#ffffff!important}
body.theme-abyss #fileInput .checkbox label,body.theme-abyss #fileInput .help-block{color:#c4eef7!important}
body.theme-abyss #fileInput #pwd,body.theme-abyss #fileInput #storage_select{background:rgba(5,32,46,.38)!important;border-color:rgba(255,255,255,0.24)!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff}
body.theme-abyss .table{background:transparent}
body.theme-abyss .table>thead>tr>th{height:52px;background:rgba(255,255,255,0.11)!important;border-bottom:1px solid rgba(255,255,255,0.18)!important;color:#ffffff}
body.theme-abyss .table>tbody>tr>td{border-top:1px solid rgba(255,255,255,0.12)!important;color:#d3f4fb}
body.theme-abyss .table-striped>tbody>tr:nth-of-type(odd){background:rgba(255,255,255,0.025)}
body.theme-abyss .table-hover>tbody>tr:hover{background:rgba(255,255,255,0.08)}
body.theme-abyss .filelist td a{color:#a6f4ef}
body.theme-abyss .filelist .fa-fw{color:#a6f4ef}
body.theme-abyss .file-action{background:rgba(255,255,255,0.12);color:#a6f4ef!important}
body.theme-abyss .file-action-view{background:rgba(255,255,255,0.1);color:#bae6fd!important}
body.theme-abyss .file-action-edit{background:rgba(184,114,255,.2);color:#bae6fd!important}
body.theme-abyss .file-action:hover{background:linear-gradient(135deg,#38e0d8,#7dd3fc);color:#ffffff!important}
body.theme-abyss .file-type-badge{background:rgba(255,255,255,0.16);color:#d5fbf8}
body.theme-abyss .filelist-footer{padding:14px 16px;border:1px solid rgba(255,255,255,0.18);border-radius:14px;background:rgba(255,255,255,0.08);backdrop-filter:blur(14px)}
body.theme-abyss .filelist-summary{color:#d3f4fb}
body.theme-abyss .searchbox .form-control,body.theme-abyss .form-control{background:rgba(5,32,46,.38);border-color:rgba(255,255,255,0.24);color:#ffffff}
body.theme-abyss .form-control::placeholder{color:#96c6d2}
body.theme-abyss .form-control:focus{border-color:#7fefe8;box-shadow:0 0 0 4px rgba(56,224,216,.15)}
body.theme-abyss #upload_frame .checkbox label{color:#e8fbff}
body.theme-abyss #upload_frame .checkbox input[type="checkbox"]{accent-color:#7fefe8}
body.theme-abyss #fileInput #pwd::placeholder{color:#96c6d2!important}
body.theme-abyss #fileInput #pwd:focus,body.theme-abyss #fileInput #storage_select:focus{background:rgba(5,32,46,.46)!important;border-color:#7fefe8!important;box-shadow:0 0 0 4px rgba(56,224,216,.15)!important}
body.theme-abyss #upload_frame .checkbox .checkbox-material .check{border-color:#7fefe8!important;background:rgba(255,255,255,0.08)!important}
body.theme-abyss #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:linear-gradient(135deg,#38e0d8,#7dd3fc)!important;border-color:#7fefe8!important}
body.theme-abyss .btn-raised.btn-primary,body.theme-abyss .btn-primary{background:linear-gradient(135deg,#38e0d8,#7dd3fc)!important;color:#ffffff!important}
body.theme-abyss .btn-default{background:rgba(255,255,255,0.12)!important;border:1px solid rgba(255,255,255,0.18)!important;color:#e8fbff!important}
body.theme-abyss .pagination>li>a,body.theme-abyss .pagination>li>span{background:rgba(255,255,255,0.09);border:1px solid rgba(255,255,255,0.16);color:#e8fbff}
body.theme-abyss .pagination>li>a:hover,body.theme-abyss .pagination>.active>a,body.theme-abyss .pagination>.active>a:hover{background:linear-gradient(135deg,#38e0d8,#7dd3fc);color:#ffffff;border-color:rgba(255,255,255,0.32)}
body.theme-abyss .pagination>.disabled>a,body.theme-abyss .pagination>.disabled>a:hover{background:rgba(255,255,255,0.08);color:#96c6d2;border-color:rgba(255,255,255,0.13)}
body.theme-abyss .view{background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.18)}
body.theme-abyss .tubiao{background:rgba(255,255,255,0.12);color:#7fefe8}
body.theme-abyss .elsetext,body.theme-abyss .filename{color:#d3f4fb}
body.theme-abyss .elsetext p:first-child{color:#ffffff}
body.theme-abyss .image_view,body.theme-abyss .videoplayer{background:#05202e}
body.theme-abyss .footer,body.theme-abyss .footer .text-muted{color:#96c6d2}
@media (max-width:767px){body.theme-abyss{background:linear-gradient(135deg,#062a3d,#0a5f63)}body.theme-abyss .navbar-collapse{background:rgba(6,36,52,.94);border-top:1px solid rgba(255,255,255,0.16)}body.theme-abyss .well.bs-component{padding:22px}}
body.theme-abyss .searchbox input.form-control[type="search"]{background:rgba(5,32,46,.38)!important;border-color:rgba(255,255,255,0.24)!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff}
body.theme-abyss .searchbox input.form-control[type="search"]::placeholder{color:#96c6d2}
body.theme-abyss .searchbox input.form-control[type="search"]:focus{background:rgba(5,32,46,.46)!important;border-color:#7fefe8!important;box-shadow:0 0 0 4px rgba(56,224,216,.15)!important}
body.theme-abyss .searchbox .btn{background:rgba(255,255,255,0.12)!important;border:1px solid rgba(255,255,255,0.18)!important;color:#e8fbff!important}
body.theme-abyss .searchbox .btn:hover,body.theme-abyss .searchbox .btn:focus{background:linear-gradient(135deg,#38e0d8,#7dd3fc)!important;color:#ffffff!important}
body.theme-abyss .mpimg-link-band{--gg-ad-bg:rgba(6,36,52,.54);--gg-ad-border:rgba(255,255,255,0.2);--gg-ad-shadow:0 14px 40px rgba(2,24,36,.18);backdrop-filter:blur(14px)}
body.theme-abyss .mpimg-link-grid .dh{border-color:rgba(255,255,255,0.28);box-shadow:0 12px 28px rgba(2,24,36,.18)}
body.theme-abyss .tab-content .input-group .form-control[readonly]{background:rgba(5,32,46,.38)!important;border-color:rgba(255,255,255,0.24)!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff}
body.theme-abyss .tab-content .input-group .form-control[readonly]:focus{background:rgba(5,32,46,.46)!important;border-color:#7fefe8!important;box-shadow:0 0 0 4px rgba(56,224,216,.15)!important}
body.theme-abyss .tab-content .input-group-btn .copy-btn{background:rgba(255,255,255,0.12)!important;border-color:rgba(255,255,255,0.18)!important;color:#e8fbff!important}
body.theme-abyss .tab-content .input-group-btn .copy-btn:hover,body.theme-abyss .tab-content .input-group-btn .copy-btn:focus{background:linear-gradient(135deg,#38e0d8,#7dd3fc)!important;border-color:transparent!important;color:#ffffff!important}
body.theme-abyss .tab-content .form-group .control-label{color:#c4eef7}
body.theme-abyss .nav-tabs{background:rgba(255,255,255,0.08)!important;border-bottom:1px solid rgba(255,255,255,0.16)!important}
body.theme-abyss .nav-tabs>li>a,body.theme-abyss .nav-tabs>li>a:focus,body.theme-abyss .nav-tabs>li>a:hover{background:transparent!important;color:#c4eef7!important}
body.theme-abyss .nav-tabs>li.active{background:rgba(255,255,255,0.12)!important;border-bottom:2px solid #7fefe8!important}
body.theme-abyss .nav-tabs>li.active>a{background:transparent!important;color:#ffffff!important}
body.theme-abyss .tab-content{background:rgba(255,255,255,0.08)!important;border-color:rgba(255,255,255,0.16)!important;color:#c4eef7!important}
body.theme-abyss .fileinfo-table{background:transparent!important;border-color:rgba(255,255,255,0.18)!important}
body.theme-abyss .fileinfo-table th{background:rgba(255,255,255,0.14)!important;border:1px solid rgba(255,255,255,0.2)!important;color:#ffffff!important}
body.theme-abyss .fileinfo-table td{background:rgba(255,255,255,0.06)!important;border:1px solid rgba(255,255,255,0.16)!important;color:#d3f4fb!important}
body.theme-abyss .well,body.theme-abyss .panel{border-radius:22px;backdrop-filter:blur(22px) saturate(1.25);-webkit-backdrop-filter:blur(22px) saturate(1.25);box-shadow:0 30px 80px rgba(2,24,36,.35),inset 0 1px 0 rgba(255,255,255,.28)}
body.theme-abyss .navbar.navbar-default{backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);box-shadow:0 14px 40px rgba(2,24,36,.28),inset 0 -1px 0 rgba(255,255,255,.14)}
body.theme-abyss .well.bs-component h2{background:linear-gradient(92deg,#38e0d8,#7dd3fc);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:34px;font-weight:900}
body.theme-abyss .well.bs-component h2:after{content:"";display:block;width:96px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#38e0d8,#7dd3fc)}
body.theme-abyss .btn-raised.btn-primary,body.theme-abyss .btn-primary{background:linear-gradient(135deg,#38e0d8,#7dd3fc)!important;border:0!important;box-shadow:0 12px 30px rgba(56,224,216,.32)!important}
body.theme-abyss .btn-raised.btn-primary:hover,body.theme-abyss .btn-primary:hover{box-shadow:0 16px 38px rgba(56,224,216,.44)!important;filter:brightness(1.06)}
body.theme-abyss .file-type-badge{border-radius:999px;backdrop-filter:blur(6px)}
body.theme-abyss .file-action{border-radius:999px;backdrop-filter:blur(6px)}
body.theme-abyss .filelist-footer{border-radius:18px;backdrop-filter:blur(16px)}
body.theme-abyss .table>thead>tr>th{letter-spacing:.03em;font-weight:700}
body.theme-abyss .pagination>li>a{border-radius:12px;margin:0 3px;backdrop-filter:blur(8px)}
body.theme-abyss #fileInput.infobox{border-radius:22px;backdrop-filter:blur(20px) saturate(1.2)}

/* ===== 翡翠流光（毛玻璃）===== */
body.theme-emerald .navbar-default .navbar-toggle{background-color:rgba(255,255,255,0.12)!important;border-color:rgba(255,255,255,0.22)!important}
body.theme-emerald .navbar-default .navbar-toggle .icon-bar{background:#eafff3!important}
body.theme-emerald .navbar-default .navbar-toggle:hover,body.theme-emerald .navbar-default .navbar-toggle:focus{background-color:rgba(255,255,255,0.18)!important;border-color:#4ade80!important;box-shadow:0 0 0 3px rgba(74,222,128,.14)!important}
body.theme-emerald{--page-bg:#083826;--surface:rgba(255,255,255,0.1);--surface-soft:rgba(255,255,255,0.13);--text:#eafff3;--muted:#93c9ac;--line:rgba(255,255,255,0.18);--primary:#4ade80;--primary-dark:#5eead4;--accent:#5eead4;--danger:#fb7185;--shadow:0 28px 72px rgba(2,34,20,.32);background:radial-gradient(circle at 15% 9%,rgba(74,222,128,.26),transparent 32%),radial-gradient(circle at 85% 62%,rgba(94,234,212,.24),transparent 36%),linear-gradient(135deg,#07361f 0,#0b5137 48%,#0f6b57 100%);color:var(--text)}
body.theme-emerald a{color:#86efac}
body.theme-emerald a:hover,body.theme-emerald a:focus{color:#a7f3e4}
body.theme-emerald .navbar.navbar-default{background:rgba(7,48,31,.72);border:0;border-bottom:1px solid rgba(255,255,255,0.16);box-shadow:0 14px 40px rgba(2,34,20,.24);backdrop-filter:blur(14px)}
body.theme-emerald .navbar-brand{color:#f5fff9!important;text-shadow:0 8px 24px rgba(74,222,128,.22)}
body.theme-emerald .navbar-brand:before{color:#4ade80}
body.theme-emerald .navbar-default .navbar-nav>li>a{color:#d6fbe6!important}
body.theme-emerald .navbar-default .navbar-nav>li>a i{color:#c8f7db}
body.theme-emerald .navbar-default .navbar-nav>li.active>a,body.theme-emerald .navbar-default .navbar-nav>li>a:hover,body.theme-emerald .navbar-default .navbar-nav>li>a:focus{background:linear-gradient(135deg,rgba(74,222,128,.24),rgba(184,114,255,.26))!important;color:#ffffff!important;box-shadow:0 14px 32px rgba(94,234,212,.22)}
body.theme-emerald .dropdown-menu{background:rgba(7,48,31,.88);border:1px solid rgba(255,255,255,0.18);box-shadow:var(--shadow);backdrop-filter:blur(14px)}
body.theme-emerald .dropdown-menu>li>a{color:#eafff3!important}
body.theme-emerald .dropdown-menu>li>a:hover,body.theme-emerald .dropdown-menu>li>a:focus{background:rgba(255,255,255,0.12)!important;color:#4ade80!important}
body.theme-emerald .well,body.theme-emerald .panel{border:1px solid rgba(255,255,255,0.2);background:rgba(255,255,255,0.1);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
body.theme-emerald .well.bs-component{padding:34px}
body.theme-emerald .well.bs-component h2{display:block;margin-bottom:24px;background:linear-gradient(90deg,#4ade80,#eafff3 52%,#a7f3e4);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:34px;font-weight:900;text-shadow:none}
body.theme-emerald .well.bs-component h2:after{content:"";display:block;width:92px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#4ade80,#5eead4)}
body.theme-emerald .panel-heading{background:rgba(255,255,255,0.08)!important;border-bottom:1px solid rgba(255,255,255,0.18)!important;color:#ffffff!important}
body.theme-emerald .panel-footer,body.theme-emerald .tab-content,body.theme-emerald .list-group-item{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.16);color:#c8f7db}
body.theme-emerald #fileInput.infobox{background:rgba(255,255,255,0.1)!important;border:1px solid rgba(255,255,255,0.22)!important;box-shadow:0 22px 56px rgba(2,34,20,.24)!important;backdrop-filter:blur(18px)}
body.theme-emerald #fileInput.infobox:hover{border-color:rgba(126,238,255,.55)!important;box-shadow:0 24px 64px rgba(2,34,20,.3)!important}
body.theme-emerald #fileInput #uploadTitle{color:#ffffff!important}
body.theme-emerald #fileInput .checkbox label,body.theme-emerald #fileInput .help-block{color:#c8f7db!important}
body.theme-emerald #fileInput #pwd,body.theme-emerald #fileInput #storage_select{background:rgba(6,42,27,.38)!important;border-color:rgba(255,255,255,0.24)!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff}
body.theme-emerald .table{background:transparent}
body.theme-emerald .table>thead>tr>th{height:52px;background:rgba(255,255,255,0.11)!important;border-bottom:1px solid rgba(255,255,255,0.18)!important;color:#ffffff}
body.theme-emerald .table>tbody>tr>td{border-top:1px solid rgba(255,255,255,0.12)!important;color:#d6fbe6}
body.theme-emerald .table-striped>tbody>tr:nth-of-type(odd){background:rgba(255,255,255,0.025)}
body.theme-emerald .table-hover>tbody>tr:hover{background:rgba(255,255,255,0.08)}
body.theme-emerald .filelist td a{color:#a9f5c4}
body.theme-emerald .filelist .fa-fw{color:#a9f5c4}
body.theme-emerald .file-action{background:rgba(255,255,255,0.12);color:#a9f5c4!important}
body.theme-emerald .file-action-view{background:rgba(255,255,255,0.1);color:#a7f3e4!important}
body.theme-emerald .file-action-edit{background:rgba(184,114,255,.2);color:#a7f3e4!important}
body.theme-emerald .file-action:hover{background:linear-gradient(135deg,#4ade80,#5eead4);color:#ffffff!important}
body.theme-emerald .file-type-badge{background:rgba(255,255,255,0.16);color:#d7fbe4}
body.theme-emerald .filelist-footer{padding:14px 16px;border:1px solid rgba(255,255,255,0.18);border-radius:14px;background:rgba(255,255,255,0.08);backdrop-filter:blur(14px)}
body.theme-emerald .filelist-summary{color:#d6fbe6}
body.theme-emerald .searchbox .form-control,body.theme-emerald .form-control{background:rgba(6,42,27,.38);border-color:rgba(255,255,255,0.24);color:#ffffff}
body.theme-emerald .form-control::placeholder{color:#93c9ac}
body.theme-emerald .form-control:focus{border-color:#86efac;box-shadow:0 0 0 4px rgba(74,222,128,.15)}
body.theme-emerald #upload_frame .checkbox label{color:#eafff3}
body.theme-emerald #upload_frame .checkbox input[type="checkbox"]{accent-color:#86efac}
body.theme-emerald #fileInput #pwd::placeholder{color:#93c9ac!important}
body.theme-emerald #fileInput #pwd:focus,body.theme-emerald #fileInput #storage_select:focus{background:rgba(6,42,27,.46)!important;border-color:#86efac!important;box-shadow:0 0 0 4px rgba(74,222,128,.15)!important}
body.theme-emerald #upload_frame .checkbox .checkbox-material .check{border-color:#86efac!important;background:rgba(255,255,255,0.08)!important}
body.theme-emerald #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:linear-gradient(135deg,#4ade80,#5eead4)!important;border-color:#86efac!important}
body.theme-emerald .btn-raised.btn-primary,body.theme-emerald .btn-primary{background:linear-gradient(135deg,#4ade80,#5eead4)!important;color:#ffffff!important}
body.theme-emerald .btn-default{background:rgba(255,255,255,0.12)!important;border:1px solid rgba(255,255,255,0.18)!important;color:#eafff3!important}
body.theme-emerald .pagination>li>a,body.theme-emerald .pagination>li>span{background:rgba(255,255,255,0.09);border:1px solid rgba(255,255,255,0.16);color:#eafff3}
body.theme-emerald .pagination>li>a:hover,body.theme-emerald .pagination>.active>a,body.theme-emerald .pagination>.active>a:hover{background:linear-gradient(135deg,#4ade80,#5eead4);color:#ffffff;border-color:rgba(255,255,255,0.32)}
body.theme-emerald .pagination>.disabled>a,body.theme-emerald .pagination>.disabled>a:hover{background:rgba(255,255,255,0.08);color:#93c9ac;border-color:rgba(255,255,255,0.13)}
body.theme-emerald .view{background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.18)}
body.theme-emerald .tubiao{background:rgba(255,255,255,0.12);color:#86efac}
body.theme-emerald .elsetext,body.theme-emerald .filename{color:#d6fbe6}
body.theme-emerald .elsetext p:first-child{color:#ffffff}
body.theme-emerald .image_view,body.theme-emerald .videoplayer{background:#062a1b}
body.theme-emerald .footer,body.theme-emerald .footer .text-muted{color:#93c9ac}
@media (max-width:767px){body.theme-emerald{background:linear-gradient(135deg,#07361f,#0f6b57)}body.theme-emerald .navbar-collapse{background:rgba(7,48,31,.94);border-top:1px solid rgba(255,255,255,0.16)}body.theme-emerald .well.bs-component{padding:22px}}
body.theme-emerald .searchbox input.form-control[type="search"]{background:rgba(6,42,27,.38)!important;border-color:rgba(255,255,255,0.24)!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff}
body.theme-emerald .searchbox input.form-control[type="search"]::placeholder{color:#93c9ac}
body.theme-emerald .searchbox input.form-control[type="search"]:focus{background:rgba(6,42,27,.46)!important;border-color:#86efac!important;box-shadow:0 0 0 4px rgba(74,222,128,.15)!important}
body.theme-emerald .searchbox .btn{background:rgba(255,255,255,0.12)!important;border:1px solid rgba(255,255,255,0.18)!important;color:#eafff3!important}
body.theme-emerald .searchbox .btn:hover,body.theme-emerald .searchbox .btn:focus{background:linear-gradient(135deg,#4ade80,#5eead4)!important;color:#ffffff!important}
body.theme-emerald .mpimg-link-band{--gg-ad-bg:rgba(7,48,31,.54);--gg-ad-border:rgba(255,255,255,0.2);--gg-ad-shadow:0 14px 40px rgba(2,34,20,.18);backdrop-filter:blur(14px)}
body.theme-emerald .mpimg-link-grid .dh{border-color:rgba(255,255,255,0.28);box-shadow:0 12px 28px rgba(2,34,20,.18)}
body.theme-emerald .tab-content .input-group .form-control[readonly]{background:rgba(6,42,27,.38)!important;border-color:rgba(255,255,255,0.24)!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff}
body.theme-emerald .tab-content .input-group .form-control[readonly]:focus{background:rgba(6,42,27,.46)!important;border-color:#86efac!important;box-shadow:0 0 0 4px rgba(74,222,128,.15)!important}
body.theme-emerald .tab-content .input-group-btn .copy-btn{background:rgba(255,255,255,0.12)!important;border-color:rgba(255,255,255,0.18)!important;color:#eafff3!important}
body.theme-emerald .tab-content .input-group-btn .copy-btn:hover,body.theme-emerald .tab-content .input-group-btn .copy-btn:focus{background:linear-gradient(135deg,#4ade80,#5eead4)!important;border-color:transparent!important;color:#ffffff!important}
body.theme-emerald .tab-content .form-group .control-label{color:#c8f7db}
body.theme-emerald .nav-tabs{background:rgba(255,255,255,0.08)!important;border-bottom:1px solid rgba(255,255,255,0.16)!important}
body.theme-emerald .nav-tabs>li>a,body.theme-emerald .nav-tabs>li>a:focus,body.theme-emerald .nav-tabs>li>a:hover{background:transparent!important;color:#c8f7db!important}
body.theme-emerald .nav-tabs>li.active{background:rgba(255,255,255,0.12)!important;border-bottom:2px solid #86efac!important}
body.theme-emerald .nav-tabs>li.active>a{background:transparent!important;color:#ffffff!important}
body.theme-emerald .tab-content{background:rgba(255,255,255,0.08)!important;border-color:rgba(255,255,255,0.16)!important;color:#c8f7db!important}
body.theme-emerald .fileinfo-table{background:transparent!important;border-color:rgba(255,255,255,0.18)!important}
body.theme-emerald .fileinfo-table th{background:rgba(255,255,255,0.14)!important;border:1px solid rgba(255,255,255,0.2)!important;color:#ffffff!important}
body.theme-emerald .fileinfo-table td{background:rgba(255,255,255,0.06)!important;border:1px solid rgba(255,255,255,0.16)!important;color:#d6fbe6!important}
body.theme-emerald .well,body.theme-emerald .panel{border-radius:22px;backdrop-filter:blur(22px) saturate(1.25);-webkit-backdrop-filter:blur(22px) saturate(1.25);box-shadow:0 30px 80px rgba(2,34,20,.35),inset 0 1px 0 rgba(255,255,255,.28)}
body.theme-emerald .navbar.navbar-default{backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);box-shadow:0 14px 40px rgba(2,34,20,.28),inset 0 -1px 0 rgba(255,255,255,.14)}
body.theme-emerald .well.bs-component h2{background:linear-gradient(92deg,#4ade80,#5eead4);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:34px;font-weight:900}
body.theme-emerald .well.bs-component h2:after{content:"";display:block;width:96px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#4ade80,#5eead4)}
body.theme-emerald .btn-raised.btn-primary,body.theme-emerald .btn-primary{background:linear-gradient(135deg,#4ade80,#5eead4)!important;border:0!important;box-shadow:0 12px 30px rgba(74,222,128,.32)!important}
body.theme-emerald .btn-raised.btn-primary:hover,body.theme-emerald .btn-primary:hover{box-shadow:0 16px 38px rgba(74,222,128,.44)!important;filter:brightness(1.06)}
body.theme-emerald .file-type-badge{border-radius:999px;backdrop-filter:blur(6px)}
body.theme-emerald .file-action{border-radius:999px;backdrop-filter:blur(6px)}
body.theme-emerald .filelist-footer{border-radius:18px;backdrop-filter:blur(16px)}
body.theme-emerald .table>thead>tr>th{letter-spacing:.03em;font-weight:700}
body.theme-emerald .pagination>li>a{border-radius:12px;margin:0 3px;backdrop-filter:blur(8px)}
body.theme-emerald #fileInput.infobox{border-radius:22px;backdrop-filter:blur(20px) saturate(1.2)}

/* ===== 樱雾玻璃（毛玻璃）===== */
body.theme-sakura .navbar-default .navbar-toggle{background-color:rgba(255,255,255,0.552)!important;border-color:rgba(255,255,255,0.92)!important}
body.theme-sakura .navbar-default .navbar-toggle .icon-bar{background:#3d2030!important}
body.theme-sakura .navbar-default .navbar-toggle:hover,body.theme-sakura .navbar-default .navbar-toggle:focus{background-color:rgba(255,255,255,0.828)!important;border-color:#e0648a!important;box-shadow:0 0 0 3px rgba(224,100,138,.14)!important}
body.theme-sakura{--page-bg:#fdf2f8;--surface:rgba(255,255,255,0.46);--surface-soft:rgba(255,255,255,0.598);--text:#3d2030;--muted:#8a6478;--line:rgba(255,255,255,0.828);--primary:#e0648a;--primary-dark:#8b5cf6;--accent:#8b5cf6;--danger:#d0324f;--shadow:0 28px 72px rgba(190,120,160,.32);background:radial-gradient(circle at 14% 8%,rgba(224,100,138,.16),transparent 32%),radial-gradient(circle at 84% 60%,rgba(139,92,246,.14),transparent 36%),linear-gradient(135deg,#ffe4ef 0,#f0e7ff 48%,#dff1fe 100%);color:var(--text)}
body.theme-sakura a{color:#c94f79}
body.theme-sakura a:hover,body.theme-sakura a:focus{color:#6d38e0}
body.theme-sakura .navbar.navbar-default{background:rgba(255,255,255,.72);border:0;border-bottom:1px solid rgba(255,255,255,0.736);box-shadow:0 14px 40px rgba(190,120,160,.24);backdrop-filter:blur(14px)}
body.theme-sakura .navbar-brand{color:#2f1826!important;text-shadow:0 8px 24px rgba(224,100,138,.22)}
body.theme-sakura .navbar-brand:before{color:#e0648a}
body.theme-sakura .navbar-default .navbar-nav>li>a{color:#4a2537!important}
body.theme-sakura .navbar-default .navbar-nav>li>a i{color:#573042}
body.theme-sakura .navbar-default .navbar-nav>li.active>a,body.theme-sakura .navbar-default .navbar-nav>li>a:hover,body.theme-sakura .navbar-default .navbar-nav>li>a:focus{background:linear-gradient(135deg,rgba(224,100,138,.24),rgba(184,114,255,.26))!important;color:#4a2537!important;box-shadow:0 14px 32px rgba(139,92,246,.22)}
body.theme-sakura .dropdown-menu{background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,0.828);box-shadow:var(--shadow);backdrop-filter:blur(14px)}
body.theme-sakura .dropdown-menu>li>a{color:#3d2030!important}
body.theme-sakura .dropdown-menu>li>a:hover,body.theme-sakura .dropdown-menu>li>a:focus{background:rgba(255,255,255,0.552)!important;color:#e0648a!important}
body.theme-sakura .well,body.theme-sakura .panel{border:1px solid rgba(255,255,255,0.92);background:rgba(255,255,255,0.46);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
body.theme-sakura .well.bs-component{padding:34px}
body.theme-sakura .well.bs-component h2{display:block;margin-bottom:24px;background:linear-gradient(90deg,#e0648a,#3d2030 52%,#6d38e0);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:34px;font-weight:900;text-shadow:none}
body.theme-sakura .well.bs-component h2:after{content:"";display:block;width:92px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#e0648a,#8b5cf6)}
body.theme-sakura .panel-heading{background:rgba(255,255,255,0.368)!important;border-bottom:1px solid rgba(255,255,255,0.828)!important;color:#4a2537!important}
body.theme-sakura .panel-footer,body.theme-sakura .tab-content,body.theme-sakura .list-group-item{background:rgba(255,255,255,0.368);border-color:rgba(255,255,255,0.736);color:#573042}
body.theme-sakura #fileInput.infobox{background:rgba(255,255,255,0.46)!important;border:1px solid rgba(255,255,255,0.92)!important;box-shadow:0 22px 56px rgba(190,120,160,.24)!important;backdrop-filter:blur(18px)}
body.theme-sakura #fileInput.infobox:hover{border-color:rgba(126,238,255,.55)!important;box-shadow:0 24px 64px rgba(190,120,160,.3)!important}
body.theme-sakura #fileInput #uploadTitle{color:#4a2537!important}
body.theme-sakura #fileInput .checkbox label,body.theme-sakura #fileInput .help-block{color:#573042!important}
body.theme-sakura #fileInput #pwd,body.theme-sakura #fileInput #storage_select{background:rgba(255,255,255,.38)!important;border-color:rgba(255,255,255,0.92)!important;color:#4a2537!important;-webkit-text-fill-color:#4a2537}
body.theme-sakura .table{background:transparent}
body.theme-sakura .table>thead>tr>th{height:52px;background:rgba(255,255,255,0.506)!important;border-bottom:1px solid rgba(255,255,255,0.828)!important;color:#4a2537}
body.theme-sakura .table>tbody>tr>td{border-top:1px solid rgba(255,255,255,0.552)!important;color:#4a2537}
body.theme-sakura .table-striped>tbody>tr:nth-of-type(odd){background:rgba(255,255,255,0.115)}
body.theme-sakura .table-hover>tbody>tr:hover{background:rgba(255,255,255,0.368)}
body.theme-sakura .filelist td a{color:#b8446c}
body.theme-sakura .filelist .fa-fw{color:#b8446c}
body.theme-sakura .file-action{background:rgba(255,255,255,0.552);color:#b8446c!important}
body.theme-sakura .file-action-view{background:rgba(255,255,255,0.46);color:#6d38e0!important}
body.theme-sakura .file-action-edit{background:rgba(184,114,255,.2);color:#6d38e0!important}
body.theme-sakura .file-action:hover{background:linear-gradient(135deg,#e0648a,#8b5cf6);color:#4a2537!important}
body.theme-sakura .file-type-badge{background:rgba(255,255,255,0.736);color:#a13c5d}
body.theme-sakura .filelist-footer{padding:14px 16px;border:1px solid rgba(255,255,255,0.828);border-radius:14px;background:rgba(255,255,255,0.368);backdrop-filter:blur(14px)}
body.theme-sakura .filelist-summary{color:#4a2537}
body.theme-sakura .searchbox .form-control,body.theme-sakura .form-control{background:rgba(255,255,255,.38);border-color:rgba(255,255,255,0.92);color:#4a2537}
body.theme-sakura .form-control::placeholder{color:#8a6478}
body.theme-sakura .form-control:focus{border-color:#c94f79;box-shadow:0 0 0 4px rgba(224,100,138,.15)}
body.theme-sakura #upload_frame .checkbox label{color:#3d2030}
body.theme-sakura #upload_frame .checkbox input[type="checkbox"]{accent-color:#c94f79}
body.theme-sakura #fileInput #pwd::placeholder{color:#8a6478!important}
body.theme-sakura #fileInput #pwd:focus,body.theme-sakura #fileInput #storage_select:focus{background:rgba(255,255,255,.46)!important;border-color:#c94f79!important;box-shadow:0 0 0 4px rgba(224,100,138,.15)!important}
body.theme-sakura #upload_frame .checkbox .checkbox-material .check{border-color:#c94f79!important;background:rgba(255,255,255,0.368)!important}
body.theme-sakura #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:linear-gradient(135deg,#e0648a,#8b5cf6)!important;border-color:#c94f79!important}
body.theme-sakura .btn-raised.btn-primary,body.theme-sakura .btn-primary{background:linear-gradient(135deg,#e0648a,#8b5cf6)!important;color:#4a2537!important}
body.theme-sakura .btn-default{background:rgba(255,255,255,0.552)!important;border:1px solid rgba(255,255,255,0.828)!important;color:#3d2030!important}
body.theme-sakura .pagination>li>a,body.theme-sakura .pagination>li>span{background:rgba(255,255,255,0.414);border:1px solid rgba(255,255,255,0.736);color:#3d2030}
body.theme-sakura .pagination>li>a:hover,body.theme-sakura .pagination>.active>a,body.theme-sakura .pagination>.active>a:hover{background:linear-gradient(135deg,#e0648a,#8b5cf6);color:#4a2537;border-color:rgba(255,255,255,0.92)}
body.theme-sakura .pagination>.disabled>a,body.theme-sakura .pagination>.disabled>a:hover{background:rgba(255,255,255,0.368);color:#8a6478;border-color:rgba(255,255,255,0.598)}
body.theme-sakura .view{background:rgba(255,255,255,0.46);border-color:rgba(255,255,255,0.828)}
body.theme-sakura .tubiao{background:rgba(255,255,255,0.552);color:#c94f79}
body.theme-sakura .elsetext,body.theme-sakura .filename{color:#4a2537}
body.theme-sakura .elsetext p:first-child{color:#4a2537}
body.theme-sakura .image_view,body.theme-sakura .videoplayer{background:#ffffff}
body.theme-sakura .footer,body.theme-sakura .footer .text-muted{color:#8a6478}
@media (max-width:767px){body.theme-sakura{background:linear-gradient(135deg,#ffe4ef,#dff1fe)}body.theme-sakura .navbar-collapse{background:rgba(255,255,255,.94);border-top:1px solid rgba(255,255,255,0.736)}body.theme-sakura .well.bs-component{padding:22px}}
body.theme-sakura .searchbox input.form-control[type="search"]{background:rgba(255,255,255,.38)!important;border-color:rgba(255,255,255,0.92)!important;color:#4a2537!important;-webkit-text-fill-color:#4a2537}
body.theme-sakura .searchbox input.form-control[type="search"]::placeholder{color:#8a6478}
body.theme-sakura .searchbox input.form-control[type="search"]:focus{background:rgba(255,255,255,.46)!important;border-color:#c94f79!important;box-shadow:0 0 0 4px rgba(224,100,138,.15)!important}
body.theme-sakura .searchbox .btn{background:rgba(255,255,255,0.552)!important;border:1px solid rgba(255,255,255,0.828)!important;color:#3d2030!important}
body.theme-sakura .searchbox .btn:hover,body.theme-sakura .searchbox .btn:focus{background:linear-gradient(135deg,#e0648a,#8b5cf6)!important;color:#4a2537!important}
body.theme-sakura .mpimg-link-band{--gg-ad-bg:rgba(255,255,255,.54);--gg-ad-border:rgba(255,255,255,0.92);--gg-ad-shadow:0 14px 40px rgba(190,120,160,.18);backdrop-filter:blur(14px)}
body.theme-sakura .mpimg-link-grid .dh{border-color:rgba(255,255,255,0.92);box-shadow:0 12px 28px rgba(190,120,160,.18)}
body.theme-sakura .tab-content .input-group .form-control[readonly]{background:rgba(255,255,255,.38)!important;border-color:rgba(255,255,255,0.92)!important;color:#4a2537!important;-webkit-text-fill-color:#4a2537}
body.theme-sakura .tab-content .input-group .form-control[readonly]:focus{background:rgba(255,255,255,.46)!important;border-color:#c94f79!important;box-shadow:0 0 0 4px rgba(224,100,138,.15)!important}
body.theme-sakura .tab-content .input-group-btn .copy-btn{background:rgba(255,255,255,0.552)!important;border-color:rgba(255,255,255,0.828)!important;color:#3d2030!important}
body.theme-sakura .tab-content .input-group-btn .copy-btn:hover,body.theme-sakura .tab-content .input-group-btn .copy-btn:focus{background:linear-gradient(135deg,#e0648a,#8b5cf6)!important;border-color:transparent!important;color:#4a2537!important}
body.theme-sakura .tab-content .form-group .control-label{color:#573042}
body.theme-sakura .nav-tabs{background:rgba(255,255,255,0.368)!important;border-bottom:1px solid rgba(255,255,255,0.736)!important}
body.theme-sakura .nav-tabs>li>a,body.theme-sakura .nav-tabs>li>a:focus,body.theme-sakura .nav-tabs>li>a:hover{background:transparent!important;color:#573042!important}
body.theme-sakura .nav-tabs>li.active{background:rgba(255,255,255,0.552)!important;border-bottom:2px solid #c94f79!important}
body.theme-sakura .nav-tabs>li.active>a{background:transparent!important;color:#4a2537!important}
body.theme-sakura .tab-content{background:rgba(255,255,255,0.368)!important;border-color:rgba(255,255,255,0.736)!important;color:#573042!important}
body.theme-sakura .fileinfo-table{background:transparent!important;border-color:rgba(255,255,255,0.828)!important}
body.theme-sakura .fileinfo-table th{background:rgba(255,255,255,0.644)!important;border:1px solid rgba(255,255,255,0.92)!important;color:#4a2537!important}
body.theme-sakura .fileinfo-table td{background:rgba(255,255,255,0.276)!important;border:1px solid rgba(255,255,255,0.736)!important;color:#4a2537!important}
body.theme-sakura .well,body.theme-sakura .panel{border-radius:22px;backdrop-filter:blur(22px) saturate(1.25);-webkit-backdrop-filter:blur(22px) saturate(1.25);box-shadow:0 30px 80px rgba(190,120,160,.35),inset 0 1px 0 rgba(255,255,255,.28)}
body.theme-sakura .navbar.navbar-default{backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);box-shadow:0 14px 40px rgba(190,120,160,.28),inset 0 -1px 0 rgba(255,255,255,.14)}
body.theme-sakura .well.bs-component h2{background:linear-gradient(92deg,#e0648a,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:34px;font-weight:900}
body.theme-sakura .well.bs-component h2:after{content:"";display:block;width:96px;height:3px;margin-top:12px;border-radius:999px;background:linear-gradient(90deg,#e0648a,#8b5cf6)}
body.theme-sakura .btn-raised.btn-primary,body.theme-sakura .btn-primary{background:linear-gradient(135deg,#e0648a,#8b5cf6)!important;border:0!important;box-shadow:0 12px 30px rgba(224,100,138,.32)!important}
body.theme-sakura .btn-raised.btn-primary:hover,body.theme-sakura .btn-primary:hover{box-shadow:0 16px 38px rgba(224,100,138,.44)!important;filter:brightness(1.06)}
body.theme-sakura .file-type-badge{border-radius:999px;backdrop-filter:blur(6px)}
body.theme-sakura .file-action{border-radius:999px;backdrop-filter:blur(6px)}
body.theme-sakura .filelist-footer{border-radius:18px;backdrop-filter:blur(16px)}
body.theme-sakura .table>thead>tr>th{letter-spacing:.03em;font-weight:700}
body.theme-sakura .pagination>li>a{border-radius:12px;margin:0 3px;backdrop-filter:blur(8px)}
body.theme-sakura #fileInput.infobox{border-radius:22px;backdrop-filter:blur(20px) saturate(1.2)}

/* ===== Dashboard theme：结构级改版，不只是换色。顶部导航变为左侧固定侧栏，内容区改为圆角卡片布局 ===== */
body.theme-dashboard{--page-bg:#eef1f8;--surface:#ffffff;--surface-soft:#f5f7fb;--text:#1f2430;--muted:#6b7280;--line:#e7eaf1;--primary:#4f6bff;--primary-dark:#3450e6;--accent:#22c55e;--danger:#ef4444;--shadow:0 10px 28px rgba(31,41,55,.08);--sidebar-w:248px;background:var(--page-bg);color:var(--text)}
body.theme-dashboard a{color:var(--primary)}
body.theme-dashboard a:hover,body.theme-dashboard a:focus{color:var(--primary-dark)}
body.theme-dashboard .navbar-brand:before{content:"\f0e4";margin-right:8px;color:var(--primary);font-size:18px}
body.theme-dashboard .navbar-default .navbar-toggle{background:var(--surface-soft)!important;background-image:none!important;border:1px solid var(--line)!important;border-radius:8px}
body.theme-dashboard .navbar-default .navbar-toggle .icon-bar{background:var(--primary)!important}
body.theme-dashboard .navbar-default .navbar-nav>li>a{display:flex;align-items:center;gap:10px;color:#4b5261!important;font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.theme-dashboard .navbar-default .navbar-nav>li>a i{flex:0 0 16px;width:16px;text-align:center;color:#8890a0}
body.theme-dashboard .navbar-default .navbar-nav>li.active>a,body.theme-dashboard .navbar-default .navbar-nav>li>a:hover,body.theme-dashboard .navbar-default .navbar-nav>li>a:focus{background:#eef1ff!important;color:var(--primary)!important}
body.theme-dashboard .navbar-default .navbar-nav>li.active>a i,body.theme-dashboard .navbar-default .navbar-nav>li>a:hover i{color:var(--primary)}
.sponsor-pay-list{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;margin:0 0 26px}
.sponsor-pay-item{text-align:center}
.sponsor-pay-item img{width:150px;height:150px;object-fit:contain;border:1px solid var(--line);border-radius:12px;background:#fff}
.sponsor-pay-item p{margin:10px 0 0;color:var(--muted);font-weight:600}
@media (max-width:767px){.sponsor-pay-item img{width:120px;height:120px}}
body.theme-dashboard .dropdown-menu{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
body.theme-dashboard .dropdown-menu>li>a{color:#3f4656!important}
body.theme-dashboard .dropdown-menu>li>a:hover,body.theme-dashboard .dropdown-menu>li>a:focus{background:#eef1ff!important;color:var(--primary)!important}
body.theme-dashboard .footer,body.theme-dashboard .footer .text-muted{color:#8890a0}
/* 侧栏结构只在桌面宽度生效，移动端保留原生汉堡菜单折叠行为，避免破坏 .collapse 的展开/收起 */
@media (min-width:768px){
/* flex-direction:column：万一有脚本往导航栏里追加元素（公告条以前就是这么插的），也不会把侧栏内容挤窄 */
body.theme-dashboard .navbar.navbar-default{position:fixed;top:0;left:0;bottom:0;z-index:1200;margin:0;width:var(--sidebar-w);display:flex;flex-direction:column;background:#fff;border:0;border-right:1px solid var(--line);box-shadow:2px 0 24px rgba(31,41,55,.05);overflow-y:auto;overflow-x:hidden}
body.theme-dashboard .navbar .container{width:100%;max-width:none;padding:0;margin:0;display:flex;flex-direction:column;height:100%;min-height:100%}
body.theme-dashboard .navbar-header{float:none;width:100%;padding:18px 16px;border-bottom:1px solid var(--line)}
body.theme-dashboard .navbar-brand{float:none;display:flex;align-items:center;height:auto;padding:0;margin:0!important;font-size:16px;font-weight:800;color:#161a23!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.theme-dashboard .navbar-collapse{float:none;width:100%;flex:1;display:flex!important;flex-direction:column;padding:12px 10px;border:0;box-shadow:none;overflow-y:auto;overflow-x:hidden}
body.theme-dashboard .navbar-nav{float:none!important;width:100%;margin:0!important;display:flex;flex-direction:column;gap:2px}
body.theme-dashboard .navbar-nav>li{width:100%;float:none}
body.theme-dashboard .navbar-nav.navbar-right{float:none!important;margin:auto 0 0!important;padding-top:10px;border-top:1px solid var(--line)}
/* 这份样式表里靠后的通用块给导航链接加了 margin:16px 4px，不覆盖掉侧栏条目会被撑到 76px 高 */
body.theme-dashboard .navbar-default .navbar-nav>li>a{margin:0;padding:10px 12px;border-radius:10px}
body.theme-dashboard .navbar-default .navbar-nav>li>a i{margin:0}
/* 侧栏是可滚动容器，绝对定位的下拉菜单会被裁掉（用户菜单又正好在最底部），改成静态展开 */
body.theme-dashboard .navbar-nav .open>.dropdown-menu{position:static;float:none;width:100%;margin:2px 0 0;padding:4px;background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;box-shadow:none}
body.theme-dashboard .navbar-nav .open>.dropdown-menu>li>a{padding:9px 12px;border-radius:8px;white-space:normal}
body.theme-dashboard>.container{margin:0!important;max-width:none!important;width:auto!important;padding:26px 28px 8px calc(var(--sidebar-w) + 28px)}
body.theme-dashboard>footer.footer{margin:0!important;padding-left:calc(var(--sidebar-w) + 28px)}
body.theme-dashboard .theme-announcement-bar{margin:0 0 20px var(--sidebar-w)!important;width:calc(100% - var(--sidebar-w))!important;border-radius:0 0 14px 14px!important}
body.theme-dashboard .mpimg-link-band{margin-left:var(--sidebar-w)!important;width:calc(100% - var(--sidebar-w))!important}
}
@media (max-width:767px){
body.theme-dashboard .navbar-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px}
body.theme-dashboard .navbar-header .navbar-brand{order:1;min-width:0;flex:1}
body.theme-dashboard .navbar-header .navbar-toggle{order:2;flex:none;margin:0}
body.theme-dashboard .navbar-default .navbar-nav>li>a{margin:2px 0;padding:11px 15px;border-radius:8px}
body.theme-dashboard .navbar-default .navbar-nav>li>a i{margin:0}
}
body.theme-dashboard .well,body.theme-dashboard .panel{border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 6px 20px rgba(31,41,55,.05)}
body.theme-dashboard .well.bs-component{padding:24px}
body.theme-dashboard .well.bs-component h2{color:#161a23}
body.theme-dashboard .panel{overflow:hidden}
body.theme-dashboard .panel-heading{background:#fff!important;border-bottom:1px solid var(--line)!important;color:#161a23!important;font-weight:700}
body.theme-dashboard .panel-footer,body.theme-dashboard .tab-content,body.theme-dashboard .list-group-item{background:#fff;border-color:var(--line);color:#3f4656}
body.theme-dashboard .panel-title,body.theme-dashboard .panel-title i{color:#161a23}
body.theme-dashboard .table{background:transparent}
body.theme-dashboard .table>thead>tr>th{background:var(--surface-soft)!important;border-bottom:1px solid var(--line)!important;color:#4b5261;font-weight:700}
body.theme-dashboard .table>tbody>tr>td{border-top:1px solid var(--line)!important;color:#333a48}
body.theme-dashboard .table-striped>tbody>tr:nth-of-type(odd){background:#fafbfd}
body.theme-dashboard .table-hover>tbody>tr:hover{background:#f3f5fc}
body.theme-dashboard .table-bordered,body.theme-dashboard .table-bordered>tbody>tr>td,body.theme-dashboard .table-bordered>thead>tr>th{border-color:var(--line)!important}
body.theme-dashboard .filelist td a{color:var(--primary);font-weight:700}
body.theme-dashboard .filelist .fa-fw{color:#8890a0}
body.theme-dashboard .file-action{display:inline-flex!important;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;background:#eef1ff;color:var(--primary)!important;font-size:13px;font-weight:700}
body.theme-dashboard .file-action-view{background:#f2f3f7;color:#6b7280!important}
body.theme-dashboard .file-action-edit{background:#eaf7ff;color:#2b79d8!important}
body.theme-dashboard .file-action:hover{background:var(--primary);color:#fff!important}
body.theme-dashboard .file-type-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;background:#eef1ff;color:var(--primary);font-weight:700;font-size:13px}
body.theme-dashboard .filelist-summary{color:var(--muted)}
body.theme-dashboard .pagination>li>a,body.theme-dashboard .pagination>li>span{background:var(--surface-soft);border:0;border-radius:9px!important;color:#4b5261}
body.theme-dashboard .pagination>li>a:hover,body.theme-dashboard .pagination>.active>a,body.theme-dashboard .pagination>.active>a:hover{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)}
body.theme-dashboard .pagination>.disabled>a,body.theme-dashboard .pagination>.disabled>a:hover{background:var(--surface-soft);color:#b3b8c4}
body.theme-dashboard .form-control,body.theme-dashboard .searchbox .form-control{background:#fff;border:1px solid var(--line);border-radius:10px;color:#1f2430}
body.theme-dashboard .form-control:focus{border-color:#a9b7ff;box-shadow:0 0 0 4px rgba(79,107,255,.13)}
body.theme-dashboard .input-group-addon{background:var(--surface-soft);border-color:var(--line);color:var(--muted)}
body.theme-dashboard .searchbox input.form-control[type="search"]{background:#fff!important;border-color:var(--line)!important;color:#1f2430!important}
body.theme-dashboard .searchbox .btn{background:var(--surface-soft)!important;border:1px solid var(--line)!important;color:#4b5261!important;border-radius:10px!important}
body.theme-dashboard .searchbox .btn:hover,body.theme-dashboard .searchbox .btn:focus{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}
body.theme-dashboard #fileInput #pwd,body.theme-dashboard #fileInput #storage_select{background:#fff!important;border-color:var(--line)!important;color:#1f2430!important;-webkit-text-fill-color:#1f2430;border-radius:10px}
body.theme-dashboard #fileInput #pwd:focus,body.theme-dashboard #fileInput #storage_select:focus{border-color:#a9b7ff!important;box-shadow:0 0 0 4px rgba(79,107,255,.13)!important}
body.theme-dashboard #fileInput .help-block{color:var(--muted)!important}
body.theme-dashboard .btn{border-radius:10px!important}
body.theme-dashboard .btn-raised.btn-primary,body.theme-dashboard .btn-primary{background:var(--primary)!important;color:#fff!important}
body.theme-dashboard .btn-raised.btn-primary:hover,body.theme-dashboard .btn-primary:hover{background:var(--primary-dark)!important}
body.theme-dashboard .btn-raised.btn-info,body.theme-dashboard .btn-info{background:var(--accent)!important;color:#fff!important}
body.theme-dashboard .btn-raised.btn-danger,body.theme-dashboard .btn-danger{background:var(--danger)!important;color:#fff!important}
body.theme-dashboard .btn-default{background:var(--surface-soft)!important;color:#4b5261!important;border:1px solid var(--line)!important}
body.theme-dashboard .nav-tabs{background:#fff;border-bottom:1px solid var(--line)}
body.theme-dashboard .nav-tabs>li>a,body.theme-dashboard .nav-tabs>li>a:focus,body.theme-dashboard .nav-tabs>li>a:hover{color:#4b5261!important}
body.theme-dashboard .nav-tabs>li.active{background:#eef1ff;border-bottom:2px solid var(--primary)}
body.theme-dashboard .nav-tabs>li.active>a{color:var(--primary)!important}
body.theme-dashboard .view{background:var(--surface-soft);border-radius:16px}
body.theme-dashboard .tubiao{background:#eef1ff;color:var(--primary)}
body.theme-dashboard .elsetext,body.theme-dashboard .filename{color:#4b5261}
body.theme-dashboard .elsetext p:first-child{color:#161a23}
body.theme-dashboard .image_view,body.theme-dashboard .videoplayer{background:#151928;border-radius:16px}
body.theme-dashboard .fileinfo-table{background:#fff}
body.theme-dashboard .fileinfo-table th{background:var(--surface-soft);color:#4b5261}
body.theme-dashboard .progress{background:#e7eaf1}
body.theme-dashboard .progress-bar{background:linear-gradient(90deg,var(--primary),var(--accent))}
body.theme-dashboard{--tint:#eef1ff;--drop-line:#ccd4f2;--drop-tint:#f2f5ff;--btn-shadow:0 10px 24px rgba(79,107,255,.24)}
body.theme-dashboard #app .infobox{background:#fff!important;box-shadow:0 6px 20px rgba(31,41,55,.05)}
body.theme-dashboard .editor-toolbar{background:var(--surface-soft);border-color:var(--line);border-radius:12px}
body.theme-dashboard #file_content{background:#151928!important;color:#e7eaf1!important;border-color:#2a3040!important}
@media (max-width:767px){
body.theme-dashboard .navbar-collapse{border-top:1px solid var(--line);background:#fff}
body.theme-dashboard .well,body.theme-dashboard .panel{border-radius:12px}
}

/* ===== 布局型外观共用：上传页拖拽区（颜色由各主题的 --tint/--drop-line 决定） ===== */
/* 侧栏布局给 .navbar-collapse 加了 display:flex!important，手机端会让菜单永远展开，这里把折叠行为还回去 */
@media (max-width:767px){
body.layout-theme .navbar-collapse.collapse:not(.in){display:none!important}
body.layout-theme .navbar-collapse.collapse.in{display:flex!important}
body.layout-theme .navbar-collapse.collapsing{display:block!important}
}
/* Bootstrap 的 .row 用 -15px 负边距抵消 .container 的 15px 内边距；布局型外观的内边距是自己定的，
   负边距会伸到容器外面顶出横向滚动条（文件页/上传页最明显），这里去掉它，列自带的 padding 就是栏间距 */
body.layout-theme>.container>.row{margin-left:0;margin-right:0}
/* 侧栏布局给页脚加了左内边距，里面的 .container 还保持 Bootstrap 固定宽度会顶出横向滚动条 */
body.theme-dashboard>footer.footer .container,body.theme-console>footer.footer .container,body.theme-workspace>footer.footer .container{width:auto;max-width:none}
/* 默认外观在 body:before 上铺了一层蓝色边缘光，布局型外观有自己的底色，要先关掉 */
body.layout-theme:before{content:none;display:none}
body.layout-theme #app>.row:has(#fileInput){display:flex;flex-wrap:wrap;align-items:stretch}
body.layout-theme #app>.row:has(#fileInput)>div[class*="col-"]{float:none;display:flex;flex-direction:column}
body.layout-theme #app .infobox{border:2px dashed var(--drop-line);border-radius:18px}
body.layout-theme #app .infobox:hover{border-color:var(--primary)}
body.layout-theme #app .infobox.is-dragover{border-color:var(--primary);border-style:solid;background:var(--drop-tint)!important}
body.layout-theme #fileInput{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;min-height:430px;padding:30px 28px}
body.layout-theme #fileInput>div:first-child{min-height:0!important}
body.layout-theme #fileInput br{display:none}
body.layout-theme #fileInput .upload-main-progress,body.layout-theme #fileInput .upload-message,body.layout-theme #fileInput .upload-queue{text-align:left}
body.layout-theme #uploadTitle{margin:0;color:var(--text)!important;font-size:24px;font-weight:800;line-height:1.6}
body.layout-theme #uploadTitle:before{content:"\f0ee";display:block;width:72px;height:72px;margin:0 auto 18px;border-radius:50%;background:var(--tint);color:var(--primary);font:400 30px/72px FontAwesome}
body.layout-theme #uploadTitle:after{content:"\652F\6301\591A\9009\6279\91CF\4E0A\4F20\FF0C\5B8C\6210\540E\53EF\4E00\952E\590D\5236\94FE\63A5";display:block;margin-top:8px;color:var(--muted);font-size:14px;font-weight:600}
body.layout-theme #fileInput.is-dragover #uploadTitle:before{background:var(--primary);color:#fff}
body.layout-theme #fileInput.is-dragover #uploadTitle:after{visibility:hidden}
body.layout-theme #upload_frame{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 26px;margin-top:26px}
body.layout-theme #upload_frame:before,body.layout-theme #upload_frame:after{content:"";flex:0 0 100%;height:0}
body.layout-theme #upload_frame:before{order:0}
body.layout-theme #upload_frame:after{order:1}
body.layout-theme #uploadFile{order:-1;height:auto!important;margin:0 auto 14px;padding:13px 30px;font-size:16px!important;font-weight:700;box-shadow:var(--btn-shadow)}
body.layout-theme #upload_frame .form-group{margin:0}
body.layout-theme #upload_frame .form-group .checkbox{margin:0}
body.layout-theme #upload_frame #pwd_frame{order:2;margin:12px auto 0;text-align:left}
@media (max-width:767px){
body.layout-theme #app>.row:has(#fileInput),body.layout-theme #app>.row:has(#fileInput)>div[class*="col-"]{display:block}
body.layout-theme #app .infobox{border-radius:12px}
body.layout-theme #fileInput{min-height:360px;padding:24px 16px}
body.layout-theme #uploadTitle{font-size:20px}
body.layout-theme #uploadTitle:before{width:60px;height:60px;margin-bottom:14px;font-size:26px;line-height:60px}
body.layout-theme #upload_frame{gap:0 16px}
}

/* ===== 数据控制台风（布局型）：密集侧栏 + 顶部标题栏 + 卡片化表格 ===== */
body.theme-console{--page-bg:#f5f7fb;--surface:#ffffff;--surface-soft:#f8f9fb;--text:#151c2d;--muted:#7b8497;--line:#e7eaf0;--primary:#3867f4;--primary-dark:#2a4fd0;--accent:#16a369;--danger:#ef5a55;--tint:#eef2ff;--drop-line:#ccd6f5;--drop-tint:#f1f4ff;--shadow:0 7px 28px rgba(31,43,70,.05);--btn-shadow:0 9px 22px rgba(56,103,244,.24);--sidebar-w:244px;background:var(--page-bg);color:var(--text)}
body.theme-console a{color:var(--primary)}
body.theme-console a:hover,body.theme-console a:focus{color:var(--primary-dark)}
body.theme-console .navbar.navbar-default{position:fixed;top:0;left:0;bottom:0;z-index:1200;margin:0;width:var(--sidebar-w);display:flex;flex-direction:column;background:#fff;border:0;border-right:1px solid var(--line);box-shadow:none;overflow-y:auto;overflow-x:hidden}
body.theme-console .navbar .container{width:100%;max-width:none;padding:0;margin:0;display:flex;flex-direction:column;height:100%;min-height:100%}
body.theme-console .navbar-header{float:none;width:100%;padding:24px 18px 18px}
body.theme-console .navbar-brand{float:none;display:flex;align-items:center;gap:11px;height:auto;padding:0;margin:0!important;color:#151c2d!important;font-size:17px;font-weight:800;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.theme-console .navbar-brand:before{content:"\f0c2";flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:var(--primary);color:#fff;font:400 17px/34px FontAwesome;text-align:center;box-shadow:0 8px 18px rgba(56,103,244,.25)}
body.theme-console .navbar-collapse{float:none;width:100%;flex:1;display:flex!important;flex-direction:column;padding:0 14px 18px;border:0;box-shadow:none;overflow-y:auto;overflow-x:hidden}
body.theme-console .navbar-nav{float:none!important;width:100%;margin:0!important;display:flex;flex-direction:column;gap:4px}
body.theme-console .navbar-nav>li{width:100%;float:none}
body.theme-console .navbar-nav:first-of-type:before{content:"\5DE5\4F5C\7A7A\95F4";padding:2px 11px 9px;color:#a0a7b5;font-size:10px;font-weight:800;letter-spacing:.12em}
body.theme-console .navbar-nav.navbar-right{float:none!important;margin:auto 0 0!important;padding-top:12px;border-top:1px solid var(--line)}
body.theme-console .navbar-default .navbar-nav>li>a{display:flex;align-items:center;gap:12px;margin:0;padding:11px 12px;border-radius:11px;color:#626b7e!important;font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.theme-console .navbar-default .navbar-nav>li>a i{flex:0 0 18px;width:18px;margin:0;text-align:center;color:#9aa1b0;font-size:15px}
body.theme-console .navbar-default .navbar-nav>li>a:hover,body.theme-console .navbar-default .navbar-nav>li>a:focus{background:#f4f6fa!important;color:#3d4557!important}
body.theme-console .navbar-default .navbar-nav>li.active>a{background:#eef2ff!important;color:var(--primary)!important}
body.theme-console .navbar-default .navbar-nav>li.active>a i,body.theme-console .navbar-default .navbar-nav>li>a:hover i{color:var(--primary)}
body.theme-console .navbar-nav .open>.dropdown-menu{position:static;float:none;width:100%;margin:2px 0 0;padding:4px;background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;box-shadow:none}
body.theme-console .navbar-nav .open>.dropdown-menu>li>a{padding:9px 12px;border-radius:8px;color:#626b7e!important;white-space:normal}
body.theme-console .navbar-nav .open>.dropdown-menu>li>a:hover{background:#eef2ff!important;color:var(--primary)!important}
body.theme-console .navbar-default .navbar-toggle{background:var(--surface-soft)!important;background-image:none!important;border:1px solid var(--line)!important;border-radius:9px}
body.theme-console .navbar-default .navbar-toggle .icon-bar{background:var(--primary)!important}
body.theme-console>.container{margin:0!important;max-width:none!important;width:auto!important;padding:29px 32px 10px calc(var(--sidebar-w) + 32px)}
body.theme-console>footer.footer{margin:0!important;padding-left:calc(var(--sidebar-w) + 32px)}
body.theme-console .footer,body.theme-console .footer .text-muted{color:#9aa1b0;font-size:12px}
body.theme-console .theme-announcement-bar{margin:0 0 22px var(--sidebar-w)!important;width:calc(100% - var(--sidebar-w))!important}
body.theme-console .mpimg-link-band{margin-left:var(--sidebar-w)!important;width:calc(100% - var(--sidebar-w))!important}
body.theme-console .well.bs-component:has(>.table-responsive){padding:0;background:transparent!important;border:0;box-shadow:none}
body.theme-console .well.bs-component:has(>.table-responsive)>.sponsor-pay-list{padding:22px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
body.theme-console .well.bs-component:has(>.table-responsive)>p.text-muted{margin:-8px 0 18px;color:var(--muted)}
body.theme-console .well.bs-component>h2{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin:0 0 19px;color:var(--text);font-size:26px;font-weight:800;letter-spacing:-.04em}
body.theme-console .well.bs-component>h2 .text-muted{color:var(--muted);font-size:12px!important;font-weight:600}
body.theme-console .searchbox{margin:0}
body.theme-console .searchbox .form-inline{display:flex;align-items:center;gap:8px}
body.theme-console .searchbox input.form-control[type="search"]{height:40px;min-width:240px;background:#fff!important;border:1px solid var(--line)!important;border-radius:11px!important;color:var(--text)!important;font-size:13px;box-shadow:0 3px 12px rgba(28,39,64,.035)}
body.theme-console .searchbox .btn{height:40px;background:#fff!important;border:1px solid var(--line)!important;border-radius:11px!important;color:#687185!important;font-size:12px;font-weight:700}
body.theme-console .searchbox .btn:hover,body.theme-console .searchbox .btn:focus{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}
/* 只能裁纵向：overflow:hidden 会把 Bootstrap 的横向滚动一起关掉，手机端列表就划不动了 */
body.theme-console .table-responsive{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}
body.theme-console .table-responsive:has(+.filelist-footer){border-radius:16px 16px 0 0}
body.theme-console .filelist-footer{margin:0;padding:13px 17px;background:#fff;border:1px solid var(--line);border-top:0;border-radius:0 0 16px 16px}
body.theme-console .table{margin:0;background:transparent}
body.theme-console .table>thead>tr>th{padding:12px 15px;background:#fafbfc!important;border-bottom:1px solid var(--line)!important;color:#9aa1af;font-size:11px;font-weight:750;letter-spacing:.04em}
body.theme-console .table>tbody>tr>td{padding:13px 15px;border-top:1px solid #f0f1f4!important;color:#626a7a;font-size:13px;vertical-align:middle}
body.theme-console .table-striped>tbody>tr:nth-of-type(odd){background:transparent}
body.theme-console .table-hover>tbody>tr:hover{background:#fafbff}
body.theme-console .table-bordered,body.theme-console .table-bordered>tbody>tr>td,body.theme-console .table-bordered>thead>tr>th{border-color:var(--line)!important}
body.theme-console .filelist td a{color:var(--text);font-weight:750}
body.theme-console .filelist .fa-fw{margin-right:8px;color:var(--primary)}
body.theme-console .file-type-badge{display:inline-flex;padding:4px 8px;border-radius:6px;background:#f1f3f6;color:#6f788b;font-size:11px;font-weight:750}
body.theme-console .file-action{display:inline-flex!important;align-items:center;gap:5px;padding:5px 9px;border-radius:8px;background:transparent;color:#7d8698!important;font-size:12px;font-weight:700}
body.theme-console .file-action:hover{background:#eef2ff;color:var(--primary)!important}
body.theme-console .filelist-summary{color:var(--muted);font-size:12px}
body.theme-console .pagination>li>a,body.theme-console .pagination>li>span{min-width:28px;background:#fff;border:1px solid var(--line);border-radius:8px!important;color:#71798a;font-size:12px}
body.theme-console .pagination>li>a:hover,body.theme-console .pagination>.active>a,body.theme-console .pagination>.active>a:hover{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}
body.theme-console .pagination>.disabled>a,body.theme-console .pagination>.disabled>a:hover{background:#fff;color:#b9bfca}
body.theme-console .panel,body.theme-console .well{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
body.theme-console .panel{overflow:hidden}
body.theme-console .panel-heading{background:#fff!important;border-bottom:1px solid var(--line)!important;color:var(--text)!important;font-weight:750}
body.theme-console .panel-title,body.theme-console .panel-title i{color:var(--text)}
body.theme-console .panel-footer,body.theme-console .tab-content,body.theme-console .list-group-item{background:#fff;border-color:var(--line);color:#626a7a;font-size:13px}
body.theme-console .form-control{background:#fff;border:1px solid var(--line);border-radius:11px;color:var(--text)}
body.theme-console .form-control:focus{border-color:#a8bcff;box-shadow:0 0 0 4px rgba(56,103,244,.12)}
body.theme-console .input-group-addon{background:var(--surface-soft);border-color:var(--line);color:var(--muted)}
body.theme-console .btn{border-radius:11px!important;font-weight:700}
body.theme-console .btn-raised.btn-primary,body.theme-console .btn-primary{background:var(--primary)!important;color:#fff!important}
body.theme-console .btn-raised.btn-primary:hover,body.theme-console .btn-primary:hover{background:var(--primary-dark)!important}
body.theme-console .btn-raised.btn-info,body.theme-console .btn-info{background:var(--accent)!important;color:#fff!important}
body.theme-console .btn-raised.btn-danger,body.theme-console .btn-danger{background:var(--danger)!important;color:#fff!important}
body.theme-console .btn-default{background:#fff!important;border:1px solid var(--line)!important;color:#6f788b!important}
body.theme-console .nav-tabs{background:#fff;border-bottom:1px solid var(--line)}
body.theme-console .nav-tabs>li>a,body.theme-console .nav-tabs>li>a:focus,body.theme-console .nav-tabs>li>a:hover{color:#626b7e!important}
body.theme-console .nav-tabs>li.active{background:#eef2ff;border-bottom:2px solid var(--primary)}
body.theme-console .nav-tabs>li.active>a{color:var(--primary)!important}
body.theme-console #app .infobox{background:#fff!important;box-shadow:var(--shadow)}
body.theme-console .view{background:var(--surface-soft);border-radius:16px}
body.theme-console .tubiao{background:#eef2ff;color:var(--primary)}
body.theme-console .elsetext,body.theme-console .filename{color:#626a7a}
body.theme-console .elsetext p:first-child{color:var(--text)}
body.theme-console .image_view,body.theme-console .videoplayer{background:#12172a;border-radius:16px}
body.theme-console .fileinfo-table{background:#fff}
body.theme-console .fileinfo-table th{background:var(--surface-soft);color:#626a7a}
body.theme-console .progress{background:#e5e8ef}
body.theme-console .progress-bar{background:linear-gradient(90deg,#3867f4,#7b61ff)}
body.theme-console .editor-toolbar{background:var(--surface-soft);border-color:var(--line);border-radius:12px}
body.theme-console #file_content{background:#12172a!important;color:#e7eaf1!important;border-color:#252b3d!important}
@media (max-width:767px){
body.theme-console .navbar.navbar-default{position:static;width:auto;border-right:0;border-bottom:1px solid var(--line)}
body.theme-console .navbar-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px}
body.theme-console .navbar-header .navbar-brand{order:1;min-width:0;flex:1}
body.theme-console .navbar-header .navbar-toggle{order:2;flex:none;margin:0}
body.theme-console .navbar-collapse{padding:8px 12px 12px;border-top:1px solid var(--line);background:#fff}
body.theme-console .navbar-nav:first-of-type:before{display:none}
body.theme-console .navbar-nav.navbar-right{margin:8px 0 0!important}
body.theme-console>.container{padding:16px 16px 8px!important}
body.theme-console>footer.footer{padding-left:0}
body.theme-console .theme-announcement-bar,body.theme-console .mpimg-link-band{margin-left:0!important;width:100%!important}
body.theme-console .well.bs-component>h2{font-size:21px}
body.theme-console .searchbox input.form-control[type="search"]{min-width:0;width:100%}
}

/* ===== 上传门户风（布局型）：居中门户导航 + 首屏大上传区 + 绿色配色 ===== */
body.theme-portal{--page-bg:#f6f8f5;--surface:#ffffff;--surface-soft:#f2f5f3;--text:#17211d;--muted:#66716c;--line:#dfe7e2;--primary:#0d7c57;--primary-dark:#0a5f42;--accent:#2aa773;--danger:#d95650;--tint:#e7f4ed;--drop-line:#adcbb9;--drop-tint:#eef7f2;--shadow:0 14px 35px rgba(23,33,29,.07);--btn-shadow:0 12px 24px rgba(13,124,87,.22);background:var(--page-bg);color:var(--text)}
body.theme-portal a{color:var(--primary)}
body.theme-portal a:hover,body.theme-portal a:focus{color:var(--primary-dark)}
body.theme-portal .navbar.navbar-default{margin:0;background:transparent;border:0;box-shadow:none}
body.theme-portal .navbar .container{width:min(1180px,calc(100% - 40px));max-width:none;padding:0;display:flex;align-items:center;flex-wrap:wrap;gap:0 32px}
body.theme-portal .navbar-header{float:none;display:flex;align-items:center;height:76px}
body.theme-portal .navbar-brand{float:none;display:flex;align-items:center;gap:10px;height:auto;padding:0;margin:0!important;color:var(--text)!important;font-size:17px;font-weight:900;letter-spacing:-.03em}
body.theme-portal .navbar-brand:before{content:"\f0c2";width:35px;height:35px;border-radius:50% 50% 50% 12px;background:var(--primary);color:#fff;font:400 17px/35px FontAwesome;text-align:center}
body.theme-portal .navbar-collapse{float:none;flex:1;display:flex!important;align-items:center;padding:0;border:0;box-shadow:none}
body.theme-portal .navbar-nav{float:none!important;display:flex;align-items:center;gap:26px;margin:0!important}
body.theme-portal .navbar-nav>li{float:none}
body.theme-portal .navbar-default .navbar-nav>li>a{position:relative;padding:27px 0 24px;background:none!important;color:#6e7974!important;font-size:13px;font-weight:700}
body.theme-portal .navbar-default .navbar-nav>li>a i{margin-right:6px;color:#9aa8a1}
body.theme-portal .navbar-default .navbar-nav>li>a:hover,body.theme-portal .navbar-default .navbar-nav>li.active>a{color:var(--text)!important}
body.theme-portal .navbar-default .navbar-nav>li.active>a:after{content:"";position:absolute;left:0;right:0;bottom:17px;height:2px;border-radius:2px;background:var(--primary)}
body.theme-portal .navbar-nav.navbar-right{float:none!important;margin:0 0 0 auto!important;gap:10px}
body.theme-portal .navbar-default .navbar-nav.navbar-right>li>a{display:inline-flex;align-items:center;height:38px;padding:0 15px;border:1px solid var(--line);border-radius:10px;background:#fff!important;color:#46524c!important;font-size:12px;font-weight:800}
body.theme-portal .navbar-default .navbar-nav.navbar-right>li:last-child>a{background:var(--text)!important;border-color:var(--text);color:#fff!important}
body.theme-portal .navbar-default .navbar-nav.navbar-right>li>a:after{display:none}
body.theme-portal .navbar-default .navbar-nav.navbar-right>li>a:hover{border-color:var(--primary);color:var(--primary)!important}
body.theme-portal .navbar-default .navbar-nav.navbar-right>li:last-child>a:hover{background:var(--primary)!important;border-color:var(--primary);color:#fff!important}
body.theme-portal .navbar-default .navbar-toggle{background:#fff!important;background-image:none!important;border:1px solid var(--line)!important;border-radius:10px}
body.theme-portal .navbar-default .navbar-toggle .icon-bar{background:var(--primary)!important}
body.theme-portal .dropdown-menu{border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}
body.theme-portal .dropdown-menu>li>a:hover{background:var(--tint)!important;color:var(--primary)!important}
body.theme-portal>.container{width:min(1180px,calc(100% - 40px));max-width:none;padding:0}
body.theme-portal .footer,body.theme-portal .footer .text-muted{color:#87918c;font-size:12px}
/* 首屏大上传区（仅门户风输出这段结构） */
body.theme-portal .portal-hero{position:relative;width:min(1180px,calc(100% - 40px));margin:0 auto;overflow:hidden;padding:8px 0 30px}
body.theme-portal .portal-hero-inner{position:relative;z-index:1;width:100%;display:grid;grid-template-columns:minmax(0,.92fr) minmax(340px,1.08fr);align-items:center;gap:44px;padding:46px 50px;overflow:hidden;background:#e9f3ec;border:1px solid #d9e9de;border-radius:28px}
body.theme-portal .portal-hero-inner:before{content:"";position:absolute;width:250px;height:250px;right:12%;top:-150px;border:42px solid rgba(255,255,255,.44);border-radius:50%}
body.theme-portal .portal-kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;background:rgba(255,255,255,.64);border:1px solid rgba(13,124,87,.14);border-radius:999px;color:#326d56;font-size:11px;font-weight:800}
body.theme-portal .portal-kicker:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}
body.theme-portal .portal-hero h1{max-width:520px;margin:17px 0 14px;color:var(--text);font-size:clamp(28px,3.4vw,46px);font-weight:850;line-height:1.12;letter-spacing:-.045em}
body.theme-portal .portal-hero-copy>p{max-width:480px;margin:0;color:var(--muted);font-size:14px;line-height:1.8}
body.theme-portal .portal-trust{display:flex;flex-wrap:wrap;gap:16px;margin-top:22px}
body.theme-portal .portal-trust span{display:inline-flex;align-items:center;gap:6px;color:#4e5a54;font-size:12px;font-weight:700}
body.theme-portal .portal-trust i{color:var(--primary)}
body.theme-portal .portal-drop{position:relative;min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;background:rgba(255,255,255,.86);border:2px dashed var(--drop-line);border-radius:23px;box-shadow:0 18px 50px rgba(40,94,67,.1);color:var(--text);text-align:center;text-decoration:none;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
body.theme-portal .portal-drop:hover,body.theme-portal .portal-drop:focus{transform:translateY(-2px);border-color:var(--primary);box-shadow:0 22px 56px rgba(40,94,67,.16);color:var(--text);text-decoration:none}
body.theme-portal .portal-drop-icon{width:62px;height:62px;border-radius:18px;background:var(--primary);color:#fff;font-size:26px;line-height:62px;box-shadow:var(--btn-shadow);transform:rotate(-3deg)}
body.theme-portal .portal-drop strong{margin:20px 0 6px;font-size:19px;letter-spacing:-.025em}
body.theme-portal .portal-drop small{color:#7e8a84;font-size:12px}
body.theme-portal .portal-drop-btn{display:inline-flex;align-items:center;gap:7px;margin-top:20px;padding:10px 18px;background:var(--text);border-radius:10px;color:#fff;font-size:12px;font-weight:800}
body.theme-portal .portal-drop:hover .portal-drop-btn{background:var(--primary)}
/* 内容卡片 */
body.theme-portal .well,body.theme-portal .panel{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
body.theme-portal .well.bs-component{padding:24px 26px 26px}
body.theme-portal .well.bs-component>h2{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin:0 0 18px;color:var(--text);font-size:22px;font-weight:850;letter-spacing:-.03em}
body.theme-portal .well.bs-component>h2 .text-muted{color:var(--muted);font-size:12px!important;font-weight:600}
body.theme-portal .panel{overflow:hidden}
body.theme-portal .panel-heading{background:#fff!important;border-bottom:1px solid var(--line)!important;color:var(--text)!important;font-weight:800}
body.theme-portal .panel-title,body.theme-portal .panel-title i{color:var(--text)}
body.theme-portal .panel-footer,body.theme-portal .tab-content,body.theme-portal .list-group-item{background:#fff;border-color:var(--line);color:#5d6a64}
body.theme-portal .searchbox .form-inline{display:flex;align-items:center;gap:8px}
body.theme-portal .searchbox input.form-control[type="search"]{height:38px;min-width:220px;background:#fff!important;border:1px solid var(--line)!important;border-radius:10px!important;color:var(--text)!important;font-size:12px}
body.theme-portal .searchbox .btn{height:38px;background:#fff!important;border:1px solid var(--line)!important;border-radius:10px!important;color:#5d6a64!important;font-size:12px;font-weight:700}
body.theme-portal .searchbox .btn:hover,body.theme-portal .searchbox .btn:focus{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}
body.theme-portal .table{background:transparent}
body.theme-portal .table>thead>tr>th{padding:12px 14px;background:var(--surface-soft)!important;border-bottom:1px solid var(--line)!important;color:#66716c;font-size:12px;font-weight:800}
body.theme-portal .table>tbody>tr>td{padding:14px;border-top:1px solid #edf0ee!important;color:#4f5b55;vertical-align:middle}
body.theme-portal .table-striped>tbody>tr:nth-of-type(odd){background:#fbfcfb}
body.theme-portal .table-hover>tbody>tr:hover{background:var(--tint)}
body.theme-portal .table-bordered,body.theme-portal .table-bordered>tbody>tr>td,body.theme-portal .table-bordered>thead>tr>th{border-color:var(--line)!important}
body.theme-portal .filelist td a{color:var(--text);font-weight:750}
body.theme-portal .filelist .fa-fw{margin-right:8px;color:var(--primary)}
body.theme-portal .file-type-badge{display:inline-flex;padding:4px 9px;border-radius:999px;background:var(--tint);color:var(--primary);font-size:11px;font-weight:800}
body.theme-portal .file-action{display:inline-flex!important;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;background:var(--surface-soft);color:#5d6a64!important;font-size:12px;font-weight:750}
body.theme-portal .file-action-down{background:var(--tint);color:var(--primary)!important}
body.theme-portal .file-action:hover{background:var(--primary);color:#fff!important}
body.theme-portal .filelist-summary{color:var(--muted);font-size:12px}
body.theme-portal .pagination>li>a,body.theme-portal .pagination>li>span{background:#fff;border:1px solid var(--line);border-radius:10px!important;color:#5d6a64}
body.theme-portal .pagination>li>a:hover,body.theme-portal .pagination>.active>a,body.theme-portal .pagination>.active>a:hover{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}
body.theme-portal .pagination>.disabled>a,body.theme-portal .pagination>.disabled>a:hover{background:#fff;color:#b3bdb8}
body.theme-portal .form-control{background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--text)}
body.theme-portal .form-control:focus{border-color:#8dc4ac;box-shadow:0 0 0 4px rgba(13,124,87,.12)}
body.theme-portal .input-group-addon{background:var(--surface-soft);border-color:var(--line);color:var(--muted)}
body.theme-portal .btn{border-radius:10px!important;font-weight:800}
body.theme-portal .btn-raised.btn-primary,body.theme-portal .btn-primary{background:var(--primary)!important;color:#fff!important}
body.theme-portal .btn-raised.btn-primary:hover,body.theme-portal .btn-primary:hover{background:var(--primary-dark)!important}
body.theme-portal .btn-raised.btn-info,body.theme-portal .btn-info{background:var(--accent)!important;color:#fff!important}
body.theme-portal .btn-raised.btn-danger,body.theme-portal .btn-danger{background:var(--danger)!important;color:#fff!important}
body.theme-portal .btn-default{background:#fff!important;border:1px solid var(--line)!important;color:#5d6a64!important}
body.theme-portal .nav-tabs{background:#fff;border-bottom:1px solid var(--line)}
body.theme-portal .nav-tabs>li>a,body.theme-portal .nav-tabs>li>a:focus,body.theme-portal .nav-tabs>li>a:hover{color:#5d6a64!important}
body.theme-portal .nav-tabs>li.active{background:var(--tint);border-bottom:2px solid var(--primary)}
body.theme-portal .nav-tabs>li.active>a{color:var(--primary)!important}
body.theme-portal #app .infobox{background:rgba(255,255,255,.9)!important;box-shadow:0 18px 50px rgba(40,94,67,.1)}
body.theme-portal .view{background:var(--surface-soft);border-radius:18px}
body.theme-portal .tubiao{background:var(--tint);color:var(--primary)}
body.theme-portal .elsetext,body.theme-portal .filename{color:#5d6a64}
body.theme-portal .elsetext p:first-child{color:var(--text)}
body.theme-portal .image_view,body.theme-portal .videoplayer{background:#12211b;border-radius:18px}
body.theme-portal .fileinfo-table{background:#fff}
body.theme-portal .fileinfo-table th{background:var(--surface-soft);color:#5d6a64}
body.theme-portal .progress{background:#e4ebe7}
body.theme-portal .progress-bar{background:linear-gradient(90deg,var(--primary),var(--accent))}
body.theme-portal .editor-toolbar{background:var(--surface-soft);border-color:var(--line);border-radius:12px}
body.theme-portal #file_content{background:#12211b!important;color:#e7f0ea!important;border-color:#24382f!important}
@media (max-width:900px){
body.theme-portal .portal-hero-inner{grid-template-columns:minmax(0,1fr);gap:28px;padding:34px 26px}
body.theme-portal .portal-drop{min-height:230px}
}
@media (max-width:767px){
body.theme-portal .navbar .container{width:calc(100% - 24px);gap:0}
body.theme-portal .navbar-header{height:60px;width:100%;justify-content:space-between}
body.theme-portal .navbar-header .navbar-brand{order:1}
body.theme-portal .navbar-header .navbar-toggle{order:2;margin:0}
body.theme-portal .navbar-collapse{width:100%;flex-direction:column;align-items:stretch;padding:8px 0 12px;background:#fff;border:1px solid var(--line);border-radius:14px}
body.theme-portal .navbar-nav{flex-direction:column;align-items:stretch;gap:0}
body.theme-portal .navbar-default .navbar-nav>li>a{padding:11px 14px}
body.theme-portal .navbar-default .navbar-nav>li.active>a:after{display:none}
body.theme-portal .navbar-nav.navbar-right{margin:6px 0 0!important;padding:6px 10px 0;gap:8px;border-top:1px solid var(--line)}
body.theme-portal .navbar-default .navbar-nav.navbar-right>li>a{width:100%;justify-content:center}
body.theme-portal>.container{width:calc(100% - 24px)}
body.theme-portal .well.bs-component{padding:18px 14px 20px}
body.theme-portal .portal-hero h1{font-size:26px}
}

/* ===== 深色工作台风（布局型）：左侧图标导航条（悬停展开）+ 深色圆角面板 ===== */
body.theme-workspace{--page-bg:#10141b;--surface:#171c25;--surface-soft:#1d232e;--text:#edf1f7;--muted:#8993a3;--line:#2a313d;--primary:#f4c95d;--primary-dark:#d9ad3f;--accent:#5ed6a0;--danger:#f27272;--tint:rgba(244,201,93,.14);--drop-line:#39414f;--drop-tint:rgba(244,201,93,.08);--shadow:0 18px 44px rgba(0,0,0,.34);--btn-shadow:0 12px 26px rgba(244,201,93,.18);--rail-w:72px;background:var(--page-bg);color:var(--text)}
body.theme-workspace a{color:var(--primary)}
body.theme-workspace a:hover,body.theme-workspace a:focus{color:var(--primary-dark)}
body.theme-workspace .navbar.navbar-default{position:fixed;top:12px;left:12px;bottom:12px;z-index:1200;margin:0;width:var(--rail-w);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overflow:hidden;transition:width .22s ease}
body.theme-workspace .navbar.navbar-default:hover{width:214px;box-shadow:0 24px 60px rgba(0,0,0,.45)}
body.theme-workspace .navbar .container{width:100%;max-width:none;padding:0;margin:0;display:flex;flex-direction:column;height:100%;min-height:100%}
body.theme-workspace .navbar-header{float:none;width:100%;padding:16px 0;border-bottom:1px solid var(--line)}
body.theme-workspace .navbar-brand{float:none;display:block;width:100%;height:auto;padding:0;margin:0!important;color:var(--text)!important;font-size:0;white-space:nowrap;overflow:hidden;text-align:center}
body.theme-workspace .navbar-brand:before{content:"\f0c2";display:inline-block;width:40px;height:40px;border-radius:13px;background:var(--tint);color:var(--primary);font:400 19px/40px FontAwesome;text-align:center}
body.theme-workspace .navbar.navbar-default:hover .navbar-brand{display:flex;align-items:center;gap:11px;padding:0 16px;font-size:15px;font-weight:800;text-align:left}
body.theme-workspace .navbar.navbar-default:hover .navbar-brand:before{flex:0 0 40px}
body.theme-workspace .navbar-collapse{float:none;width:100%;flex:1;display:flex!important;flex-direction:column;padding:12px 12px 14px;border:0;box-shadow:none;overflow-x:hidden;overflow-y:auto}
body.theme-workspace .navbar-nav{float:none!important;width:100%;margin:0!important;display:flex;flex-direction:column;gap:6px}
body.theme-workspace .navbar-nav>li{width:100%;float:none}
body.theme-workspace .navbar-nav.navbar-right{float:none!important;margin:auto 0 0!important;padding-top:12px;border-top:1px solid var(--line)}
body.theme-workspace .navbar-default .navbar-nav>li>a{display:flex;align-items:center;gap:12px;margin:0;padding:0 12px;height:44px;border-radius:13px;background:transparent!important;color:var(--muted)!important;font-size:0;font-weight:700;white-space:nowrap;overflow:hidden}
body.theme-workspace .navbar-default .navbar-nav>li>a i{flex:0 0 22px;width:22px;margin:0;text-align:center;font-size:17px}
body.theme-workspace .navbar.navbar-default:hover .navbar-nav>li>a{font-size:13px}
body.theme-workspace .navbar-default .navbar-nav>li>a:hover,body.theme-workspace .navbar-default .navbar-nav>li>a:focus{background:var(--surface-soft)!important;color:var(--text)!important}
body.theme-workspace .navbar-default .navbar-nav>li.active>a{background:var(--tint)!important;color:var(--primary)!important}
body.theme-workspace .navbar-nav .open>.dropdown-menu{position:static;float:none;width:100%;margin:4px 0 0;padding:4px;background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;box-shadow:none}
body.theme-workspace .navbar-nav .open>.dropdown-menu>li>a{padding:9px 12px;border-radius:9px;color:var(--muted)!important;font-size:13px;white-space:normal}
body.theme-workspace .navbar-nav .open>.dropdown-menu>li>a:hover{background:var(--tint)!important;color:var(--primary)!important}
body.theme-workspace .navbar-default .navbar-toggle{background:var(--surface-soft)!important;background-image:none!important;border:1px solid var(--line)!important;border-radius:10px}
body.theme-workspace .navbar-default .navbar-toggle .icon-bar{background:var(--primary)!important}
body.theme-workspace .caret{display:none}
/* 右侧留 16px：Bootstrap 的 .row 有 -15px 负边距，内边距比它小会顶出 3px 横向滚动条 */
body.theme-workspace>.container{margin:0!important;max-width:none!important;width:auto!important;padding:12px 16px 6px calc(var(--rail-w) + 24px)}
body.theme-workspace>footer.footer{margin:0!important;padding-left:calc(var(--rail-w) + 24px)}
body.theme-workspace .footer,body.theme-workspace .footer .text-muted{color:#6f7889;font-size:12px}
body.theme-workspace .well,body.theme-workspace .panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);color:var(--text)}
body.theme-workspace .well.bs-component{padding:22px 24px 24px}
body.theme-workspace .well.bs-component>h2{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin:0 0 18px;color:var(--text);font-size:22px;font-weight:800;letter-spacing:-.03em}
body.theme-workspace .well.bs-component>h2 .text-muted{color:var(--muted)!important;font-size:12px!important;font-weight:600}
body.theme-workspace .panel{overflow:hidden}
body.theme-workspace .panel-heading{background:var(--surface-soft)!important;border-bottom:1px solid var(--line)!important;color:var(--text)!important;font-weight:800}
body.theme-workspace .panel-title,body.theme-workspace .panel-title i{color:var(--text)}
body.theme-workspace .panel-footer,body.theme-workspace .tab-content,body.theme-workspace .list-group-item{background:var(--surface);border-color:var(--line);color:#c2cad6}
body.theme-workspace .searchbox .form-inline{display:flex;align-items:center;gap:8px}
body.theme-workspace .searchbox input.form-control[type="search"]{height:38px;min-width:230px;background:var(--surface-soft)!important;border:1px solid var(--line)!important;border-radius:11px!important;color:var(--text)!important;-webkit-text-fill-color:var(--text)!important;font-size:12px}
body.theme-workspace .searchbox input.form-control[type="search"]::placeholder{color:#6f7889;-webkit-text-fill-color:#6f7889}
body.theme-workspace .searchbox .btn{height:38px;background:var(--surface-soft)!important;border:1px solid var(--line)!important;border-radius:11px!important;color:var(--muted)!important;font-size:12px;font-weight:700}
body.theme-workspace .searchbox .btn:hover,body.theme-workspace .searchbox .btn:focus{background:var(--primary)!important;border-color:var(--primary)!important;color:#221a05!important}
body.theme-workspace .table-responsive{border-radius:14px;border:1px solid var(--line);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}
body.theme-workspace .table{margin:0;background:transparent}
body.theme-workspace .table>thead>tr>th{padding:11px 14px;background:var(--surface-soft)!important;border-bottom:1px solid var(--line)!important;color:var(--muted);font-size:11px;font-weight:750;letter-spacing:.06em}
body.theme-workspace .table>tbody>tr>td{padding:13px 14px;border-top:1px solid var(--line)!important;color:#c2cad6;font-size:13px;vertical-align:middle}
body.theme-workspace .table-striped>tbody>tr:nth-of-type(odd){background:rgba(255,255,255,.012)}
body.theme-workspace .table-hover>tbody>tr:hover{background:var(--surface-soft)}
body.theme-workspace .table-bordered,body.theme-workspace .table-bordered>tbody>tr>td,body.theme-workspace .table-bordered>thead>tr>th{border-color:var(--line)!important}
body.theme-workspace .filelist td a{color:var(--text);font-weight:750}
body.theme-workspace .filelist .fa-fw{margin-right:8px;color:var(--primary)}
body.theme-workspace .file-type-badge{display:inline-flex;padding:4px 9px;border-radius:7px;background:var(--surface-soft);color:var(--muted);font-size:11px;font-weight:750}
body.theme-workspace .file-action{display:inline-flex!important;align-items:center;gap:5px;padding:5px 10px;border-radius:9px;background:var(--surface-soft);color:#c2cad6!important;font-size:12px;font-weight:700}
body.theme-workspace .file-action:hover{background:var(--primary);color:#221a05!important}
body.theme-workspace .filelist-summary{color:var(--muted);font-size:12px}
body.theme-workspace .pagination>li>a,body.theme-workspace .pagination>li>span{background:var(--surface-soft);border:1px solid var(--line);border-radius:9px!important;color:#c2cad6}
body.theme-workspace .pagination>li>a:hover,body.theme-workspace .pagination>.active>a,body.theme-workspace .pagination>.active>a:hover{background:var(--primary)!important;border-color:var(--primary)!important;color:#221a05!important}
body.theme-workspace .pagination>.disabled>a,body.theme-workspace .pagination>.disabled>a:hover{background:var(--surface-soft);color:#5c6577}
body.theme-workspace .form-control{background:var(--surface-soft);border:1px solid var(--line);border-radius:11px;color:var(--text)}
body.theme-workspace .form-control:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(244,201,93,.14)}
body.theme-workspace .form-control::placeholder{color:#6f7889}
body.theme-workspace .input-group-addon{background:var(--surface-soft);border-color:var(--line);color:var(--muted)}
body.theme-workspace .help-block,body.theme-workspace .text-muted{color:var(--muted)}
body.theme-workspace .btn{border-radius:11px!important;font-weight:750}
body.theme-workspace .btn-raised.btn-primary,body.theme-workspace .btn-primary{background:var(--primary)!important;color:#221a05!important}
body.theme-workspace .btn-raised.btn-primary:hover,body.theme-workspace .btn-primary:hover{background:var(--primary-dark)!important;color:#221a05!important}
body.theme-workspace .btn-raised.btn-info,body.theme-workspace .btn-info{background:var(--accent)!important;color:#06241a!important}
body.theme-workspace .btn-raised.btn-danger,body.theme-workspace .btn-danger{background:var(--danger)!important;color:#2a0d0d!important}
body.theme-workspace .btn-default{background:var(--surface-soft)!important;border:1px solid var(--line)!important;color:#c2cad6!important}
body.theme-workspace .nav-tabs{background:var(--surface);border-bottom:1px solid var(--line)}
body.theme-workspace .nav-tabs>li>a,body.theme-workspace .nav-tabs>li>a:focus,body.theme-workspace .nav-tabs>li>a:hover{color:var(--muted)!important;border-color:transparent!important;background:transparent!important}
body.theme-workspace .nav-tabs>li.active{background:var(--tint);border-bottom:2px solid var(--primary)}
body.theme-workspace .nav-tabs>li.active>a{color:var(--primary)!important}
body.theme-workspace .checkbox label,body.theme-workspace .radio label{color:#c2cad6}
body.theme-workspace #app .infobox{background:var(--surface)!important;box-shadow:var(--shadow)}
body.theme-workspace #fileInput #pwd,body.theme-workspace #fileInput #storage_select{background:var(--surface-soft)!important;border-color:var(--line)!important;color:var(--text)!important;-webkit-text-fill-color:var(--text)}
body.theme-workspace .view{background:var(--surface-soft);border-radius:18px}
body.theme-workspace .tubiao{background:var(--tint);color:var(--primary)}
body.theme-workspace .elsetext,body.theme-workspace .filename{color:#c2cad6}
body.theme-workspace .elsetext p:first-child{color:var(--text)}
body.theme-workspace .image_view,body.theme-workspace .videoplayer{background:#0b0e14;border-radius:18px}
body.theme-workspace .fileinfo-table{background:var(--surface)}
body.theme-workspace .fileinfo-table th{background:var(--surface-soft);color:var(--muted)}
body.theme-workspace .fileinfo-table td{color:#c2cad6}
body.theme-workspace .progress{background:var(--surface-soft)}
body.theme-workspace .progress-bar{background:linear-gradient(90deg,var(--primary),var(--accent))}
body.theme-workspace .editor-toolbar{background:var(--surface-soft);border-color:var(--line);border-radius:12px}
body.theme-workspace #file_content{background:#0b0e14!important;color:var(--text)!important;border-color:var(--line)!important}
body.theme-workspace .upload-queue,body.theme-workspace .upload-message{background:var(--surface-soft);border-color:var(--line);box-shadow:none}
body.theme-workspace .upload-queue-item{border-bottom-color:var(--line)}
body.theme-workspace .upload-queue-name{color:var(--text)}
body.theme-workspace .upload-link-btn{background:var(--surface);border-color:var(--line);color:var(--primary)}
body.theme-workspace .upload-link-btn:hover{background:var(--primary);border-color:var(--primary);color:#221a05}
@media (max-width:767px){
body.theme-workspace .navbar.navbar-default{position:static;width:auto;margin:12px 12px 0;border-radius:16px;transition:none}
body.theme-workspace .navbar.navbar-default:hover{width:auto}
body.theme-workspace .navbar-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:0}
body.theme-workspace .navbar-header .navbar-brand{order:1}
body.theme-workspace .navbar-header .navbar-toggle{order:2;margin:0}
body.theme-workspace .navbar-brand{display:flex!important;align-items:center;gap:10px;padding:0 4px!important;font-size:15px!important;font-weight:800;text-align:left}
body.theme-workspace .navbar-collapse{padding:8px 10px 12px;background:var(--surface);border-top:1px solid var(--line)}
body.theme-workspace .navbar-default .navbar-nav>li>a{font-size:13px!important}
body.theme-workspace>.container{padding:12px 16px 6px!important}
body.theme-workspace>footer.footer{padding-left:0}
body.theme-workspace .well.bs-component{padding:16px 14px 18px}
body.theme-workspace .searchbox input.form-control[type="search"]{min-width:0;width:100%}
}

/* ===== 布局型外观的额外结构：CTA、副标题、统计卡、类型筛选（颜色走各外观的变量） ===== */
body.layout-theme .layout-cta{display:inline-flex;align-items:center;gap:8px;padding:11px 17px;border-radius:11px;background:var(--primary);color:#fff!important;font-size:13px;font-weight:800;text-decoration:none;box-shadow:var(--btn-shadow);transition:background .18s ease,transform .18s ease}
body.layout-theme .layout-cta:hover,body.layout-theme .layout-cta:focus{background:var(--primary-dark);color:#fff!important;text-decoration:none;transform:translateY(-1px)}
body.layout-theme .layout-page-sub{margin:-12px 0 18px;color:var(--muted);font-size:13px}
body.layout-theme .layout-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}
body.layout-theme .layout-stat{display:flex;align-items:center;gap:13px;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:15px}
body.layout-theme .layout-stat-icon{flex:0 0 38px;width:38px;height:38px;border-radius:12px;background:var(--tint);color:var(--primary);font-size:17px;line-height:38px;text-align:center}
body.layout-theme .layout-stat strong{display:block;color:var(--text);font-size:20px;font-weight:800;letter-spacing:-.03em}
body.layout-theme .layout-stat span{display:block;margin-top:2px;color:var(--muted);font-size:12px;font-weight:650}
body.layout-theme .layout-filters{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 14px}
body.layout-theme .layout-filter{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:9px;background:transparent;color:var(--muted)!important;font-size:13px;font-weight:750;text-decoration:none}
body.layout-theme .layout-filter em{font-style:normal;font-size:11px;font-weight:700;opacity:.75}
body.layout-theme .layout-filter:hover{background:var(--surface-soft);color:var(--text)!important;text-decoration:none}
body.layout-theme .layout-filter.active{background:var(--tint);color:var(--primary)!important}
/* 列表里的文件图标做成圆角色块，跟原型里的文件卡片一致 */
body.layout-theme .filelist tbody td .fa-fw{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;margin-right:10px;border-radius:9px;background:var(--tint);color:var(--primary);font-size:14px;vertical-align:middle}
body.layout-theme .filelist tbody tr[data-group="image"] td .fa-fw{background:rgba(22,163,105,.12);color:#16a369}
body.layout-theme .filelist tbody tr[data-group="video"] td .fa-fw{background:rgba(240,123,47,.12);color:#f07b2f}
body.layout-theme .filelist tbody tr[data-group="doc"] td .fa-fw{background:rgba(239,90,85,.12);color:#ef5a55}
body.layout-theme .filelist tbody tr[data-group="archive"] td .fa-fw{background:rgba(154,106,232,.14);color:#9a6ae8}
body.layout-theme .filelist tbody tr[data-group="audio"] td .fa-fw{background:rgba(59,130,246,.12);color:#3b82f6}
@media (max-width:900px){
body.layout-theme .layout-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
body.layout-theme .layout-cta{width:100%;justify-content:center}
body.layout-theme .layout-stat{padding:13px}
body.layout-theme .layout-stat strong{font-size:17px}
body.layout-theme .layout-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
body.layout-theme .layout-filter{flex:0 0 auto}
}

/* ===== 数据控制台风：标题行排布 ===== */
body.theme-console .well.bs-component>h2{margin-bottom:8px}
body.theme-console .well.bs-component>h2>.searchbox{margin-left:auto}
body.theme-console .layout-page-sub{margin:0 0 19px}
body.theme-console .layout-stat{box-shadow:var(--shadow)}
body.theme-console .layout-filters{padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
body.theme-console .layout-filter{border-radius:8px;font-size:12px}

/* ===== 上传门户风：文件列表改成卡片网格 ===== */
body.theme-portal .well.bs-component>h2{margin-bottom:6px}
body.theme-portal .well.bs-component>h2>.searchbox{margin-left:auto}
body.theme-portal .layout-page-sub{margin:0 0 18px}
body.theme-portal .filelist-main{display:block;border:0}
body.theme-portal .filelist-main thead{display:none}
body.theme-portal .filelist-main>tbody{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
body.theme-portal .filelist-main>tbody>tr{display:flex;flex-wrap:wrap;align-items:center;gap:0 6px;padding:17px;background:#fff;border:1px solid var(--line);border-radius:15px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
body.theme-portal .filelist-main>tbody>tr:hover{transform:translateY(-2px);border-color:#bad1c2;box-shadow:0 14px 35px rgba(23,33,29,.07);background:#fff}
body.theme-portal .filelist-main>tbody>tr>td{padding:0!important;border:0!important;max-width:none;background:transparent}
/* 卡片里只留有意义的字段：序号和上传者IP去掉，大小与格式并排 */
body.theme-portal .filelist-main>tbody>tr>td:nth-child(1),body.theme-portal .filelist-main>tbody>tr>td:nth-child(7){display:none}
body.theme-portal .filelist-main>tbody>tr>td:nth-child(3){order:1;flex:0 0 100%;overflow:hidden;margin:0 0 8px;color:var(--text);font-size:14px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}
body.theme-portal .filelist-main>tbody>tr>td:nth-child(3) .fa-fw{display:flex;width:42px;height:42px;margin:0 0 13px;border-radius:12px;font-size:18px}
body.theme-portal .filelist-main>tbody>tr>td:nth-child(4){order:2;color:var(--muted);font-size:12px}
body.theme-portal .filelist-main>tbody>tr>td:nth-child(5){order:3}
body.theme-portal .filelist-main>tbody>tr>td:nth-child(5):before{content:"\00B7";margin-right:6px;color:var(--muted)}
body.theme-portal .filelist-main>tbody>tr>td:nth-child(6){order:4;flex:0 0 100%;margin-top:14px;padding-top:12px!important;border-top:1px solid #edf0ee!important;color:#87918c;font-size:11px}
body.theme-portal .filelist-main>tbody>tr>td:nth-child(2){order:5;flex:0 0 100%;margin-top:10px}
body.theme-portal .filelist-main>tbody>tr>td .file-actions{display:flex;flex-wrap:wrap;gap:6px}
body.theme-portal .filelist-main>tbody>tr>td[colspan]{display:block;flex:0 0 100%;padding:26px!important;text-align:center;color:var(--muted)}
body.theme-portal .filelist-main>tbody>tr:has(td[colspan]){grid-column:1/-1}
@media (max-width:1100px){body.theme-portal .filelist tbody{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){body.theme-portal .filelist tbody{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){body.theme-portal .filelist tbody{grid-template-columns:minmax(0,1fr)}}

/* ===== 深色工作台风：列表 + 右侧预览两栏 ===== */
body.theme-workspace .layout-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.42fr);align-items:start;gap:12px}
body.theme-workspace .layout-crumb{display:flex;align-items:center;gap:8px;margin:0 0 10px;color:var(--muted);font-size:12px;font-weight:650}
body.theme-workspace .layout-crumb strong{color:var(--text)}
body.theme-workspace .well.bs-component>h2{margin-bottom:14px}
body.theme-workspace .well.bs-component>h2>.searchbox{margin-left:auto}
body.theme-workspace .layout-cta{color:#221a05!important;box-shadow:none}
body.theme-workspace .layout-cta:hover{color:#221a05!important}
body.theme-workspace .layout-filters{margin-bottom:12px}
body.theme-workspace .layout-filter{border-radius:999px;background:var(--surface-soft);font-size:12px}
body.theme-workspace .layout-filter.active{background:var(--primary);color:#221a05!important}
body.theme-workspace .filelist tbody tr{cursor:pointer}
body.theme-workspace .filelist tbody tr.is-selected{background:var(--surface-soft)!important;box-shadow:inset 3px 0 0 var(--primary)}
body.theme-workspace .filelist-main th:nth-child(1),body.theme-workspace .filelist-main td:nth-child(1),
body.theme-workspace .filelist-main th:nth-child(7),body.theme-workspace .filelist-main td:nth-child(7){display:none}
body.theme-workspace .layout-preview{position:sticky;top:12px;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
body.theme-workspace .layout-preview-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px;color:var(--muted);font-size:12px;font-weight:750;letter-spacing:.06em}
body.theme-workspace .layout-preview-empty{padding:28px 12px;color:var(--muted);font-size:13px;line-height:1.8;text-align:center}
body.theme-workspace .layout-preview-art{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:170px;max-height:300px;padding:10px;margin:0 0 16px;overflow:hidden;border-radius:14px;background:linear-gradient(135deg,var(--surface-soft),#12161f);color:var(--primary);font-size:52px}
/* 有真实图片/视频时不用留内边距，让画面铺满预览框 */
body.theme-workspace .layout-preview-art.is-media{padding:0;background:#0b0e14}
body.theme-workspace .layout-preview-img{max-width:100%;max-height:280px;object-fit:contain;border-radius:14px}
body.theme-workspace .layout-preview-video{width:100%;max-height:280px;border-radius:14px;background:#000;outline:0}
body.theme-workspace .layout-preview-audio{width:100%;max-width:280px}
/* 文本预览：等宽字体、可滚动，内容一律按纯文本显示 */
body.theme-workspace .layout-preview-art.is-text{display:block;padding:0;background:#0b0e14}
body.theme-workspace .layout-preview-text{margin:0;padding:14px 16px;max-height:300px;overflow:auto;background:transparent;border:0;border-radius:14px;color:#c2cad6;font-family:Consolas,Monaco,"Courier New",monospace;font-size:12px;line-height:1.75;white-space:pre-wrap;word-break:break-all;text-align:left}
body.theme-workspace .layout-preview-loading{color:var(--muted);font-size:13px}
body.theme-workspace .layout-preview-name{margin:0 0 4px;color:var(--text);font-size:17px;font-weight:800;line-height:1.5;word-break:break-all}
body.theme-workspace .layout-preview-sub{margin:0 0 14px;color:var(--muted);font-size:12px}
body.theme-workspace .layout-preview-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 16px}
body.theme-workspace .layout-preview-actions>*{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 10px;border-radius:11px;font-size:12px;font-weight:750;text-decoration:none;border:1px solid var(--line);background:var(--surface-soft);color:var(--text)!important;cursor:pointer}
body.theme-workspace .layout-preview-download{background:var(--primary)!important;border-color:var(--primary)!important;color:#221a05!important}
body.theme-workspace .layout-preview-download:hover{background:var(--primary-dark)!important;color:#221a05!important;text-decoration:none}
body.theme-workspace .layout-preview-copy:hover{border-color:var(--primary);color:var(--primary)!important}
body.theme-workspace .layout-preview-copy.is-copied{border-color:var(--accent);color:var(--accent)!important}
body.theme-workspace .layout-preview-copy.is-failed{border-color:var(--danger);color:var(--danger)!important}
body.theme-workspace .layout-preview-meta{margin:0 0 14px}
body.theme-workspace .layout-preview-meta>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
body.theme-workspace .layout-preview-meta dt{color:var(--muted);font-size:12px;font-weight:650}
body.theme-workspace .layout-preview-meta dd{margin:0;color:var(--text);font-size:12px;font-weight:750;text-align:right;word-break:break-all}
body.theme-workspace .layout-preview-link label{display:block;margin:0 0 6px;color:var(--muted);font-size:12px;font-weight:650}
body.theme-workspace .layout-preview-link-row{display:flex;align-items:center;gap:8px;padding:9px 10px;background:var(--surface-soft);border:1px solid var(--line);border-radius:11px}
body.theme-workspace .layout-preview-link-row code{flex:1;min-width:0;overflow:hidden;background:transparent;color:#c2cad6;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
body.theme-workspace .layout-preview-link-row button{flex:0 0 auto;padding:0;border:0;background:transparent;color:var(--muted);font-size:13px;cursor:pointer}
body.theme-workspace .layout-preview-link-row button:hover{color:var(--primary)}
body.theme-workspace .layout-preview-open{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:12px;padding:10px;border:1px solid var(--line);border-radius:11px;color:var(--muted)!important;font-size:12px;font-weight:700;text-decoration:none}
body.theme-workspace .layout-preview-open:hover{border-color:var(--primary);color:var(--primary)!important;text-decoration:none}
@media (max-width:1100px){
body.theme-workspace .layout-shell{grid-template-columns:minmax(0,1fr)}
body.theme-workspace .layout-preview{position:static}
}

/* 统计卡按类别分色，跟原型一致 */
body.layout-theme .layout-stat-image .layout-stat-icon{background:rgba(139,92,246,.12);color:#8b5cf6}
body.layout-theme .layout-stat-video .layout-stat-icon{background:rgba(240,123,47,.12);color:#f07b2f}
body.layout-theme .layout-stat-today .layout-stat-icon{background:rgba(22,163,105,.12);color:#16a369}

/* 深色工作台风：列表行改成"图标+文件名在前、操作在最右"的文件管理器排布 */
/* 表格整体改成块级：只把 tr 变成 flex 会让 thead/tbody 各自走表格列宽算法，列头和数据对不齐 */
body.theme-workspace .filelist-main{display:block;width:100%;table-layout:auto}
body.theme-workspace .filelist-main>thead,body.theme-workspace .filelist-main>tbody{display:block;width:100%}
body.theme-workspace .filelist-main>thead>tr,body.theme-workspace .filelist-main>tbody>tr{display:flex;align-items:center;gap:12px;width:100%}
/* 表头底色挂在整行上，挂在每个单元格上会被 gap 切成一段一段 */
body.theme-workspace .filelist-main>thead>tr{background:var(--surface-soft);border-radius:11px}
body.theme-workspace .filelist-main>thead>tr>th{background:transparent!important;border-bottom:0!important}
/* 行分隔线也要画在整行上，画在单元格上会被 gap 断成几截 */
body.theme-workspace .filelist-main>tbody>tr{border-top:1px solid var(--line)}
body.theme-workspace .filelist-main>tbody>tr:first-child{border-top:0}
body.theme-workspace .filelist-main>tbody>tr>td{border-top:0!important}
/* 基础样式给列表单元格加了 max-width:360px（防止长文件名撑破表格），
   flex 排布下它会卡住文件名列不让它撑满，这里换成用省略号收尾 */
body.theme-workspace .filelist-main>thead>tr>th,body.theme-workspace .filelist-main>tbody>tr>td{display:block;min-width:0;max-width:none}
body.theme-workspace .filelist-main>thead>tr>th:nth-child(3),body.theme-workspace .filelist-main>tbody>tr>td:nth-child(3){order:1;flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.theme-workspace .filelist-main>tbody>tr>td[colspan]{flex:1 1 100%;text-align:center;color:var(--muted)}
body.theme-workspace .filelist-main>thead>tr>th:nth-child(4),body.theme-workspace .filelist-main>tbody>tr>td:nth-child(4){order:2;flex:0 0 96px}
body.theme-workspace .filelist-main>thead>tr>th:nth-child(5),body.theme-workspace .filelist-main>tbody>tr>td:nth-child(5){order:3;flex:0 0 76px}
body.theme-workspace .filelist-main>thead>tr>th:nth-child(6),body.theme-workspace .filelist-main>tbody>tr>td:nth-child(6){order:4;flex:0 0 156px}
body.theme-workspace .filelist-main>thead>tr>th:nth-child(2),body.theme-workspace .filelist-main>tbody>tr>td:nth-child(2){order:5;flex:0 0 168px;text-align:right}
body.theme-workspace .filelist-main>tbody>tr>td .file-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
body.theme-workspace .filelist-main>tbody>tr>td:nth-child(3){color:var(--text);font-weight:700}
body.theme-workspace .filelist-main>tbody>tr>td:nth-child(4),body.theme-workspace .filelist-main>tbody>tr>td:nth-child(6){color:var(--muted);font-size:12px}
@media (max-width:820px){
body.theme-workspace .filelist-main>thead>tr>th:nth-child(5),body.theme-workspace .filelist-main>tbody>tr>td:nth-child(5),
body.theme-workspace .filelist-main>thead>tr>th:nth-child(6),body.theme-workspace .filelist-main>tbody>tr>td:nth-child(6){display:none}
}

/* 数据控制台风：侧栏底部的账号与统计卡片（由 header.php 输出） */
body.theme-console .layout-side-card{margin:14px 10px 6px;padding:14px;background:var(--surface-soft);border:1px solid var(--line);border-radius:14px}
body.theme-console .layout-side-row{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#51596c;font-size:12px;font-weight:750}
body.theme-console .layout-side-row span:last-child{color:var(--muted);font-weight:600}
body.theme-console .layout-side-bar{height:6px;margin:10px 0 8px;overflow:hidden;background:#e5e8ef;border-radius:999px}
body.theme-console .layout-side-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),#7b61ff)}
body.theme-console .layout-side-card small{color:var(--muted);font-size:11px}
body.theme-console .layout-side-card+.layout-side-card{margin-top:8px}
/* 基础规则：卡片的布局和文字颜色不依赖任何一套外观，各外观只在这之上改配色。
   之前只有 body.theme-xxx 下的规则，那条一旦没生效，整行就没有 flex 也没有颜色，
   标题会和背景撞色变成"透明" */
.layout-side-card{margin:14px 10px 6px;padding:14px;background:var(--surface-soft);border:1px solid var(--line);border-radius:14px}
.layout-side-card+.layout-side-card{margin-top:8px}
.layout-side-card small{color:var(--muted);font-size:11px}
.layout-side-row{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--text);font-size:12px;font-weight:750}
.layout-side-row strong{color:var(--text)}
.layout-side-bar{height:6px;margin:10px 0 8px;overflow:hidden;background:var(--line);border-radius:999px}
.layout-side-bar i{display:block;height:100%;border-radius:inherit;background:var(--primary)}
.layout-side-kv{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px;font-size:12px}
.layout-side-kv span{color:var(--muted)}
.layout-side-kv b{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-weight:700}
.layout-side-kv span{flex:0 0 auto}
.layout-side-tag{flex:0 0 auto;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700}
.layout-side-row strong{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.layout-side-tag-ok{color:#1f9254;background:rgba(31,146,84,.12)}
.layout-side-tag-warn{color:#b8860b;background:rgba(214,158,46,.16)}
.layout-side-tag-expired{color:var(--danger);background:rgba(220,53,69,.12)}
.layout-side-buy{display:block;margin-top:10px;padding:7px 0;border-radius:9px;background:var(--primary);color:#fff !important;font-size:12px;font-weight:700;text-align:center;text-decoration:none !important}
.layout-side-buy:hover{background:var(--primary-dark);color:#fff !important}
body.theme-console .layout-side-kv b{color:#2f3545}
body.theme-workspace .layout-side-card+.layout-side-card{margin-top:8px}
body.theme-workspace .layout-side-kv b{color:#e6ebf2}
body.theme-workspace .layout-side-card{margin:12px 12px 4px;padding:13px;background:var(--surface-soft);border:1px solid var(--line);border-radius:13px;white-space:nowrap;overflow:hidden}
body.theme-workspace .layout-side-row{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#c2cad6;font-size:12px;font-weight:750}
body.theme-workspace .layout-side-row span:last-child{color:var(--muted);font-weight:600}
body.theme-workspace .layout-side-bar{height:6px;margin:10px 0 8px;overflow:hidden;background:#2a313d;border-radius:999px}
body.theme-workspace .layout-side-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--accent))}
body.theme-workspace .layout-side-card small{color:var(--muted);font-size:11px}
/* 图标条收起时不显示这张卡，展开（悬停）时才出现 */
body.theme-workspace .layout-side-card{display:none}
body.theme-workspace .navbar.navbar-default:hover .layout-side-card{display:block}
@media (max-width:767px){
body.theme-console .layout-side-card,body.theme-workspace .layout-side-card{display:block;margin:10px 0 4px}
}

/* ===== 弹窗（layer）跟随外观 =====
   layer 自带的皮肤是固定白底深字，深色/玻璃外观下弹出来会白得刺眼、文字还会看不清。
   这里按各外观的卡片配色重新上色；半透明的玻璃外观单独给不透明底色，否则弹窗会透出下面的内容。 */
body{--popup-bg:var(--surface,#fff);--popup-soft:var(--surface-soft,#f6f8fb);--popup-text:var(--text,#1f2937);--popup-line:var(--line,#e5e7eb);--popup-primary:var(--primary,#2f86ff);--popup-on-primary:#fff;--popup-shadow:0 24px 60px rgba(15,23,42,.22)}
body.theme-night{--popup-bg:#101824;--popup-soft:#0b1220;--popup-on-primary:#fff;--popup-shadow:0 24px 60px rgba(0,0,0,.5)}
body.theme-neon{--popup-bg:#0b1427;--popup-soft:#0d1a31;--popup-on-primary:#06101f;--popup-shadow:0 24px 60px rgba(0,0,0,.55)}
body.theme-aurora{--popup-bg:#1e2a6b;--popup-soft:#17225c;--popup-text:#eef5ff;--popup-line:rgba(255,255,255,.18);--popup-on-primary:#10204a;--popup-shadow:0 24px 60px rgba(9,10,48,.5)}
body.theme-onefour{--popup-bg:#09090c;--popup-soft:#111116;--popup-on-primary:#050505;--popup-shadow:0 24px 60px rgba(0,0,0,.6)}
body.theme-sunset{--popup-bg:#4a1030;--popup-soft:#3c0d28;--popup-text:#fff3ea;--popup-line:rgba(255,255,255,.2);--popup-on-primary:#3d0f2e;--popup-shadow:0 24px 60px rgba(40,6,26,.5)}
body.theme-abyss{--popup-bg:#08303f;--popup-soft:#062634;--popup-text:#e8fbff;--popup-line:rgba(255,255,255,.2);--popup-on-primary:#062434;--popup-shadow:0 24px 60px rgba(2,20,30,.5)}
body.theme-emerald{--popup-bg:#0a3b26;--popup-soft:#07301f;--popup-text:#eafff3;--popup-line:rgba(255,255,255,.2);--popup-on-primary:#07301f;--popup-shadow:0 24px 60px rgba(2,26,16,.5)}
body.theme-sakura{--popup-bg:#ffffff;--popup-soft:#fdf0f6;--popup-text:#3d2030;--popup-line:rgba(190,120,160,.22);--popup-on-primary:#fff;--popup-shadow:0 24px 60px rgba(190,120,160,.28)}
body.theme-workspace{--popup-bg:#171c25;--popup-soft:#1d232e;--popup-on-primary:#221a05;--popup-shadow:0 24px 60px rgba(0,0,0,.5)}
/* 轻提示条：跟随外观，不再固定深色 */
body .layui-layer-hui{background:var(--popup-bg) !important;border:1px solid var(--popup-line);border-radius:12px;box-shadow:var(--popup-shadow);color:var(--popup-text) !important;opacity:1 !important;filter:none !important}
body .layui-layer-hui .layui-layer-content{padding:14px 20px;color:var(--popup-text);font-size:14px;line-height:1.7;text-align:center}
body .layui-layer:not(.layui-layer-hui):not(.layui-layer-loading):not(.layui-layer-tips){background:var(--popup-bg);border-radius:14px;box-shadow:var(--popup-shadow);color:var(--popup-text)}
body .layui-layer-title{background:var(--popup-soft);border-bottom:1px solid var(--popup-line);border-radius:14px 14px 0 0;color:var(--popup-text);font-weight:750}
body .layui-layer-content,body .layui-layer-dialog .layui-layer-content{color:var(--popup-text)}
body .layui-layer-page .layui-layer-content{background:var(--popup-bg)}
body .layui-layer-btn{border-top:1px solid var(--popup-line);padding-top:12px}
body .layui-layer-btn a{height:32px;line-height:30px;padding:0 14px;background:var(--popup-soft);border:1px solid var(--popup-line);border-radius:9px;color:var(--popup-text);font-weight:700}
body .layui-layer-btn a:hover{border-color:var(--popup-primary);color:var(--popup-primary)}
body .layui-layer-btn .layui-layer-btn0{background:var(--popup-primary);border-color:var(--popup-primary);color:var(--popup-on-primary)}
body .layui-layer-btn .layui-layer-btn0:hover{opacity:.9;color:var(--popup-on-primary)}
body .layui-layer-setwin .layui-layer-close1{opacity:.7}
body .layui-layer-setwin .layui-layer-close1:hover{opacity:1}
/* 深色外观下 layer 的关闭图标是深色雪碧图，反色一下才看得见 */
body.theme-night .layui-layer-setwin a,body.theme-neon .layui-layer-setwin a,body.theme-aurora .layui-layer-setwin a,
body.theme-onefour .layui-layer-setwin a,body.theme-sunset .layui-layer-setwin a,body.theme-abyss .layui-layer-setwin a,
body.theme-emerald .layui-layer-setwin a,body.theme-workspace .layui-layer-setwin a{filter:invert(1) brightness(1.7)}
/* loading 和纯文字提示保持 layer 原样，套上主题底色反而会变成一个大方块 */
body .layui-layer-loading{background:none;box-shadow:none}

/* 文件页的外链只读输入框：基础样式写死了浅底深字，四套布局型外观要各自覆盖（深色工作台风尤其明显） */
body.theme-dashboard .tab-content .input-group .form-control[readonly]{background:#f5f7fb!important;border-color:#e7eaf1!important;color:#1f2430!important;-webkit-text-fill-color:#1f2430}
body.theme-dashboard .tab-content .input-group .form-control[readonly]:focus{background:#f5f7fb!important;border-color:#a9b7ff!important;box-shadow:0 0 0 4px rgba(79,107,255,.13)!important}
body.theme-console .tab-content .input-group .form-control[readonly]{background:#f8f9fb!important;border-color:#e7eaf0!important;color:#151c2d!important;-webkit-text-fill-color:#151c2d}
body.theme-console .tab-content .input-group .form-control[readonly]:focus{background:#f8f9fb!important;border-color:#a8bcff!important;box-shadow:0 0 0 4px rgba(56,103,244,.12)!important}
body.theme-portal .tab-content .input-group .form-control[readonly]{background:#f2f5f3!important;border-color:#dfe7e2!important;color:#17211d!important;-webkit-text-fill-color:#17211d}
body.theme-portal .tab-content .input-group .form-control[readonly]:focus{background:#f2f5f3!important;border-color:#8dc4ac!important;box-shadow:0 0 0 4px rgba(13,124,87,.12)!important}
body.theme-workspace .tab-content .input-group .form-control[readonly]{background:#1d232e!important;border-color:#2a313d!important;color:#edf1f7!important;-webkit-text-fill-color:#edf1f7}
body.theme-workspace .tab-content .input-group .form-control[readonly]:focus{background:#1d232e!important;border-color:#f4c95d!important;box-shadow:0 0 0 4px rgba(244,201,93,.16)!important}
/* 同一块区域里的代码调用文本框也一样 */
body.theme-workspace .tab-content textarea.form-control{background:#1d232e!important;border-color:#2a313d!important;color:#edf1f7!important;-webkit-text-fill-color:#edf1f7}

/* ===== 404 页面（静态 404.html 用，不依赖 Bootstrap，颜色全部取自当前外观的变量） ===== */
.errorpage-wrap{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px}
.errorpage-card{width:100%;max-width:520px;padding:52px 34px 56px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);text-align:center}
.errorpage-code{margin:0 0 8px;color:var(--primary);font-size:104px;font-weight:900;line-height:1;letter-spacing:-.06em}
.errorpage-title{margin:0 0 12px;color:var(--text);font-size:24px;font-weight:800;line-height:1.4}
.errorpage-text{margin:0 auto 28px;max-width:400px;color:var(--muted);font-size:14px;line-height:1.9}
.errorpage-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.errorpage-btn{display:inline-flex;align-items:center;justify-content:center;min-width:132px;padding:12px 22px;border:1px solid var(--line);border-radius:11px;background:var(--surface-soft);color:var(--text)!important;font-size:15px;font-weight:700;text-decoration:none;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.errorpage-btn:hover,.errorpage-btn:focus{border-color:var(--primary);color:var(--primary)!important;text-decoration:none;transform:translateY(-1px)}
.errorpage-btn-primary{background:var(--primary);border-color:var(--primary);color:#fff!important}
.errorpage-btn-primary:hover,.errorpage-btn-primary:focus{background:var(--primary-dark);border-color:var(--primary-dark);color:#fff!important}
/* 深色工作台风的强调色是浅琥珀，主按钮上要用深色字 */
body.theme-workspace .errorpage-btn-primary,body.theme-workspace .errorpage-btn-primary:hover{color:#221a05!important}
body.theme-neon .errorpage-btn-primary,body.theme-neon .errorpage-btn-primary:hover{color:#06101f!important}
body.theme-onefour .errorpage-btn-primary,body.theme-onefour .errorpage-btn-primary:hover{color:#050505!important}
body.theme-aurora .errorpage-btn-primary,body.theme-aurora .errorpage-btn-primary:hover{color:#10204a!important}
body.theme-abyss .errorpage-btn-primary,body.theme-abyss .errorpage-btn-primary:hover{color:#062434!important}
body.theme-emerald .errorpage-btn-primary,body.theme-emerald .errorpage-btn-primary:hover{color:#07301f!important}
body.theme-sunset .errorpage-btn-primary,body.theme-sunset .errorpage-btn-primary:hover{color:#3d0f2e!important}
/* 玻璃拟态外观的卡片是半透明的，错误页要加一层模糊才看得清 */
body.theme-aurora .errorpage-card,body.theme-sunset .errorpage-card,body.theme-abyss .errorpage-card,
body.theme-emerald .errorpage-card,body.theme-sakura .errorpage-card{backdrop-filter:blur(18px)}
@media (max-width:767px){
.errorpage-card{padding:40px 20px 44px;border-radius:16px}
.errorpage-code{font-size:76px}
.errorpage-title{font-size:20px}
.errorpage-btn{width:100%;min-width:0}
}

/* ===== 购买权限页：配色全部取自当前外观的变量，19 套外观通用 ===== */
.buypage .buy-sub{margin:-8px 0 18px;color:var(--muted);font-size:14px}
.buy-notice{display:flex;align-items:flex-start;gap:8px;margin:0 0 18px;padding:12px 14px;border:1px solid var(--line);border-left:3px solid var(--primary);border-radius:10px;background:var(--surface-soft);color:var(--text);font-size:13px;line-height:22px}
.buy-notice>i{flex:none;width:16px;height:22px;font-size:14px;line-height:22px;text-align:center;color:var(--primary)}
.buy-notice.is-ok>i{color:#1f9254}
.buy-notice.is-warn>i{color:#b8860b}
.buy-current{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 20px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}
.buy-current span{color:var(--muted);font-size:13px}
.buy-current strong{color:var(--text);font-size:14px;font-weight:750}
.buy-methods{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 18px}
.buy-methods>span{color:var(--muted);font-size:13px}
.buy-methods-single b{color:var(--text);font-size:14px;font-weight:750}
.buy-method{display:flex;align-items:baseline;gap:8px;margin:0;padding:9px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);cursor:pointer;font-weight:400;transition:border-color .2s ease,background .2s ease}
.buy-method input{position:absolute;opacity:0;width:0;height:0}
.buy-method b{color:var(--text);font-size:13px;font-weight:750}
.buy-method i{color:var(--muted);font-size:12px;font-style:normal}
.buy-method:hover{border-color:var(--primary)}
.buy-method.is-on{border-color:var(--primary);background:var(--surface-soft);box-shadow:inset 0 0 0 1px var(--primary)}
.buy-notice.is-ok{border-color:rgba(31,146,84,.35);color:#1f9254}
.buy-notice.is-warn{border-color:rgba(214,158,46,.4);color:#b8860b}
.buy-jump{display:inline-block;margin:6px 0 2px;padding:11px 26px;border-radius:10px;background:var(--primary);color:#fff !important;font-size:14px;font-weight:750;text-decoration:none !important}
.buy-jump:hover{background:var(--primary-dark);color:#fff !important}
.buy-group+.buy-group{margin-top:26px}
.buy-group-title{display:flex;align-items:baseline;gap:10px;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.buy-group-title span{color:var(--text);font-size:15px;font-weight:750}
.buy-group-title i{color:var(--muted);font-size:12px;font-style:normal}
.buy-plans{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.buy-plan{display:flex;flex-direction:column;padding:22px 20px 20px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.buy-plan:hover{transform:translateY(-2px);border-color:var(--primary)}
.buy-plan-name{color:var(--text);font-size:16px;font-weight:800}
.buy-plan-price{margin:10px 0 14px;color:var(--primary);font-size:34px;font-weight:900;line-height:1;letter-spacing:-.03em}
.buy-plan-price small{margin-right:2px;font-size:16px;font-weight:700}
.buy-plan-list{flex:1;margin:0 0 18px;padding:0;list-style:none}
.buy-plan-list li{display:flex;align-items:flex-start;gap:8px;padding:5px 0;color:var(--muted);font-size:13px;line-height:1.6}
.buy-plan-list li i{margin-top:3px;color:var(--accent);font-size:12px}
.buy-plan-warn{margin:0 0 12px;padding:7px 10px;border-radius:8px;background:rgba(214,158,46,.12);color:#b8860b;font-size:12px;line-height:1.6}
.buy-plan-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:11px 18px;border:0;border-radius:11px;background:var(--primary);color:#fff!important;font-size:14px;font-weight:750;text-decoration:none;cursor:pointer;transition:background .18s ease}
.buy-plan-btn:hover,.buy-plan-btn:focus{background:var(--primary-dark);color:#fff!important;text-decoration:none}
.buy-plan-btn[disabled]{opacity:.6;cursor:default}
.buy-tip{margin:18px 0 0;color:var(--muted);font-size:12px;line-height:1.8}
/* 强调色偏浅的外观，按钮要用深色字 */
body.theme-workspace .buy-plan-btn,body.theme-workspace .buy-plan-btn:hover{color:#221a05!important}
body.theme-neon .buy-plan-btn,body.theme-neon .buy-plan-btn:hover{color:#06101f!important}
body.theme-onefour .buy-plan-btn,body.theme-onefour .buy-plan-btn:hover{color:#050505!important}
body.theme-aurora .buy-plan-btn,body.theme-aurora .buy-plan-btn:hover{color:#10204a!important}
body.theme-abyss .buy-plan-btn,body.theme-abyss .buy-plan-btn:hover{color:#062434!important}
body.theme-emerald .buy-plan-btn,body.theme-emerald .buy-plan-btn:hover{color:#07301f!important}
body.theme-sunset .buy-plan-btn,body.theme-sunset .buy-plan-btn:hover{color:#3d0f2e!important}
/* 扫码弹窗 */
.buy-mask{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(8,12,20,.62)}
.buy-mask[hidden]{display:none}
.buy-dialog{position:relative;width:100%;max-width:340px;padding:26px 24px 22px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 24px 60px rgba(0,0,0,.32);text-align:center}
.buy-close{position:absolute;top:10px;right:14px;border:0;background:transparent;color:var(--muted);font-size:24px;line-height:1;cursor:pointer}
.buy-close:hover{color:var(--text)}
.buy-dialog-title{color:var(--text);font-size:16px;font-weight:800}
.buy-dialog-plan{margin:4px 0 16px;color:var(--muted);font-size:13px}
.buy-channels{display:flex;flex-direction:column;gap:10px;margin:4px 0 2px}
.buy-channels[hidden]{display:none}
.buy-channel{display:flex;align-items:center;gap:12px;width:100%;padding:13px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);font-size:15px;font-weight:700;cursor:pointer;transition:border-color .2s ease,transform .15s ease}
.buy-channel:hover{border-color:var(--primary);transform:translateY(-1px)}
.buy-channel i{width:26px;font-size:20px;text-align:center}
.buy-channel-alipay i{color:#1677ff}
.buy-channel-wxpay i{color:#07c160}
.buy-channel-qqpay i{color:#12b7f5}
.buy-qr[hidden],.buy-jump[hidden]{display:none}
.buy-qr{display:flex;align-items:center;justify-content:center;min-height:200px;padding:10px;border-radius:12px;background:#fff}
.buy-qr img,.buy-qr canvas{display:block}
.buy-amount{margin:14px 0 6px;color:var(--text);font-size:18px;font-weight:800}
.buy-state{color:var(--muted);font-size:13px;line-height:1.7}
.buy-state.is-ok{color:var(--accent);font-weight:700}
.buy-state.is-error{color:var(--danger);font-weight:700}
@media (max-width:767px){
.buy-plans{grid-template-columns:minmax(0,1fr)}
.buy-plan-price{font-size:30px}
}

/* ===== 个人中心：配色全部取自当前外观的变量，20 套外观通用 =====
   只用各外观都一定定义了的那几个：--surface / --surface-soft / --text / --muted /
   --line / --primary / --primary-dark / --accent / --danger / --shadow。
   --tint 之类只有布局型外观才有，这里一律不用，否则 15 套配色型外观下会变透明。 */
.usercenter .uc-head{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:0 0 18px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}
.uc-avatar{flex:none;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;overflow:hidden;background:var(--surface);border:1px solid var(--line);color:var(--primary);font-size:22px}
.uc-avatar img{width:100%;height:100%;object-fit:cover}
.uc-head-main{flex:1 1 200px;min-width:0}
.uc-head-main strong{display:block;color:var(--text);font-size:17px;font-weight:800;letter-spacing:-.01em;word-break:break-all}
.uc-head-main small{display:block;margin-top:3px;color:var(--muted);font-size:12px;word-break:break-all}
.uc-tag{flex:none;padding:5px 11px;border-radius:999px;font-size:12px;font-weight:750;border:1px solid var(--line);background:var(--surface);color:var(--muted)}
.uc-tag-ok{border-color:rgba(31,146,84,.35);color:#1f9254}
.uc-tag-warn{border-color:rgba(214,158,46,.4);color:#b8860b}
.uc-tag-expired{border-color:rgba(220,53,69,.35);color:var(--danger)}
/* 页签 */
.uc-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 20px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.uc-tab{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:10px;color:var(--muted)!important;font-size:13px;font-weight:700;text-decoration:none!important;transition:background .18s ease,color .18s ease}
.uc-tab:hover{background:var(--surface-soft);color:var(--text)!important}
.uc-tab.active{background:var(--primary);color:#fff!important}
/* 概览的四张数字卡 */
.uc-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 20px}
.uc-card{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}
.uc-card-icon{flex:none;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:var(--surface-soft);color:var(--primary);font-size:16px}
/* 必须限定到 >div> 这一层：.uc-card span 会连 .uc-card-icon 一起命中，
   而且 (0,1,1) 比 .uc-card-icon 的 (0,1,0) 高，图标会被改成灰色小字块 */
.uc-card>div>strong{display:block;color:var(--text);font-size:19px;font-weight:800;letter-spacing:-.02em;word-break:break-all}
.uc-card>div>span{display:block;margin-top:2px;color:var(--muted);font-size:12px}
/* 分区 */
.uc-section{margin:0 0 22px}
.uc-section-title{margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.uc-section-title span{color:var(--text);font-size:15px;font-weight:750}
.uc-kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 24px;margin:0}
.uc-kv>div{display:flex;align-items:baseline;gap:10px;padding:7px 0}
.uc-kv dt{flex:none;width:84px;color:var(--muted);font-size:13px;font-weight:600}
.uc-kv dd{margin:0;color:var(--text);font-size:13px;font-weight:650;word-break:break-all}
.uc-dim{color:var(--muted);font-weight:400}
/* dd 上的 word-break:break-all 是给长邮箱用的，会把 IP 从点号中间劈开
   （95.181. / 191.*）。这里改回 normal 让 IP 整体换行；
   不用 nowrap 是因为 IPv6 地址可能真的比一栏还宽，那样会把版面顶出去，
   overflow-wrap 留一条"实在放不下才断"的后路 */
.uc-kv dd .uc-dim{display:inline-block;word-break:normal;overflow-wrap:break-word}
/* 类型分布条 */
.uc-bars{display:flex;flex-direction:column;gap:9px}
.uc-bar-row{display:flex;align-items:center;gap:12px}
.uc-bar-row em{flex:none;width:52px;color:var(--muted);font-size:12px;font-style:normal}
.uc-bar-row b{flex:none;width:52px;color:var(--text);font-size:12px;font-weight:700;text-align:right}
.uc-bar{flex:1;height:8px;border-radius:999px;background:var(--surface-soft);overflow:hidden}
.uc-bar>i{display:block;height:100%;border-radius:999px;background:var(--primary)}
.uc-bar-image{background:#4285f4!important}
.uc-bar-video{background:#f4544c!important}
.uc-bar-audio{background:#2fb457!important}
.uc-bar-doc{background:#e8971b!important}
.uc-bar-archive{background:#7c5cff!important}
.uc-bar-other{background:#8a8a8f!important}
/* 按钮 / 输入框 */
.uc-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text)!important;font-size:13px;font-weight:700;text-decoration:none!important;cursor:pointer;transition:border-color .18s ease,background .18s ease}
.uc-btn:hover{border-color:var(--primary);color:var(--primary)!important}
.uc-btn-primary{background:var(--primary);border-color:var(--primary);color:#fff!important}
.uc-btn-primary:hover{background:var(--primary-dark);border-color:var(--primary-dark);color:#fff!important}
.uc-btn-danger{background:var(--danger);border-color:var(--danger);color:#fff!important}
.uc-btn-danger:hover{opacity:.88;border-color:var(--danger);color:#fff!important}
.uc-input{height:38px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);font-size:13px}
.uc-input:focus{outline:0;border-color:var(--primary)}
.uc-form{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.uc-form .uc-input{flex:1 1 240px;max-width:340px}
.uc-form-col{flex-direction:column;align-items:stretch;max-width:340px}
/* .uc-form .uc-input 的 flex:1 1 240px 是按横排写的；竖排时主轴变成纵向，
   240px 会当成高度用，三个输入框会被撑成大方块，这里必须收掉 */
.uc-form-col .uc-input{flex:none}
.uc-form-col .uc-input,.uc-form-col .uc-btn{max-width:none;width:100%}
.uc-tip{margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.8}
.uc-hint{display:flex;align-items:flex-start;gap:7px;margin:0 0 14px;padding:9px 12px;border:1px solid var(--line);border-left:3px solid var(--primary);border-radius:9px;background:var(--surface-soft)}
.uc-hint>i{flex:none;margin-top:2px;color:var(--primary)}
/* 登录方式绑定 */
.uc-binds{display:flex;flex-direction:column;gap:10px}
.uc-bind{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.uc-bind.is-empty{background:var(--surface-soft)}
.uc-bind-icon{flex:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:var(--surface-soft);color:var(--muted);font-size:17px}
.uc-bind.is-empty .uc-bind-icon{background:var(--surface)}
.uc-bind-qq{color:#12b7f5}
.uc-bind-wx{color:#07c160}
.uc-bind-mail{color:#f0a020}
.uc-bind-main{flex:1 1 auto;min-width:0}
.uc-bind-main strong{display:block;color:var(--text);font-size:14px;font-weight:750}
.uc-bind-main small{display:block;margin-top:2px;color:var(--muted);font-size:12px;word-break:break-all}
.uc-bind-tag{margin-left:7px;padding:2px 7px;border-radius:6px;background:var(--surface-soft);color:var(--muted);font-size:11px;font-style:normal;font-weight:700}
.uc-btn-sm{flex:none;padding:6px 12px;font-size:12px}
/* “不可解绑”这几个字没有 flex 属性会被压缩换行，栏子一窄就特别明显 */
.uc-bind .uc-dim{flex:none;font-size:12px;white-space:nowrap}
/* 绑定邮箱的表单：验证码和按钮并排一行，其余各占一行 */
.uc-bindmail-form{margin-top:14px}
.uc-form-row{display:flex;gap:8px;width:100%}
/* .uc-form-col 给输入框设了 width:100%，在这一行里会把按钮挤出去，收回 auto */
.uc-form-row .uc-input{flex:1 1 auto;width:auto;min-width:0;max-width:none}
.uc-form-row .uc-btn{flex:none;white-space:nowrap}
/* 和 .uc-batchbar 同一个道理：.uc-form 的 display:flex 会把 [hidden] 顶掉 */
.uc-form[hidden]{display:none}
/* 账号设置的三栏布局。侧栏型外观下内容区能到 1600px 宽，
   单栏铺开时右边会空掉一大半；auto-fit + minmax 宽屏三栏、中屏两栏、窄屏一栏 */
/* 不写 align-items:start —— 让三张卡按最高的那张拉平，底边对齐；
   否则内容多少不一时下沿参差，短的那两栏底下会空出一块 */
.uc-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.uc-col{padding:18px 18px 20px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}
.uc-col .uc-section{margin:0}
.uc-col .uc-section+.uc-section{margin-top:24px}
/* 栏内宽度就那么点，键值对改成单列，表单也不用再卡 340px 了 */
.uc-cols .uc-kv{grid-template-columns:minmax(0,1fr);gap:0}
.uc-cols .uc-form .uc-input{max-width:none}
.uc-cols .uc-form-col{max-width:none}
.uc-cols .uc-tip{margin-top:10px}
/* 自建输入弹窗（layer.prompt 不允许空值，改密码要留空取消，只能自己搭一个） */
.uc-dialog{padding:16px 18px}
.uc-dialog-tip{margin:0 0 10px;color:var(--muted);font-size:12px;line-height:1.7}
.uc-dialog-input{width:100%}
/* 文件页的工具条与筛选 */
.uc-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px}
.uc-search{flex:1 1 220px;max-width:320px;height:38px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);font-size:13px}
.uc-search:focus{outline:0;border-color:var(--primary)}
.uc-toolbar .uc-btn-primary{margin-left:auto}
.uc-filters{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.uc-filter{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:9px;color:var(--muted)!important;font-size:13px;font-weight:700;text-decoration:none!important}
.uc-filter em{font-style:normal;font-size:11px;opacity:.75}
.uc-filter:hover{background:var(--surface-soft);color:var(--text)!important}
.uc-filter.active{background:var(--primary);color:#fff!important}
.uc-filter.active em{opacity:.85}
/* 批量操作条。display:flex 特异性比 [hidden] 的默认样式高，
   不显式写这一条的话，JS 把 hidden 设回去也藏不住它 */
.uc-batchbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;padding:10px 14px;border:1px solid var(--primary);border-radius:11px;background:var(--surface-soft)}
.uc-batchbar[hidden]{display:none}
.uc-batchbar>span{color:var(--text);font-size:13px}
.uc-batchbar b{color:var(--primary);font-weight:800}
.uc-batchbar .uc-btn{padding:6px 12px;font-size:12px}
/* 文件表格 */
.uc-filelist{margin-bottom:0}
.uc-filelist .uc-col-check{width:38px;text-align:center}
/* 裸的 checkbox 在深色外观下几乎看不见，用 accent-color 跟着主色走 */
.uc-filelist .uc-col-check input[type="checkbox"]{width:16px;height:16px;margin:0;accent-color:var(--primary);cursor:pointer;vertical-align:middle}
.uc-filelist .uc-col-check input[type="checkbox"]:disabled{cursor:not-allowed;opacity:.45}
.uc-filelist .uc-col-size{width:92px;white-space:nowrap}
.uc-filelist .uc-col-state{width:170px}
.uc-filelist .uc-col-time{width:158px;white-space:nowrap}
.uc-filelist .uc-col-act{width:1%;white-space:nowrap}
.uc-filelist tbody td{vertical-align:middle}
.uc-filelist .uc-col-name{max-width:340px}
.uc-filelist .uc-col-name .fa-fw{margin-right:8px;color:var(--primary)}
.uc-name{display:inline-block;max-width:290px;overflow:hidden;color:var(--text);font-weight:700;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}
.uc-filelist tr.is-blocked .uc-name{opacity:.6;text-decoration:line-through}
.uc-empty{padding:34px 0!important;color:var(--muted);text-align:center}
.uc-badge{display:inline-flex;align-items:center;gap:4px;margin:2px 4px 2px 0;padding:3px 8px;border-radius:7px;border:1px solid var(--line);background:var(--surface-soft);color:var(--muted);font-size:11px;font-weight:700;white-space:nowrap}
.uc-badge-ok{border-color:rgba(31,146,84,.3);color:#1f9254}
.uc-badge-warn{border-color:rgba(214,158,46,.4);color:#b8860b}
.uc-badge-danger{border-color:rgba(220,53,69,.35);color:var(--danger)}
.uc-badge-muted{color:var(--muted)}
/* 行内操作按钮 */
.uc-acts{display:flex;align-items:center;gap:5px}
.uc-act{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:0;border-radius:8px;background:var(--surface-soft);color:var(--muted)!important;font-size:13px;text-decoration:none!important;cursor:pointer;transition:background .16s ease,color .16s ease}
.uc-act:hover{background:var(--primary);color:#fff!important}
.uc-act-danger:hover{background:var(--danger);color:#fff!important}
/* 订单表格 */
.uc-orderlist .uc-order-no{font-family:Consolas,Monaco,"Courier New",monospace;font-size:12px;color:var(--muted)}
.uc-orderlist .uc-order-price{color:var(--text);font-weight:800;white-space:nowrap}
/* 强调色偏浅的外观，实心按钮/页签上要用深色字，白字看不清 */
body.theme-workspace .uc-tab.active,body.theme-workspace .uc-filter.active,body.theme-workspace .uc-btn-primary,body.theme-workspace .uc-btn-primary:hover,body.theme-workspace .uc-act:hover{color:#221a05!important}
body.theme-neon .uc-tab.active,body.theme-neon .uc-filter.active,body.theme-neon .uc-btn-primary,body.theme-neon .uc-btn-primary:hover,body.theme-neon .uc-act:hover{color:#06101f!important}
body.theme-onefour .uc-tab.active,body.theme-onefour .uc-filter.active,body.theme-onefour .uc-btn-primary,body.theme-onefour .uc-btn-primary:hover,body.theme-onefour .uc-act:hover{color:#050505!important}
body.theme-aurora .uc-tab.active,body.theme-aurora .uc-filter.active,body.theme-aurora .uc-btn-primary,body.theme-aurora .uc-btn-primary:hover,body.theme-aurora .uc-act:hover{color:#10204a!important}
body.theme-abyss .uc-tab.active,body.theme-abyss .uc-filter.active,body.theme-abyss .uc-btn-primary,body.theme-abyss .uc-btn-primary:hover,body.theme-abyss .uc-act:hover{color:#062434!important}
body.theme-emerald .uc-tab.active,body.theme-emerald .uc-filter.active,body.theme-emerald .uc-btn-primary,body.theme-emerald .uc-btn-primary:hover,body.theme-emerald .uc-act:hover{color:#07301f!important}
body.theme-sunset .uc-tab.active,body.theme-sunset .uc-filter.active,body.theme-sunset .uc-btn-primary,body.theme-sunset .uc-btn-primary:hover,body.theme-sunset .uc-act:hover{color:#3d0f2e!important}
@media (max-width:991px){
.uc-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.uc-kv{grid-template-columns:minmax(0,1fr)}
/* 窄屏放不下这么多列：时间和状态先让位，文件名和操作必须留着 */
.uc-filelist .uc-col-time{display:none}
}
@media (max-width:767px){
/* 窄屏下 avatar(52) + 昵称(基准200) + 标签 三者加起来超过一行宽度，
   标签会掉到第二行、左对齐贴在头像下面，看着很散。把头像和标签收小、
   昵称基准压到 120px，三者就能并排 */
.usercenter .uc-head{padding:13px;gap:10px}
.uc-avatar{width:44px;height:44px;font-size:18px}
.uc-head-main{flex:1 1 120px}
.uc-head-main strong{font-size:16px}
.uc-tag{padding:4px 9px;font-size:11px}
.uc-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:8px}
.uc-tab{flex:0 0 auto}
.uc-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
.uc-filter{flex:0 0 auto}
.uc-toolbar .uc-btn-primary{margin-left:0}
.uc-search{max-width:none}
.uc-filelist .uc-col-state,.uc-filelist .uc-col-size{display:none}
.uc-name{max-width:160px}
.uc-form .uc-input,.uc-form-col{max-width:none}
}

/* ===== macOS 窗口风（布局型）：整站套进一个 macOS 窗口，文件列表默认是访达式图标网格 =====
   标题栏（.navbar）、内容区（body>.container）、状态栏（footer）是三个互不相干的兄弟元素，
   要让它们看着像一个窗口，宽度和边框颜色必须完全一致，所以抽成 --mac-w / --mac-edge 两个变量；
   阴影也不能三段各打一份（后面的元素会盖住前面那段的投影，接缝处会出现一道暗边），
   改成上段只投上方、下段只投下方、三段共用同一份左右投影 --mac-side */
body.theme-mac{--page-bg:#e7e9ee;--surface:#ffffff;--surface-soft:#f5f5f7;--text:#1d1d1f;--muted:#86868b;--line:#e6e6ea;--primary:#0a84ff;--primary-dark:#0060df;--accent:#34c759;--danger:#ff3b30;--tint:#e9f2ff;--drop-line:#c9d2e0;--drop-tint:#f8fafd;--shadow:0 10px 30px rgba(20,26,45,.08);--btn-shadow:0 4px 12px rgba(10,132,255,.26);--mac-w:min(1180px,calc(100% - 44px));--mac-edge:rgba(0,0,0,.11);--mac-side:-22px 0 46px -28px rgba(19,26,45,.5),22px 0 46px -28px rgba(19,26,45,.5);background:linear-gradient(155deg,#dfe4ee 0,#e9eaee 46%,#e2e7f0 100%) fixed;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif}
body.theme-mac a{color:var(--primary)}
body.theme-mac a:hover,body.theme-mac a:focus{color:var(--primary-dark)}
/* 窗口标题栏 */
body.theme-mac .navbar.navbar-default{width:var(--mac-w);min-height:52px;margin:26px auto 0;background:rgba(246,246,248,.84);border:1px solid var(--mac-edge);border-bottom:1px solid rgba(0,0,0,.07);border-radius:12px 12px 0 0;box-shadow:0 -14px 40px -22px rgba(19,26,45,.55),var(--mac-side);backdrop-filter:saturate(180%) blur(20px)}
body.theme-mac .navbar .container{width:100%;max-width:none;min-height:52px;padding:0 16px;margin:0;display:flex;align-items:center;gap:0 18px}
body.theme-mac .navbar-header{float:none;display:flex;align-items:center;height:52px}
body.theme-mac .navbar-brand{float:none;display:flex;align-items:center;height:auto;padding:0;margin:0!important;line-height:1.4;color:var(--text)!important;font-size:14px;font-weight:700;letter-spacing:-.01em}
/* 红黄绿三颗灯：一个圆点 + 两段 box-shadow 画出来，不额外加标签 */
body.theme-mac .navbar-brand:before{content:"";flex:0 0 12px;width:12px;height:12px;margin-right:56px;border-radius:50%;background:#ff5f57;box-shadow:20px 0 0 #febc2e,40px 0 0 #28c840;font-size:0}
body.theme-mac .navbar-collapse{float:none;flex:1 1 auto;display:flex!important;align-items:center;padding:0;border:0;box-shadow:none}
body.theme-mac .navbar-nav{float:none!important;display:flex;align-items:center;gap:2px;margin:0!important}
body.theme-mac .navbar-nav>li{float:none}
body.theme-mac .navbar-default .navbar-nav>li>a{margin:0;padding:6px 11px;border-radius:7px;background:none!important;color:#4b4b50!important;font-size:12.5px;font-weight:600;line-height:1.5}
body.theme-mac .navbar-default .navbar-nav>li>a i{margin-right:5px;color:#8a8a8f}
body.theme-mac .navbar-default .navbar-nav>li>a:hover,body.theme-mac .navbar-default .navbar-nav>li>a:focus{background:rgba(0,0,0,.055)!important;color:var(--text)!important}
body.theme-mac .navbar-default .navbar-nav>li>a:hover i{color:var(--text)}
body.theme-mac .navbar-default .navbar-nav>li.active>a{background:var(--primary)!important;color:#fff!important}
body.theme-mac .navbar-default .navbar-nav>li.active>a i{color:#fff}
body.theme-mac .navbar-nav.navbar-right{float:none!important;margin:0 0 0 auto!important}
body.theme-mac .navbar-default .navbar-toggle{margin:0;background:rgba(0,0,0,.05)!important;background-image:none!important;border:0!important;border-radius:7px}
body.theme-mac .navbar-default .navbar-toggle .icon-bar{background:#4b4b50!important;height:2px!important}
body.theme-mac .navbar-default .navbar-toggle:hover,body.theme-mac .navbar-default .navbar-toggle:focus{background:rgba(0,0,0,.09)!important;box-shadow:none!important}
body.theme-mac .dropdown-menu{margin-top:6px;background:rgba(250,250,252,.98);border:1px solid var(--mac-edge);border-radius:10px;box-shadow:0 14px 34px rgba(19,26,45,.18);backdrop-filter:saturate(180%) blur(20px)}
body.theme-mac .dropdown-menu>li>a{padding:7px 14px;color:#3a3a3d!important;font-size:12.5px;font-weight:600}
body.theme-mac .dropdown-menu>li>a:hover,body.theme-mac .dropdown-menu>li>a:focus{background:var(--primary)!important;color:#fff!important}
/* 窗口内容区：所有页面的 body>.container 都是窗口的“肚子”，只留左右边框把上下两段连起来 */
body.theme-mac>.container{width:var(--mac-w);max-width:none;margin:0 auto;padding:22px 24px 26px;background:var(--surface);border-left:1px solid var(--mac-edge);border-right:1px solid var(--mac-edge);box-shadow:var(--mac-side)}
/* 公告条和广告位是带行内样式的整行块，会顶破窗口宽度，收回窗口里 */
body.theme-mac .theme-announcement-bar,body.theme-mac .mpimg-link-band{width:var(--mac-w)!important;margin:0 auto!important;border-left:1px solid var(--mac-edge)!important;border-right:1px solid var(--mac-edge)!important;border-radius:0!important;box-shadow:none!important}
/* 窗口底部状态栏 */
body.theme-mac>footer.footer{width:var(--mac-w);margin:0 auto 40px;padding:0;background:rgba(246,246,248,.92);border:1px solid var(--mac-edge);border-top:1px solid rgba(0,0,0,.07);border-radius:0 0 12px 12px;box-shadow:0 16px 40px -22px rgba(19,26,45,.55),var(--mac-side);backdrop-filter:saturate(180%) blur(20px)}
body.theme-mac .footer .container{width:100%;max-width:none;padding:0 16px}
body.theme-mac .footer p.text-muted{display:flex;align-items:center;justify-content:center;gap:8px;min-height:34px;margin:0;color:#6e6e73;font-size:12px;font-weight:500}
body.theme-mac .footer p.text-muted:before{content:"";flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px rgba(52,199,89,.18)}
body.theme-mac .footer a{color:#6e6e73}
body.theme-mac .footer a:hover{color:var(--primary)}
/* 内容区里的卡片：窗口本身已经是一张卡了，.well 一律拍平，.panel 保留浅描边 */
body.theme-mac .well,body.theme-mac .well.bs-component{padding:0;margin:0;background:transparent;border:0;border-radius:0;box-shadow:none}
body.theme-mac .panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 2px rgba(20,26,45,.05)}
body.theme-mac .panel-heading{background:var(--surface-soft)!important;border-bottom:1px solid var(--line)!important;color:var(--text)!important;font-weight:650}
body.theme-mac .panel-title,body.theme-mac .panel-title i{color:var(--text)}
body.theme-mac .panel-footer,body.theme-mac .tab-content,body.theme-mac .list-group-item{background:var(--surface);border-color:var(--line);color:#4b4b50}
/* 工具条：标题 + 搜索 + 视图切换 + 上传按钮 */
body.theme-mac .well.bs-component>h2{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 18px;padding:0 0 15px;border-bottom:1px solid var(--line);color:var(--text);font-size:20px;font-weight:700;letter-spacing:-.02em}
body.theme-mac .well.bs-component>h2 .text-muted{color:var(--muted);font-size:12px!important;font-weight:500}
/* 工具条右侧那一组：有搜索框时由它顶开，没开搜索功能时换视图切换来顶，
   免得按钮贴在标题后面 */
body.theme-mac .well.bs-component>h2>.searchbox,
body.theme-mac .well.bs-component>h2>.mac-viewtoggle{margin-left:auto}
body.theme-mac .well.bs-component>h2>.searchbox+.mac-viewtoggle{margin-left:0}
body.theme-mac .layout-page-sub{margin:-8px 0 16px;color:var(--muted);font-size:13px}
body.theme-mac .searchbox .form-inline{display:flex;align-items:center;gap:8px}
body.theme-mac .searchbox input.form-control[type="search"]{height:30px;min-width:200px;padding:0 12px;background:rgba(0,0,0,.045)!important;border:1px solid transparent!important;border-radius:8px!important;color:var(--text)!important;font-size:12.5px}
body.theme-mac .searchbox input.form-control[type="search"]:focus{background:#fff!important;border-color:#9ec5ff!important;box-shadow:0 0 0 3px rgba(10,132,255,.18)!important}
body.theme-mac .searchbox .btn{height:30px;padding:0 12px;background:rgba(0,0,0,.045)!important;border:0!important;border-radius:8px!important;color:#4b4b50!important;font-size:12.5px;font-weight:600}
body.theme-mac .searchbox .btn:hover,body.theme-mac .searchbox .btn:focus{background:var(--primary)!important;color:#fff!important}
/* 网格 / 列表切换：macOS 的分段控件 */
body.theme-mac .mac-viewtoggle{display:inline-flex;gap:2px;padding:2px;background:rgba(0,0,0,.055);border-radius:9px}
body.theme-mac .mac-viewtoggle button{width:34px;height:26px;padding:0;border:0;border-radius:7px;background:transparent;color:#5b5b60;font-size:13px;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}
body.theme-mac .mac-viewtoggle button:hover{color:var(--text)}
body.theme-mac .mac-viewtoggle button.active{background:#fff;color:var(--primary);box-shadow:0 1px 2px rgba(19,26,45,.16)}
body.theme-mac .layout-cta{height:30px;padding:0 14px;border-radius:8px;font-size:12.5px;font-weight:650;box-shadow:none}
body.theme-mac .layout-cta:hover,body.theme-mac .layout-cta:focus{transform:none;box-shadow:var(--btn-shadow)}
/* 拖拽提示区（首页列表上方，点一下进上传页） */
body.theme-mac .mac-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:190px;margin:0 0 20px;padding:26px;background:var(--drop-tint);border:2px dashed var(--drop-line);border-radius:14px;color:var(--text);text-align:center;text-decoration:none;transition:border-color .18s ease,background .18s ease}
body.theme-mac .mac-drop:hover,body.theme-mac .mac-drop:focus{background:var(--tint);border-color:var(--primary);color:var(--text);text-decoration:none}
body.theme-mac .mac-drop-icon{color:var(--primary);font-size:34px;line-height:1}
body.theme-mac .mac-drop strong{margin:16px 0 7px;font-size:16px;font-weight:650;letter-spacing:-.01em}
body.theme-mac .mac-drop small{color:var(--muted);font-size:12.5px}
/* 权限条 */
body.theme-mac .perm-bar{padding:10px 14px;background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;font-size:12.5px}
body.theme-mac .perm-item,body.theme-mac .perm-buy{font-size:12.5px}
/* ===== 文件列表：默认访达式图标网格 ===== */
body.theme-mac .table-responsive{border:0}
body.theme-mac .filelist-main{display:block;width:100%;background:transparent;border:0}
body.theme-mac .filelist-main>thead{display:none}
body.theme-mac .filelist-main>tbody{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}
body.theme-mac .filelist-main>tbody>tr{display:flex;flex-direction:column;align-items:center;padding:18px 12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:14px;text-align:center;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
body.theme-mac .filelist-main>tbody>tr:hover{background:#fbfcfe;border-color:#c9d8f0;box-shadow:0 8px 22px rgba(20,26,45,.09)}
body.theme-mac .filelist-main>tbody>tr>td{display:block;max-width:100%;padding:0!important;border:0!important;background:transparent;color:var(--text);white-space:normal;overflow:hidden;text-overflow:clip}
/* 序号、格式、上传时间、上传者IP 在卡片上没有意义，只在列表视图里显示 */
body.theme-mac .filelist-main>tbody>tr>td:nth-child(1),
body.theme-mac .filelist-main>tbody>tr>td:nth-child(5),
body.theme-mac .filelist-main>tbody>tr>td:nth-child(6),
body.theme-mac .filelist-main>tbody>tr>td:nth-child(7){display:none}
/* 文件名格：图标块在上、文件名在下。文件名是裸文本节点，没法单独做行数截断，
   给整格定高再裁掉溢出，效果就是最多两行 */
body.theme-mac .filelist-main>tbody>tr>td:nth-child(3){order:1;width:100%;height:104px;font-size:13px;font-weight:600;line-height:1.4;word-break:break-all}
body.theme-mac .filelist-main>tbody>tr>td:nth-child(3) .fa-fw{display:flex;width:52px;height:52px;margin:0 auto 12px;border-radius:15px;font-size:22px}
body.theme-mac .filelist-main>tbody>tr>td:nth-child(4){order:2;color:var(--muted);font-size:12px;font-weight:500}
/* 大小后面补一句中文类型，跟原型里的“8.6 MB · 图片”对齐；分组由 index.php 写在 data-group 上 */
body.theme-mac .filelist-main>tbody>tr[data-group="image"]>td:nth-child(4):after{content:" \B7 \0020\56FE\7247"}
body.theme-mac .filelist-main>tbody>tr[data-group="video"]>td:nth-child(4):after{content:" \B7 \0020\89C6\9891"}
body.theme-mac .filelist-main>tbody>tr[data-group="audio"]>td:nth-child(4):after{content:" \B7 \0020\97F3\9891"}
body.theme-mac .filelist-main>tbody>tr[data-group="doc"]>td:nth-child(4):after{content:" \B7 \0020\6587\6863"}
body.theme-mac .filelist-main>tbody>tr[data-group="archive"]>td:nth-child(4):after{content:" \B7 \0020\538B\7F29\5305"}
body.theme-mac .filelist-main>tbody>tr[data-group="other"]>td:nth-child(4):after{content:" \B7 \0020\6587\4EF6"}
/* 文件名不是链接，下载/查看只能走操作列，卡片上必须留着，缩成一排图标按钮 */
body.theme-mac .filelist-main>tbody>tr>td:nth-child(2){order:3;width:100%;margin-top:12px}
body.theme-mac .filelist-main>tbody>tr>td:nth-child(2) .file-actions{justify-content:center;gap:6px}
body.theme-mac .filelist-main>tbody>tr>td:nth-child(2) .file-action{width:28px;height:28px;padding:0;justify-content:center}
body.theme-mac .filelist-main>tbody>tr>td:nth-child(2) .file-action-label{display:none}
/* 空列表那一行要横跨整个网格 */
body.theme-mac .filelist-main>tbody>tr>td[colspan]{display:block;order:0;width:100%;height:auto;padding:34px 0!important;color:var(--muted);font-size:13px}
body.theme-mac .filelist-main>tbody>tr:has(td[colspan]){grid-column:1/-1;padding:0;border-style:dashed;background:transparent}
body.theme-mac .filelist-main>tbody>tr:has(td[colspan]):hover{background:transparent;border-color:var(--line);box-shadow:none}
/* 图标块配色：跟原型一致，浅底 + 同色系图标 */
body.theme-mac .filelist tbody td .fa-fw{background:rgba(120,120,128,.12);color:#6e6e73}
body.theme-mac .filelist tbody tr[data-group="image"] td .fa-fw{background:#e8f0fe;color:#4285f4}
body.theme-mac .filelist tbody tr[data-group="video"] td .fa-fw{background:#fdeaea;color:#f4544c}
body.theme-mac .filelist tbody tr[data-group="audio"] td .fa-fw{background:#e6f6ec;color:#2fb457}
body.theme-mac .filelist tbody tr[data-group="doc"] td .fa-fw{background:#fdf1e0;color:#e8971b}
body.theme-mac .filelist tbody tr[data-group="archive"] td .fa-fw{background:#eeeaff;color:#7c5cff}
body.theme-mac .file-action{padding:4px 9px;border-radius:8px;background:rgba(120,120,128,.1);color:#4b4b50!important;font-size:12px;font-weight:600}
body.theme-mac .file-action-down{background:var(--tint);color:var(--primary)!important}
body.theme-mac .file-action:hover{background:var(--primary);color:#fff!important}
body.theme-mac .file-type-badge{min-width:0;padding:3px 8px;border-radius:6px;background:rgba(120,120,128,.12);color:#4b4b50;font-size:11px;font-weight:600}
body.theme-mac .filelist-lock{color:#e8971b}
/* ===== 列表视图：JS 给表格加 .mac-list-view，把上面那套网格还原成普通表格 ===== */
body.theme-mac .filelist-main.mac-list-view{display:table;border:0}
body.theme-mac .filelist-main.mac-list-view>thead{display:table-header-group}
body.theme-mac .filelist-main.mac-list-view>tbody{display:table-row-group;gap:0}
body.theme-mac .filelist-main.mac-list-view>tbody>tr{display:table-row;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;text-align:left}
body.theme-mac .filelist-main.mac-list-view>tbody>tr:hover{background:var(--tint);border:0;box-shadow:none}
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td,
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td:nth-child(1),
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td:nth-child(2),
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td:nth-child(3),
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td:nth-child(4),
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td:nth-child(5),
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td:nth-child(6),
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td:nth-child(7){display:table-cell;order:0;width:auto;height:auto;max-width:360px;margin:0;padding:11px 12px!important;border-top:1px solid var(--line)!important;color:#3a3a3d;font-size:13px;font-weight:500;line-height:1.6;text-align:left;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.theme-mac .filelist-main.mac-list-view>thead>tr>th{height:auto;padding:10px 12px;background:var(--surface-soft)!important;border-bottom:1px solid var(--line)!important;color:var(--muted);font-size:12px;font-weight:600}
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td:nth-child(3){font-weight:600;color:var(--text)}
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td:nth-child(3) .fa-fw{display:inline-flex;width:28px;height:28px;margin:0 10px 0 0;border-radius:8px;font-size:13px;vertical-align:middle}
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td:nth-child(4):after{content:none}
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td:nth-child(2){white-space:nowrap;overflow:visible}
body.theme-mac .filelist-main.mac-list-view .file-actions{justify-content:flex-start}
body.theme-mac .filelist-main.mac-list-view .file-action{width:auto;height:auto;padding:4px 9px}
body.theme-mac .filelist-main.mac-list-view .file-action-label{display:inline}
body.theme-mac .filelist-main.mac-list-view>tbody>tr>td[colspan]{display:table-cell;padding:26px 0!important;text-align:center}
/* 列表底部：文件数 + 翻页，做成访达底部那条信息栏 */
body.theme-mac .filelist-footer{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
body.theme-mac .filelist-summary{color:var(--muted);font-size:12px}
body.theme-mac .pagination>li>a,body.theme-mac .pagination>li>span{background:rgba(120,120,128,.1);border:0;border-radius:7px!important;color:#4b4b50;font-size:12px}
body.theme-mac .pagination>li>a:hover,body.theme-mac .pagination>.active>a,body.theme-mac .pagination>.active>a:hover{background:var(--primary);color:#fff}
body.theme-mac .pagination>.disabled>a,body.theme-mac .pagination>.disabled>a:hover{background:rgba(120,120,128,.06);color:#b4b4b8}
/* 表单、按钮、标签页等公共控件 */
body.theme-mac .form-control{background:#fff;border:1px solid #d8d8dd;border-radius:8px;color:var(--text)}
body.theme-mac .form-control:focus{border-color:#9ec5ff;box-shadow:0 0 0 3px rgba(10,132,255,.18)}
body.theme-mac .input-group-addon{background:var(--surface-soft);border-color:#d8d8dd;color:var(--muted)}
body.theme-mac .btn{border-radius:8px!important;font-weight:650}
body.theme-mac .btn-raised.btn-primary,body.theme-mac .btn-primary{background:var(--primary)!important;color:#fff!important}
body.theme-mac .btn-raised.btn-primary:hover,body.theme-mac .btn-primary:hover{background:var(--primary-dark)!important}
body.theme-mac .btn-raised.btn-info,body.theme-mac .btn-info{background:#5e5ce6!important;color:#fff!important}
body.theme-mac .btn-raised.btn-danger,body.theme-mac .btn-danger{background:var(--danger)!important;color:#fff!important}
body.theme-mac .btn-default{background:rgba(120,120,128,.1)!important;border:0!important;color:#3a3a3d!important}
body.theme-mac .nav-tabs{background:transparent;border-bottom:1px solid var(--line)}
body.theme-mac .nav-tabs>li>a,body.theme-mac .nav-tabs>li>a:focus,body.theme-mac .nav-tabs>li>a:hover{color:#4b4b50!important;font-weight:600}
body.theme-mac .nav-tabs>li.active{background:transparent;border-bottom:2px solid var(--primary)}
body.theme-mac .nav-tabs>li.active>a{color:var(--primary)!important}
body.theme-mac .table{background:transparent}
body.theme-mac .table>thead>tr>th{height:auto;padding:10px 12px;background:var(--surface-soft)!important;border-bottom:1px solid var(--line)!important;color:var(--muted);font-size:12px;font-weight:600}
body.theme-mac .table>tbody>tr>td{border-top:1px solid var(--line)!important;color:#3a3a3d}
body.theme-mac .table-striped>tbody>tr:nth-of-type(odd){background:transparent}
body.theme-mac .table-hover>tbody>tr:hover{background:var(--tint)}
body.theme-mac .table-bordered,body.theme-mac .table-bordered>tbody>tr>td,body.theme-mac .table-bordered>thead>tr>th{border-color:var(--line)!important}
/* 上传页 / 文件查看页 */
body.theme-mac #app .infobox{background:var(--drop-tint)!important;border-radius:14px;box-shadow:none}
body.theme-mac #app .infobox:hover{box-shadow:none;transform:none}
body.theme-mac .view{background:var(--surface-soft);border-radius:14px}
body.theme-mac .tubiao{background:var(--tint);color:var(--primary)}
body.theme-mac .elsetext,body.theme-mac .filename{color:#4b4b50}
body.theme-mac .elsetext p:first-child{color:var(--text)}
body.theme-mac .image_view,body.theme-mac .videoplayer{background:#1d1d1f;border-radius:14px}
body.theme-mac .fileinfo-table{background:var(--surface)}
body.theme-mac .fileinfo-table th{background:var(--surface-soft);color:#4b4b50}
body.theme-mac .progress{background:rgba(120,120,128,.14)}
body.theme-mac .progress-bar{background:linear-gradient(90deg,var(--primary),#5e5ce6)}
body.theme-mac .editor-toolbar{background:var(--surface-soft);border-color:var(--line);border-radius:10px}
body.theme-mac #file_content{background:#1d1d1f!important;color:#f2f2f7!important;border-color:#3a3a3d!important}
@media (max-width:767px){
/* 窄屏没有“窗口”的说法了：铺满屏幕，去掉圆角和左右边框，只保留配色 */
body.theme-mac{--mac-w:100%}
body.theme-mac .navbar.navbar-default{margin:0;border-left:0;border-right:0;border-top:0;border-radius:0;box-shadow:none}
body.theme-mac .navbar .container{padding:0 14px;flex-wrap:wrap}
body.theme-mac .navbar-header{width:100%;justify-content:space-between}
body.theme-mac .navbar-brand:before{margin-right:44px}
body.theme-mac .navbar-collapse{width:100%;flex-direction:column;align-items:stretch;padding:6px 0 10px;border-top:1px solid var(--line)}
body.theme-mac .navbar-nav{flex-direction:column;align-items:stretch;gap:0}
body.theme-mac .navbar-default .navbar-nav>li>a{padding:10px 12px;border-radius:8px}
body.theme-mac .navbar-nav.navbar-right{margin:0!important}
body.theme-mac>.container{padding:16px 14px 20px;border-left:0;border-right:0;box-shadow:none}
body.theme-mac .theme-announcement-bar,body.theme-mac .mpimg-link-band{border-left:0!important;border-right:0!important}
body.theme-mac>footer.footer{margin:0;border-left:0;border-right:0;border-bottom:0;border-radius:0;box-shadow:none}
body.theme-mac .well.bs-component>h2{font-size:18px}
body.theme-mac .filelist-main>tbody{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}
body.theme-mac .filelist-main>tbody>tr{padding:14px 8px 12px}
body.theme-mac .filelist-main>tbody>tr>td:nth-child(3){height:96px;font-size:12.5px}
body.theme-mac .filelist-main>tbody>tr>td:nth-child(3) .fa-fw{width:44px;height:44px;margin-bottom:10px;border-radius:13px;font-size:19px}
body.theme-mac .mac-drop{min-height:150px;padding:20px}
body.theme-mac .well.bs-component>h2>.mac-viewtoggle,
body.theme-mac .well.bs-component>h2>.searchbox+.mac-viewtoggle{margin-left:0}
}


/* ===== 渐变仪表盘风（布局型）：悬浮图标侧栏 + 问候栏 + 渐变额度卡 + 右侧数据面板 ===== */
body.theme-cockpit{--page-bg:#f3f4fa;--surface:#ffffff;--surface-soft:#f6f7fc;--text:#191d33;--muted:#858ca6;--line:#ecedf6;--primary:#6d5df6;--primary-dark:#5a48e0;--accent:#22c55e;--danger:#ef4444;--tint:#f0edff;--drop-line:#d6d2f7;--drop-tint:#f8f6ff;--shadow:0 12px 34px rgba(46,44,92,.07);--btn-shadow:0 12px 26px rgba(109,93,246,.26);--rail-w:226px;--cockpit-grad:linear-gradient(115deg,#6d5df6 0,#8b5cf6 46%,#b06ae8 100%);background:radial-gradient(1100px 460px at 8% -12%,rgba(139,92,246,.13),transparent 62%),var(--page-bg);background-attachment:fixed;color:var(--text)}
body.theme-cockpit a{color:var(--primary)}
body.theme-cockpit a:hover,body.theme-cockpit a:focus{color:var(--primary-dark)}
body.theme-cockpit .caret{display:none}

/* 侧栏是一块悬浮的圆角面板，默认就展开显示文字（深色工作台风是收起的图标条，这套不收） */
@media (min-width:768px){
body.theme-cockpit .navbar.navbar-default{position:fixed;top:16px;left:16px;bottom:16px;z-index:1200;margin:0;width:var(--rail-w);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);overflow:hidden}
body.theme-cockpit .navbar .container{width:100%;max-width:none;padding:0;margin:0;display:flex;flex-direction:column;height:100%;min-height:100%}
body.theme-cockpit .navbar-header{float:none;width:100%;padding:18px 0 14px}
body.theme-cockpit .navbar-brand{float:none;display:flex;align-items:center;gap:12px;width:100%;height:auto;padding:0 16px;margin:0!important;color:var(--text)!important;font-size:15px;font-weight:800;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.theme-cockpit .navbar-brand:before{content:"\f1b2";flex:0 0 42px;width:42px;height:42px;border-radius:14px;background:var(--cockpit-grad);color:#fff;font:400 19px/42px FontAwesome;text-align:center;box-shadow:0 10px 22px rgba(109,93,246,.32)}
body.theme-cockpit .navbar-collapse{float:none;width:100%;flex:1;display:flex!important;flex-direction:column;padding:6px 14px 14px;border:0;box-shadow:none;overflow-x:hidden;overflow-y:auto}
body.theme-cockpit .navbar-nav{float:none!important;width:100%;margin:0!important;display:flex;flex-direction:column;gap:6px}
body.theme-cockpit .navbar-nav>li{width:100%;float:none}
body.theme-cockpit .navbar-nav.navbar-right{float:none!important;margin:auto 0 0!important;padding-top:12px;border-top:1px solid var(--line)}
body.theme-cockpit .navbar-default .navbar-nav>li>a{display:flex;align-items:center;gap:13px;margin:0;padding:0 12px;height:46px;border-radius:15px;background:transparent!important;color:var(--muted)!important;font-size:13px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.theme-cockpit .navbar-default .navbar-nav>li>a i{flex:0 0 22px;width:22px;margin:0;text-align:center;font-size:17px}
body.theme-cockpit .navbar-default .navbar-nav>li>a:hover,body.theme-cockpit .navbar-default .navbar-nav>li>a:focus{background:var(--surface-soft)!important;color:var(--text)!important}
body.theme-cockpit .navbar-default .navbar-nav>li.active>a{background:var(--cockpit-grad)!important;color:#fff!important;box-shadow:0 10px 22px rgba(109,93,246,.3)}
body.theme-cockpit .navbar-default .navbar-nav>li.active>a i{color:#fff}
/* 侧栏本身可滚动，绝对定位的下拉菜单会被裁掉，改成静态展开 */
body.theme-cockpit .navbar-nav .open>.dropdown-menu{position:static;float:none;width:100%;margin:4px 0 0;padding:4px;background:var(--surface-soft);border:1px solid var(--line);border-radius:14px;box-shadow:none}
body.theme-cockpit .navbar-nav .open>.dropdown-menu>li>a{padding:9px 12px;border-radius:10px;color:var(--muted)!important;font-size:13px;white-space:normal}
body.theme-cockpit .navbar-nav .open>.dropdown-menu>li>a:hover{background:var(--tint)!important;color:var(--primary)!important}
body.theme-cockpit>.container{margin:0!important;max-width:none!important;width:auto!important;padding:20px 24px 6px calc(var(--rail-w) + 40px)}
body.theme-cockpit>footer.footer{margin:0!important;padding-left:calc(var(--rail-w) + 40px)}
body.theme-cockpit>footer.footer .container{width:auto;max-width:none}
body.theme-cockpit .theme-announcement-bar{margin:0 0 18px calc(var(--rail-w) + 32px)!important;width:calc(100% - var(--rail-w) - 48px)!important;border-radius:16px!important}
body.theme-cockpit .mpimg-link-band{margin-left:calc(var(--rail-w) + 32px)!important;width:calc(100% - var(--rail-w) - 48px)!important}
}
body.theme-cockpit .navbar-default .navbar-toggle{background:var(--surface-soft)!important;background-image:none!important;border:1px solid var(--line)!important;border-radius:12px}
body.theme-cockpit .navbar-default .navbar-toggle .icon-bar{background:var(--primary)!important}
body.theme-cockpit .footer,body.theme-cockpit .footer .text-muted{color:var(--muted);font-size:12px}

/* 两栏：左边是列表主区，右边是数据面板；窄屏并成一栏 */
body.theme-cockpit .layout-shell{display:grid;grid-template-columns:minmax(0,1fr) 316px;align-items:start;gap:18px}
body.theme-cockpit .cockpit-main{min-width:0}

/* 顶部问候栏 */
body.theme-cockpit .cockpit-head{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:0 0 18px}
body.theme-cockpit .cockpit-hi h1{margin:0;color:var(--text);font-size:23px;font-weight:800;letter-spacing:-.03em}
body.theme-cockpit .cockpit-hi p{margin:5px 0 0;color:var(--muted);font-size:13px;font-weight:650}
body.theme-cockpit .cockpit-hi p b{color:var(--text);font-weight:800}
body.theme-cockpit .cockpit-head-side{display:flex;align-items:center;gap:12px;margin-left:auto}
body.theme-cockpit .cockpit-upload{display:inline-flex;align-items:center;gap:8px;padding:12px 19px;border-radius:14px;background:var(--cockpit-grad);color:#fff!important;font-size:13px;font-weight:800;text-decoration:none;box-shadow:var(--btn-shadow);transition:transform .18s ease,box-shadow .18s ease}
body.theme-cockpit .cockpit-upload:hover,body.theme-cockpit .cockpit-upload:focus{color:#fff!important;text-decoration:none;transform:translateY(-1px);box-shadow:0 16px 30px rgba(109,93,246,.34)}
body.theme-cockpit .cockpit-avatar{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#ffa26b,#f2705f);color:#fff!important;font-size:16px;font-weight:800;text-decoration:none}
body.theme-cockpit .cockpit-avatar:hover{color:#fff!important;text-decoration:none;opacity:.92}
body.theme-cockpit .cockpit-avatar-guest{background:var(--tint);color:var(--primary)!important}
body.theme-cockpit .cockpit-avatar-guest:hover{color:var(--primary)!important}

/* 渐变额度卡 */
body.theme-cockpit .cockpit-quota{position:relative;display:flex;align-items:center;gap:24px;margin:0 0 16px;padding:26px 30px;border-radius:24px;background:var(--cockpit-grad);color:#fff;box-shadow:0 20px 42px rgba(109,93,246,.26);overflow:hidden}
body.theme-cockpit .cockpit-quota:before{content:"";position:absolute;top:-90px;right:-50px;width:270px;height:270px;border-radius:50%;background:rgba(255,255,255,.1)}
body.theme-cockpit .cockpit-quota-main{position:relative;z-index:1;flex:1 1 auto;min-width:0}
body.theme-cockpit .cockpit-quota-label{display:inline-flex;align-items:center;gap:7px;color:rgba(255,255,255,.88);font-size:13px;font-weight:750}
body.theme-cockpit .cockpit-quota-num{display:flex;align-items:baseline;gap:9px;margin:9px 0 0}
body.theme-cockpit .cockpit-quota-num strong{font-size:42px;font-weight:800;line-height:1.1;letter-spacing:-.04em}
body.theme-cockpit .cockpit-quota-num span{color:rgba(255,255,255,.84);font-size:16px;font-weight:750}
body.theme-cockpit .cockpit-quota-sub{margin:9px 0 0;color:rgba(255,255,255,.8);font-size:13px;font-weight:650}
body.theme-cockpit .cockpit-quota-pills{display:flex;flex-wrap:wrap;gap:8px;margin:17px 0 0}
body.theme-cockpit .cockpit-quota-pills span{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:999px;background:rgba(255,255,255,.17);font-size:12px;font-weight:750}
body.theme-cockpit .cockpit-ring{position:relative;flex:0 0 128px;width:128px;height:128px}
body.theme-cockpit .cockpit-ring svg{display:block;width:128px;height:128px;transform:rotate(-90deg)}
body.theme-cockpit .cockpit-ring circle{fill:none;stroke-width:11;stroke-linecap:round}
body.theme-cockpit .cockpit-ring-bg{stroke:rgba(255,255,255,.24)}
body.theme-cockpit .cockpit-ring-fg{stroke:#fff}
body.theme-cockpit .cockpit-ring-text{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
body.theme-cockpit .cockpit-ring-text strong{font-size:22px;font-weight:800;letter-spacing:-.03em}
body.theme-cockpit .cockpit-ring-text span{color:rgba(255,255,255,.82);font-size:11px;font-weight:750}

/* 统计卡与类型筛选：结构走布局型外观的公共块，这里只改质感 */
body.theme-cockpit .layout-stats{gap:14px;margin:0 0 16px}
body.theme-cockpit .layout-stat{padding:18px;border-radius:18px;box-shadow:var(--shadow)}
body.theme-cockpit .layout-stat-icon{border-radius:14px}
body.theme-cockpit .layout-stat-image .layout-stat-icon{background:rgba(22,163,105,.12);color:#16a369}
body.theme-cockpit .layout-stat-video .layout-stat-icon{background:rgba(240,123,47,.12);color:#f07b2f}
body.theme-cockpit .layout-stat-today .layout-stat-icon{background:rgba(59,130,246,.12);color:#3b82f6}
body.theme-cockpit .layout-filters{margin:0 0 14px}
body.theme-cockpit .layout-filter{border-radius:999px;background:var(--surface-soft);font-size:12.5px}
body.theme-cockpit .layout-filter:hover{background:var(--tint);color:var(--primary)!important}
body.theme-cockpit .layout-filter.active{background:var(--cockpit-grad);color:#fff!important;box-shadow:0 8px 18px rgba(109,93,246,.26)}
body.theme-cockpit .layout-page-sub{margin:0 0 16px}

/* 右侧数据面板 */
body.theme-cockpit .cockpit-side{position:sticky;top:20px;display:flex;flex-direction:column;gap:14px}
body.theme-cockpit .cockpit-panel{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}
body.theme-cockpit .cockpit-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 14px}
body.theme-cockpit .cockpit-panel-head strong{color:var(--text);font-size:15px;font-weight:800;letter-spacing:-.02em}
body.theme-cockpit .cockpit-panel-head small{color:var(--muted);font-size:12px;font-weight:650}
body.theme-cockpit .cockpit-dist-bar{display:flex;height:10px;border-radius:999px;background:var(--surface-soft);overflow:hidden}
body.theme-cockpit .cockpit-seg{display:block;height:100%}
body.theme-cockpit .cockpit-dot{flex:0 0 9px;width:9px;height:9px;border-radius:50%}
/* 分类颜色和文件列表里的图标色块保持一致，两处对照着看才对得上 */
body.theme-cockpit .cockpit-seg-image{background:#16a369}
body.theme-cockpit .cockpit-seg-video{background:#f07b2f}
body.theme-cockpit .cockpit-seg-doc{background:#ef5a55}
body.theme-cockpit .cockpit-seg-archive{background:#9a6ae8}
body.theme-cockpit .cockpit-seg-other{background:#94a3b8}
body.theme-cockpit .cockpit-seg-empty{background:var(--line)}
body.theme-cockpit .cockpit-dist-list{display:flex;flex-direction:column;gap:10px;margin:15px 0 0}
body.theme-cockpit .cockpit-dist-row{display:flex;align-items:center;gap:9px;font-size:13px}
body.theme-cockpit .cockpit-dist-row em{color:var(--muted);font-style:normal;font-weight:650}
body.theme-cockpit .cockpit-dist-row b{margin-left:auto;color:var(--text);font-weight:800}
body.theme-cockpit .cockpit-feed{display:flex;flex-direction:column;gap:2px}
body.theme-cockpit .cockpit-feed-item{display:flex;align-items:center;gap:11px;padding:8px;border-radius:14px;text-decoration:none}
body.theme-cockpit .cockpit-feed-item:hover,body.theme-cockpit .cockpit-feed-item:focus{background:var(--surface-soft);text-decoration:none}
body.theme-cockpit .cockpit-feed-icon{flex:0 0 34px;width:34px;height:34px;border-radius:12px;background:var(--tint);color:var(--primary);font-size:14px;line-height:34px;text-align:center}
body.theme-cockpit .cockpit-feed-item[data-group="image"] .cockpit-feed-icon{background:rgba(22,163,105,.12);color:#16a369}
body.theme-cockpit .cockpit-feed-item[data-group="video"] .cockpit-feed-icon{background:rgba(240,123,47,.12);color:#f07b2f}
body.theme-cockpit .cockpit-feed-item[data-group="doc"] .cockpit-feed-icon{background:rgba(239,90,85,.12);color:#ef5a55}
body.theme-cockpit .cockpit-feed-item[data-group="archive"] .cockpit-feed-icon{background:rgba(154,106,232,.14);color:#9a6ae8}
body.theme-cockpit .cockpit-feed-item[data-group="audio"] .cockpit-feed-icon{background:rgba(59,130,246,.12);color:#3b82f6}
body.theme-cockpit .cockpit-feed-body{display:block;min-width:0}
body.theme-cockpit .cockpit-feed-body b{display:block;color:var(--text);font-size:13px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.theme-cockpit .cockpit-feed-body em{display:block;margin-top:2px;color:var(--muted);font-size:11.5px;font-style:normal;font-weight:650}
body.theme-cockpit .cockpit-empty{margin:0;padding:16px 4px;color:var(--muted);font-size:13px;text-align:center}
body.theme-cockpit .cockpit-links{display:flex;flex-direction:column;gap:2px}
body.theme-cockpit .cockpit-link{display:flex;align-items:center;gap:11px;padding:9px 8px;border-radius:14px;color:var(--text)!important;font-size:13px;font-weight:750;text-decoration:none}
body.theme-cockpit .cockpit-link:hover,body.theme-cockpit .cockpit-link:focus{background:var(--surface-soft);text-decoration:none}
body.theme-cockpit .cockpit-link>i:first-child{flex:0 0 32px;width:32px;height:32px;border-radius:11px;background:var(--tint);color:var(--primary);font-size:14px;line-height:32px;text-align:center}
body.theme-cockpit .cockpit-link-arrow{flex:0 0 auto;margin-left:auto;background:none;color:var(--muted);font-size:16px;line-height:1}

/* 内容卡片、表格、表单：和其它浅色布局型外观同一套，配色换成本外观的变量 */
body.theme-cockpit .well,body.theme-cockpit .panel{background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);color:var(--text)}
body.theme-cockpit .well.bs-component{padding:20px 24px 22px}
body.theme-cockpit .well.bs-component>h2{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:0 0 14px;color:var(--text);font-size:19px;font-weight:800;letter-spacing:-.03em}
body.theme-cockpit .well.bs-component>h2>.searchbox{margin-left:auto}
body.theme-cockpit .well.bs-component>h2 .text-muted{color:var(--muted)!important;font-size:12px!important;font-weight:650}
body.theme-cockpit .panel{overflow:hidden}
body.theme-cockpit .panel-heading{background:var(--surface-soft)!important;border-bottom:1px solid var(--line)!important;color:var(--text)!important;font-weight:800}
body.theme-cockpit .panel-title,body.theme-cockpit .panel-title i{color:var(--text)}
body.theme-cockpit .panel-footer,body.theme-cockpit .tab-content,body.theme-cockpit .list-group-item{background:var(--surface);border-color:var(--line);color:var(--text)}
body.theme-cockpit .dropdown-menu{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
body.theme-cockpit .dropdown-menu>li>a{color:#4a5169!important}
body.theme-cockpit .dropdown-menu>li>a:hover,body.theme-cockpit .dropdown-menu>li>a:focus{background:var(--tint)!important;color:var(--primary)!important}
body.theme-cockpit .searchbox .form-inline{display:flex;align-items:center;gap:8px}
body.theme-cockpit .searchbox input.form-control[type="search"]{height:40px;min-width:230px;background:var(--surface-soft)!important;border:1px solid var(--line)!important;border-radius:13px!important;color:var(--text)!important;-webkit-text-fill-color:var(--text)!important;font-size:12.5px}
body.theme-cockpit .searchbox .btn{height:40px;background:var(--surface-soft)!important;border:1px solid var(--line)!important;border-radius:13px!important;color:#5b6280!important;font-size:12.5px;font-weight:750}
body.theme-cockpit .searchbox .btn:hover,body.theme-cockpit .searchbox .btn:focus{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}
body.theme-cockpit .table-responsive{border:1px solid var(--line);border-radius:16px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}
body.theme-cockpit .table{margin:0;background:transparent}
body.theme-cockpit .table>thead>tr>th{padding:12px 14px;background:var(--surface-soft)!important;border-bottom:1px solid var(--line)!important;color:var(--muted);font-size:11.5px;font-weight:750;letter-spacing:.05em}
body.theme-cockpit .table>tbody>tr>td{padding:13px 14px;border-top:1px solid var(--line)!important;color:#454b66;font-size:13px;vertical-align:middle}
body.theme-cockpit .table-striped>tbody>tr:nth-of-type(odd){background:transparent}
body.theme-cockpit .table-hover>tbody>tr:hover{background:var(--surface-soft)}
body.theme-cockpit .table-bordered,body.theme-cockpit .table-bordered>tbody>tr>td,body.theme-cockpit .table-bordered>thead>tr>th{border-color:var(--line)!important}
body.theme-cockpit .filelist td a{color:var(--text);font-weight:750}
body.theme-cockpit .filelist td a:hover{color:var(--primary)}
body.theme-cockpit .file-type-badge{display:inline-flex;padding:4px 10px;border-radius:8px;background:var(--surface-soft);color:var(--muted);font-size:11px;font-weight:750}
body.theme-cockpit .file-action{display:inline-flex!important;align-items:center;gap:5px;padding:5px 11px;border-radius:999px;background:var(--surface-soft);color:#5b6280!important;font-size:12px;font-weight:750}
body.theme-cockpit .file-action-down{background:var(--tint);color:var(--primary)!important}
body.theme-cockpit .file-action:hover{background:var(--primary);color:#fff!important}
body.theme-cockpit .filelist-summary{color:var(--muted);font-size:12px}
body.theme-cockpit .pagination>li>a,body.theme-cockpit .pagination>li>span{background:var(--surface-soft);border:1px solid var(--line);border-radius:11px!important;color:#5b6280}
body.theme-cockpit .pagination>li>a:hover,body.theme-cockpit .pagination>.active>a,body.theme-cockpit .pagination>.active>a:hover{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}
body.theme-cockpit .pagination>.disabled>a,body.theme-cockpit .pagination>.disabled>a:hover{background:var(--surface-soft);color:#b4b9cc}
body.theme-cockpit .form-control{background:var(--surface-soft);border:1px solid var(--line);border-radius:13px;color:var(--text)}
body.theme-cockpit .form-control:focus{background:var(--surface);border-color:#b7abfb;box-shadow:0 0 0 4px rgba(109,93,246,.13)}
body.theme-cockpit .form-control::placeholder{color:#a2a8c0}
body.theme-cockpit .input-group-addon{background:var(--surface-soft);border-color:var(--line);color:var(--muted)}
body.theme-cockpit .help-block,body.theme-cockpit .text-muted{color:var(--muted)}
body.theme-cockpit .btn{border-radius:13px!important;font-weight:750}
body.theme-cockpit .btn-raised.btn-primary,body.theme-cockpit .btn-primary{background:var(--primary)!important;color:#fff!important}
body.theme-cockpit .btn-raised.btn-primary:hover,body.theme-cockpit .btn-primary:hover{background:var(--primary-dark)!important;color:#fff!important}
body.theme-cockpit .btn-raised.btn-info,body.theme-cockpit .btn-info{background:var(--accent)!important;color:#fff!important}
body.theme-cockpit .btn-raised.btn-danger,body.theme-cockpit .btn-danger{background:var(--danger)!important;color:#fff!important}
body.theme-cockpit .btn-default{background:var(--surface-soft)!important;border:1px solid var(--line)!important;color:#5b6280!important}
body.theme-cockpit .nav-tabs{background:var(--surface);border-bottom:1px solid var(--line)}
body.theme-cockpit .nav-tabs>li>a,body.theme-cockpit .nav-tabs>li>a:focus,body.theme-cockpit .nav-tabs>li>a:hover{background:transparent!important;border-color:transparent!important;color:var(--muted)!important}
body.theme-cockpit .nav-tabs>li.active{background:var(--tint);border-bottom:2px solid var(--primary)}
body.theme-cockpit .nav-tabs>li.active>a{color:var(--primary)!important}
body.theme-cockpit .checkbox label,body.theme-cockpit .radio label{color:#4a5169}
body.theme-cockpit #app .infobox{background:var(--surface)!important;box-shadow:var(--shadow)}
body.theme-cockpit #fileInput #pwd,body.theme-cockpit #fileInput #storage_select{background:var(--surface-soft)!important;border-color:var(--line)!important;color:var(--text)!important;-webkit-text-fill-color:var(--text);border-radius:13px}
body.theme-cockpit #fileInput .help-block{color:var(--muted)!important}
body.theme-cockpit .view{background:var(--surface-soft);border-radius:20px}
body.theme-cockpit .tubiao{background:var(--tint);color:var(--primary)}
body.theme-cockpit .elsetext,body.theme-cockpit .filename{color:#4a5169}
body.theme-cockpit .elsetext p:first-child{color:var(--text)}
body.theme-cockpit .image_view,body.theme-cockpit .videoplayer{background:#191d33;border-radius:20px}
body.theme-cockpit .fileinfo-table{background:var(--surface)}
body.theme-cockpit .fileinfo-table th{background:var(--surface-soft);color:var(--muted)}
body.theme-cockpit .progress{background:var(--surface-soft)}
body.theme-cockpit .progress-bar{background:var(--cockpit-grad)}
body.theme-cockpit .editor-toolbar{background:var(--surface-soft);border-color:var(--line);border-radius:13px}
body.theme-cockpit #file_content{background:#191d33!important;color:#eceefb!important;border-color:#2c3150!important}
body.theme-cockpit .upload-queue,body.theme-cockpit .upload-message{background:var(--surface);border-color:var(--line)}
body.theme-cockpit .upload-link-btn{background:var(--surface-soft);border-color:var(--line);color:var(--primary)}
body.theme-cockpit .upload-link-btn:hover{background:var(--primary);border-color:var(--primary);color:#fff}
body.theme-cockpit .tab-content .input-group .form-control[readonly]{background:var(--surface-soft)!important;border-color:var(--line)!important;color:var(--text)!important;-webkit-text-fill-color:var(--text)}
body.theme-cockpit .tab-content .input-group .form-control[readonly]:focus{background:var(--surface-soft)!important;border-color:#b7abfb!important;box-shadow:0 0 0 4px rgba(109,93,246,.13)!important}

@media (max-width:1399px){
/* 侧栏 226 + 右侧面板 316，再窄下去列表就只剩三百多像素了：数据面板落到列表下面，不再吸顶 */
body.theme-cockpit .layout-shell{grid-template-columns:minmax(0,1fr)}
body.theme-cockpit .cockpit-side{position:static}
}
@media (max-width:767px){
body.theme-cockpit .navbar.navbar-default{position:static;width:auto;margin:12px 12px 0;border-radius:18px}
body.theme-cockpit .navbar-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px}
body.theme-cockpit .navbar-header .navbar-brand{order:1;min-width:0;flex:1}
body.theme-cockpit .navbar-header .navbar-toggle{order:2;flex:none;margin:0}
body.theme-cockpit .navbar-brand{display:flex!important;align-items:center;gap:10px;padding:0 4px!important;font-size:15px!important;font-weight:800;text-align:left}
body.theme-cockpit .navbar-brand:before{width:36px;height:36px;border-radius:12px;font-size:17px;line-height:36px}
body.theme-cockpit .navbar-collapse{padding:8px 10px 12px;background:var(--surface);border-top:1px solid var(--line)}
body.theme-cockpit .navbar-default .navbar-nav>li>a{display:flex;align-items:center;gap:12px;margin:2px 0;padding:11px 12px;border-radius:12px;font-size:13px!important}
body.theme-cockpit .navbar-default .navbar-nav>li>a i{flex:0 0 20px;width:20px;margin:0;text-align:center}
body.theme-cockpit>.container{padding:16px 14px 6px!important}
body.theme-cockpit .cockpit-head{gap:10px}
body.theme-cockpit .cockpit-hi h1{font-size:20px}
body.theme-cockpit .cockpit-head-side{width:100%;margin-left:0}
body.theme-cockpit .cockpit-upload{flex:1;justify-content:center}
body.theme-cockpit .cockpit-quota{flex-direction:column;align-items:flex-start;gap:16px;padding:22px 20px;border-radius:20px}
body.theme-cockpit .cockpit-quota-num strong{font-size:34px}
body.theme-cockpit .cockpit-ring{align-self:center}
body.theme-cockpit .well.bs-component{padding:16px 14px 18px}
body.theme-cockpit .well.bs-component>h2{font-size:17px}
}
/* ===== 放在最后：布局型外观的搜索框在窄屏要竖排 =====
   各外观自己写了 body.theme-xxx .searchbox .form-inline{display:flex}，
   和这里的选择器特异性相同（0,3,0），同分时靠源码顺序决定胜负，所以必须放在它们后面，
   否则窄屏上搜索框还是横排、被挤到显示不全 */
@media (max-width:767px){
body.layout-theme .searchbox,body.layout-theme .searchbox .form-inline{width:100%}
body.layout-theme .searchbox .form-inline{flex-direction:column;align-items:stretch;gap:8px}
body.layout-theme .searchbox input.form-control[type="search"]{width:100%;min-width:0}
body.layout-theme .searchbox .btn{width:100%}
}


/* ===== 深空科技风：通用组件的深色覆盖 =====
 从「黑夜风格」整体克隆，覆盖文件查看页、上传页、个人中心等页面里的
 标签页 / 输入框 / 提示框 / 下拉 / 弹窗等通用组件；
 布局和列表样式仍由后面的 studio-layout 那一段决定（排在这之后，会盖过这里） */
body.theme-nebula a{color:#7fb0ff}body.theme-nebula a:hover,body.theme-nebula a:focus{color:#9cc4ff}body.theme-nebula .dropdown-menu{background:#0b1730;border:1px solid var(--line);box-shadow:var(--shadow)}body.theme-nebula .dropdown-menu>li>a{color:#b7c8e6}body.theme-nebula .dropdown-menu>li>a:hover,body.theme-nebula .dropdown-menu>li>a:focus{background:#0f1e3d!important;color:#79a7ff!important}body.theme-nebula .well,body.theme-nebula .panel{border:1px solid var(--line);background:rgba(13,22,34,.9);box-shadow:var(--shadow)}body.theme-nebula .well.bs-component h2{color:#f0f6ff}body.theme-nebula .panel-heading{background:#111b2a!important;border-bottom:1px solid var(--line)!important;color:#f0f6ff!important}body.theme-nebula .panel-footer,body.theme-nebula .tab-content,body.theme-nebula .list-group-item{background:#0b1730;border-color:var(--line);color:#b7c8e6}body.theme-nebula .panel-title,body.theme-nebula .panel-title i{color:#f0f6ff}body.theme-nebula .table{background:transparent}body.theme-nebula .table>thead>tr>th{background:#172235!important;border-bottom:1px solid #2d3c58!important;color:#dce9ff}body.theme-nebula .table>tbody>tr>td{border-top:1px solid #182848!important;color:#b7c8e6}body.theme-nebula .table-striped>tbody>tr:nth-of-type(odd){background:rgba(255,255,255,.01)}body.theme-nebula .table-hover>tbody>tr:hover{background:rgba(47,123,255,.1)}body.theme-nebula .table-bordered,body.theme-nebula .table-bordered>tbody>tr>td,body.theme-nebula .table-bordered>thead>tr>th{border-color:#1b2c50!important}body.theme-nebula .filelist td a{color:#7fb0ff}body.theme-nebula .filelist .fa-fw{color:#86a2c8}body.theme-nebula .file-action{background:rgba(47,123,255,.14);color:#5fa3ff!important}body.theme-nebula .file-action-view{background:rgba(148,163,184,.12);color:#b7c6dd!important}body.theme-nebula .file-action-edit{background:rgba(34,211,238,.16);color:#b8a7ff!important}body.theme-nebula .file-action:hover{background:var(--primary);color:#fff!important}body.theme-nebula .file-type-badge{background:rgba(47,123,255,.18);color:#72adff}body.theme-nebula .filelist-summary{color:#9badc8}body.theme-nebula .form-control,body.theme-nebula .searchbox .form-control{background:#081228;border-color:#1f3358;color:#dce8ff}body.theme-nebula .form-control::placeholder{color:#72839c}body.theme-nebula .form-control:focus{border-color:#4f8cff;box-shadow:0 0 0 4px rgba(47,123,255,.16)}body.theme-nebula .input-group-addon{background:#111b2a;border-color:#1f3358;color:#9badc8}body.theme-nebula #upload_frame .checkbox label{color:#b7c6dd}body.theme-nebula #fileInput #pwd,body.theme-nebula #fileInput #storage_select{background:#081228!important;border-color:#1f3358!important;color:#dce8ff!important;-webkit-text-fill-color:#dce8ff}body.theme-nebula #fileInput #pwd::placeholder{color:#72839c!important}body.theme-nebula #fileInput #pwd:focus,body.theme-nebula #fileInput #storage_select:focus{background:#081228!important;border-color:#4f8cff!important;box-shadow:0 0 0 4px rgba(47,123,255,.16)!important}body.theme-nebula #fileInput .help-block{color:#8ba0c8!important}body.theme-nebula #upload_frame .checkbox .checkbox-material .check{border-color:#5b9bff!important}body.theme-nebula #upload_frame .checkbox input[type="checkbox"]:checked+.checkbox-material .check{background:#5b9bff!important;border-color:#5b9bff!important}body.theme-nebula .btn-raised.btn-primary,body.theme-nebula .btn-primary{background:linear-gradient(135deg,#2f7bff,#255bd8)!important;color:#fff!important}body.theme-nebula .btn-raised.btn-primary:hover,body.theme-nebula .btn-primary:hover{background:linear-gradient(135deg,#5b9bff,#2f6cff)!important}body.theme-nebula .btn-raised.btn-info,body.theme-nebula .btn-info{background:#335fce!important;color:#fff!important}body.theme-nebula .btn-raised.btn-danger,body.theme-nebula .btn-danger{background:var(--danger)!important;color:#fff!important}body.theme-nebula .btn-default{background:#0f1e3d!important;border:1px solid #1b2c50!important;color:#b7c8e6!important}body.theme-nebula .pagination>li>a,body.theme-nebula .pagination>li>span{background:#0d1522;border:1px solid #1b2c50;color:#aabbd3}body.theme-nebula .pagination>li>a:hover,body.theme-nebula .pagination>.active>a,body.theme-nebula .pagination>.active>a:hover{background:#2f7bff;color:#fff;border-color:#2f7bff}body.theme-nebula .pagination>.disabled>a,body.theme-nebula .pagination>.disabled>a:hover{background:#101925;color:#667790;border-color:#24334c}body.theme-nebula .nav-tabs{background:#0b1730;border-bottom:1px solid var(--line)}body.theme-nebula .nav-tabs>li>a,body.theme-nebula .nav-tabs>li>a:focus,body.theme-nebula .nav-tabs>li>a:hover{color:#aabbd3!important}body.theme-nebula .nav-tabs>li.active{background:rgba(47,123,255,.16);border-bottom-color:#2f7bff}body.theme-nebula .nav-tabs>li.active>a{color:#7fb0ff!important}body.theme-nebula .view{background:#0b1730;border-color:var(--line)}body.theme-nebula .tubiao{background:#0f1e3d;color:#7fb0ff}body.theme-nebula .elsetext,body.theme-nebula .filename{color:#aabbd3}body.theme-nebula .elsetext p:first-child{color:#f0f6ff}body.theme-nebula .image_view,body.theme-nebula .videoplayer{background:#050914}body.theme-nebula .fileinfo-table{background:#0b1730}body.theme-nebula .fileinfo-table th{background:#0f1e3d;color:#dce9ff}body.theme-nebula .progress{background:#1b2940}body.theme-nebula .progress-bar{background:linear-gradient(90deg,#2f7bff,#22d3ee)}body.theme-nebula #app .infobox{border-color:#1b2c50;background:#0b1730!important;box-shadow:var(--shadow)}body.theme-nebula #app .infobox:hover{border-color:#4f8cff;box-shadow:0 24px 64px rgba(47,123,255,.18)}body.theme-nebula #uploadTitle{color:#f0f6ff!important}body.theme-nebula .editor-toolbar{background:#111b2a;border-color:var(--line)}body.theme-nebula #file_content{background:#050914!important;color:#dce8ff!important;border-color:#1b2c50!important}body.theme-nebula .footer,body.theme-nebula .footer .text-muted{color:#7890ad}body.theme-nebula .searchbox input.form-control[type="search"]{background:#081228!important;border-color:#1f3358!important;color:#dce8ff!important;-webkit-text-fill-color:#dce8ff}body.theme-nebula .searchbox input.form-control[type="search"]::placeholder{color:#72839c}body.theme-nebula .searchbox input.form-control[type="search"]:focus{background:#081228!important;border-color:#4f8cff!important;box-shadow:0 0 0 4px rgba(47,123,255,.16)!important}body.theme-nebula .searchbox .btn{background:#0f1e3d!important;border:1px solid #1b2c50!important;color:#b7c8e6!important}body.theme-nebula .searchbox .btn:hover,body.theme-nebula .searchbox .btn:focus{background:#2f7bff!important;color:#fff!important}body.theme-nebula .tab-content .input-group .form-control[readonly]{background:#081228!important;border-color:#1f3358!important;color:#dce8ff!important;-webkit-text-fill-color:#dce8ff}body.theme-nebula .tab-content .input-group .form-control[readonly]:focus{background:#081228!important;border-color:#4f8cff!important;box-shadow:0 0 0 4px rgba(47,123,255,.16)!important}body.theme-nebula .tab-content .input-group-btn .copy-btn{background:#0f1e3d!important;border-color:#1b2c50!important;color:#b7c8e6!important}body.theme-nebula .tab-content .input-group-btn .copy-btn:hover,body.theme-nebula .tab-content .input-group-btn .copy-btn:focus{background:#20314d!important;color:#7fb0ff!important}body.theme-nebula .tab-content .form-group .control-label{color:#9badc8}body.theme-nebula .layui-layer-setwin a{filter:invert(1) brightness(1.7)}

/* ===== 蓝白工作台风（布局型）：白色分组侧栏 + 顶部搜索条 + 横幅/统计卡/文件面板 + 右侧数据列 ===== */
body.theme-studio{--page-bg:#f2f5fb;--surface:#ffffff;--surface-soft:#f7f9fe;--text:#1f2a44;--muted:#7c89a3;--line:#e8edf7;--primary:#3b7dfb;--primary-dark:#2d68e0;--accent:#6f8dfd;--danger:#ef4444;--tint:#eaf1ff;--drop-line:#cddcfb;--drop-tint:#f3f7ff;--shadow:0 10px 30px rgba(38,60,105,.06);--rail-w:250px;--topbar-h:72px;--hero-bg:linear-gradient(120deg,#eaf1ff 0,#f4f8ff 46%,#e8f0ff 100%);--upsell-bg:linear-gradient(160deg,#eef3ff,#e6ecff);background:var(--page-bg);color:var(--text)}
body.studio-layout a{color:var(--primary)}
body.studio-layout a:hover,body.studio-layout a:focus{color:var(--primary-dark)}
body.studio-layout .caret{display:none}

/* ---- 侧栏：整块白底贴左边，导航分成两组 ---- */
@media (min-width:768px){
body.studio-layout .navbar.navbar-default{position:fixed;top:0;left:0;bottom:0;z-index:1200;margin:0;width:var(--rail-w);display:flex;flex-direction:column;background:var(--surface);border:0;border-right:1px solid var(--line);border-radius:0;box-shadow:none;overflow:hidden}
body.studio-layout .navbar .container{width:100%;max-width:none;padding:0;margin:0;display:flex;flex-direction:column;height:100%;min-height:100%}
body.studio-layout .navbar-header{float:none;width:100%;padding:22px 20px 18px;border-bottom:1px solid var(--line)}
body.studio-layout .navbar-brand{float:none;display:flex;align-items:center;gap:11px;height:auto;padding:0;margin:0!important;color:var(--text)!important;font-size:17px;font-weight:800;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.studio-layout .navbar-brand:before{content:"\f0c2";flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;font-family:FontAwesome;font-size:17px;font-weight:400;box-shadow:0 8px 18px rgba(59,125,251,.28)}
body.studio-layout .navbar-brand:after{content:"简单 · 安全 · 高效";position:absolute;left:69px;top:44px;color:var(--muted);font-size:11.5px;font-weight:600;letter-spacing:.02em}
body.studio-layout .navbar-header{position:relative;padding-bottom:30px}
body.studio-layout .navbar-collapse{float:none;width:100%;flex:1;display:flex!important;flex-direction:column;padding:14px 12px 0;border:0;box-shadow:none;overflow-y:auto;overflow-x:hidden}
body.studio-layout .navbar-nav{float:none!important;width:100%;margin:0!important;display:flex;flex-direction:column;gap:3px}
/* 两个 ul 各自带一个分组标题，导航本身的 HTML 不用动 */
body.studio-layout .navbar-nav:before{content:"工作空间";display:block;padding:2px 12px 8px;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.04em}
body.studio-layout .navbar-nav.navbar-right:before{content:"个人中心";margin-top:14px;padding-top:16px;border-top:1px solid var(--line)}
body.studio-layout .navbar-nav>li{width:100%;float:none}
body.studio-layout .navbar-nav.navbar-right{float:none!important;width:100%;margin:0!important}
body.studio-layout .navbar-default .navbar-nav>li>a{position:relative;display:flex;align-items:center;gap:11px;margin:0;padding:10px 12px;border-radius:10px;color:#5b6a86!important;font-size:14px;font-weight:600;line-height:1.4}
body.studio-layout .navbar-default .navbar-nav>li>a i{width:18px;color:#93a1bb;font-size:15px;text-align:center;transition:color .15s}
body.studio-layout .navbar-default .navbar-nav>li>a:hover,body.studio-layout .navbar-default .navbar-nav>li>a:focus{background:var(--surface-soft)!important;color:var(--text)!important}
body.studio-layout .navbar-default .navbar-nav>li.active>a,body.studio-layout .navbar-default .navbar-nav>li.active>a:hover,body.studio-layout .navbar-default .navbar-nav>li.active>a:focus{background:var(--tint)!important;color:var(--primary)!important;font-weight:700}
body.studio-layout .navbar-default .navbar-nav>li.active>a i{color:var(--primary)}
body.studio-layout .navbar-default .navbar-nav>li.active>a:before{content:"";position:absolute;left:-12px;top:9px;bottom:9px;width:3px;border-radius:0 3px 3px 0;background:var(--primary)}
body.studio-layout .navbar-nav .open>.dropdown-menu{position:static;float:none;width:100%;margin:2px 0 0;padding:4px;background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;box-shadow:none}
body.studio-layout .navbar-nav .open>.dropdown-menu>li>a{padding:9px 12px;border-radius:8px;color:#5b6a86;white-space:normal}
body.studio-layout .navbar-nav .open>.dropdown-menu>li>a:hover{background:var(--tint);color:var(--primary)}
/* 内容区让开侧栏和顶栏 */
body.studio-layout>.container,body.studio-layout>.container-fluid{width:auto!important;max-width:none!important;margin:0!important;padding:22px 26px 8px calc(var(--rail-w) + 26px)!important}
body.studio-layout>footer.footer{margin:0!important;padding-left:calc(var(--rail-w) + 26px)}
body.studio-layout .theme-announcement-bar{margin:0 0 0 var(--rail-w)!important;width:calc(100% - var(--rail-w))!important;border-radius:0!important}
body.studio-layout .mpimg-link-band{margin-left:var(--rail-w)!important;width:calc(100% - var(--rail-w))!important}
}
body.studio-layout .navbar-default .navbar-toggle{border-color:var(--line)!important;background:var(--surface)!important}
body.studio-layout .navbar-default .navbar-toggle .icon-bar{background:var(--primary)!important}

/* ---- 顶部搜索条 ---- */
/* 顶栏走正常文档流（sticky），下面的公告条和内容区就不用再各自留出顶栏高度，
   否则两边都留一次会多出一大块空白 */
body.studio-layout .studio-topbar{position:sticky;top:0;margin-left:var(--rail-w);z-index:1100;display:flex;align-items:center;gap:16px;height:var(--topbar-h);padding:0 26px;background:var(--surface);border-bottom:1px solid var(--line)}
body.studio-layout .studio-search{position:relative;display:flex;align-items:center;flex:0 1 520px;height:42px;padding:0 12px 0 40px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);transition:border-color .15s,background .15s}
body.studio-layout .studio-search:focus-within{border-color:var(--primary);background:var(--surface)}
body.studio-layout .studio-search>i{position:absolute;left:14px;color:#9aa7c0;font-size:14px}
body.studio-layout .studio-search input{flex:1;width:100%;height:40px;padding:0;border:0;background:transparent;box-shadow:none!important;color:var(--text);font-size:14px}
body.studio-layout .studio-search input::placeholder{color:#9aa7c0}
body.studio-layout .studio-search input:focus{outline:0}
body.studio-layout .studio-kbd{flex:0 0 auto;padding:3px 8px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:#98a5be;font-size:11.5px;font-weight:700;box-shadow:none}
body.studio-layout .studio-search-off{padding-left:38px;color:var(--muted);font-size:14px;font-weight:600}
body.studio-layout .studio-topbar-side{display:flex;align-items:center;gap:12px;margin-left:auto}
body.studio-layout .studio-upload{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 20px;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff!important;font-size:14px;font-weight:700;box-shadow:0 10px 22px rgba(59,125,251,.26)}
body.studio-layout .studio-upload:hover,body.studio-layout .studio-upload:focus{background:linear-gradient(135deg,var(--primary-dark),var(--primary));color:#fff!important;text-decoration:none}
body.studio-layout .studio-avatar{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--tint);color:var(--primary)!important;font-size:15px;font-weight:800}
body.studio-layout .studio-avatar:hover{background:var(--primary);color:#fff!important;text-decoration:none}
body.studio-layout .studio-avatar-guest{background:var(--surface-soft);color:var(--muted)!important}

/* ---- 侧栏底部的升级卡 ---- */
body.studio-layout .studio-upsell{margin:14px 12px 16px;padding:16px 15px 15px;border-radius:14px;background:var(--upsell-bg);text-align:left}
body.studio-layout .studio-upsell-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin-bottom:9px;border-radius:10px;background:linear-gradient(135deg,#ffc46b,#ff9f45);color:#fff;font-size:14px}
body.studio-layout .studio-upsell strong{display:block;color:var(--text);font-size:14px;font-weight:800}
body.studio-layout .studio-upsell p{margin:6px 0 12px;color:var(--muted);font-size:12px;line-height:1.7}
body.studio-layout .studio-upsell-btn{display:block;padding:9px 0;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff!important;font-size:13px;font-weight:700;text-align:center;box-shadow:0 8px 18px rgba(59,125,251,.24)}
body.studio-layout .studio-upsell-btn:hover{color:#fff!important;text-decoration:none;filter:brightness(1.05)}

/* ---- 主区两列：左内容 + 右数据列 ---- */
body.studio-layout .layout-shell{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}
body.studio-layout .studio-main{min-width:0}
@media (max-width:1399px){body.studio-layout .layout-shell{grid-template-columns:minmax(0,1fr)}body.studio-layout .studio-side{display:none}}

/* ---- 横幅 ---- */
body.studio-layout .studio-hero{position:relative;display:flex;align-items:center;gap:20px;min-height:150px;margin:0 0 16px;padding:26px 30px;border-radius:20px;background:var(--hero-bg);overflow:hidden}
body.studio-layout .studio-hero-main{position:relative;z-index:1;display:flex;align-items:center;gap:16px}
body.studio-layout .studio-hero-badge{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:15px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;font-size:21px;box-shadow:0 12px 24px rgba(59,125,251,.28)}
body.studio-layout .studio-hero h1{margin:0;color:var(--text);font-size:28px;font-weight:800;letter-spacing:-.02em}
body.studio-layout .studio-hero p{margin:7px 0 0;color:var(--muted);font-size:14px}
body.studio-layout .studio-hero-slogan{position:relative;z-index:1;margin-left:auto;padding-right:14px;color:#7ea0ea;font-size:15px;font-weight:700;line-height:1.7;text-align:center;transform:rotate(-7deg);font-family:"Kaiti SC","STKaiti",Kaiti,"Xingkai SC","KaiTi","楷体",cursive}
body.studio-layout .studio-hero-art{position:relative;z-index:1;flex:0 0 auto;width:210px;margin:-14px -8px -22px 0}
body.studio-layout .studio-hero-art svg{display:block;width:100%;height:auto}
@media (max-width:991px){body.studio-layout .studio-hero{flex-wrap:wrap;padding:22px}body.studio-layout .studio-hero-slogan,body.studio-layout .studio-hero-art{display:none}}

/* ---- 四张统计卡 ---- */
body.studio-layout .layout-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 16px}
@media (max-width:991px){body.studio-layout .layout-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
body.studio-layout .layout-stat{position:relative;display:flex;align-items:center;gap:13px;padding:18px 40px 18px 18px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}
body.studio-layout .layout-stat:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(38,60,105,.1)}
body.studio-layout .layout-stat:after{content:"\f105";position:absolute;right:16px;top:50%;margin-top:-9px;color:#c2cddf;font-family:FontAwesome;font-size:16px}
body.studio-layout .layout-stat-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:14px;background:var(--tint);color:var(--primary);font-size:19px}
body.studio-layout .layout-stat strong{display:block;color:var(--text);font-size:26px;font-weight:800;line-height:1.15;letter-spacing:-.02em}
body.studio-layout .layout-stat span{color:var(--muted);font-size:13px;font-weight:600}
body.studio-layout .layout-stat-image .layout-stat-icon{background:#f3ecff;color:#8b5cf6}
body.studio-layout .layout-stat-video .layout-stat-icon{background:#ffeee2;color:#f97316}
body.studio-layout .layout-stat-today .layout-stat-icon{background:#e6f7ef;color:#16a34a}

/* ---- 文件面板 ---- */
body.studio-layout .well.bs-component{margin:0;padding:22px 22px 8px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}
body.studio-layout .well.bs-component h2{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 4px;color:var(--text);font-size:19px;font-weight:800;letter-spacing:-.01em}
body.studio-layout .layout-page-sub{margin:0 0 14px;color:var(--muted);font-size:13px}
body.studio-layout .searchbox{margin-left:auto}
body.studio-layout .searchbox .form-inline{display:flex;align-items:center;gap:8px}
body.studio-layout .searchbox .form-control{height:38px;min-width:220px;padding:0 14px;border:1px solid var(--line)!important;border-radius:11px;background:var(--surface-soft)!important;box-shadow:none!important;color:var(--text);font-size:13px}
body.studio-layout .searchbox .form-control:focus{border-color:var(--primary)!important;background:var(--surface)!important}
body.studio-layout .searchbox .btn{height:38px;padding:0 16px;border-radius:11px;background:var(--tint)!important;border:0!important;color:var(--primary)!important;font-size:13px;font-weight:700;box-shadow:none!important}
body.studio-layout .searchbox .btn:hover,body.studio-layout .searchbox .btn:focus{background:var(--primary)!important;color:#fff!important}

/* ---- 筛选标签 + 工具条 ---- */
body.studio-layout .studio-filterbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 16px}
body.studio-layout .layout-filters{display:flex;flex-wrap:wrap;gap:9px;margin:0}
body.studio-layout .layout-filter{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:#5b6a86;font-size:13px;font-weight:650}
body.studio-layout .layout-filter em{padding:1px 7px;border-radius:7px;background:var(--surface-soft);color:var(--muted);font-size:11.5px;font-style:normal;font-weight:700}
body.studio-layout .layout-filter:hover{border-color:var(--primary);color:var(--primary);text-decoration:none}
body.studio-layout .layout-filter.active{border-color:transparent;background:var(--primary);color:#fff}
body.studio-layout .layout-filter.active em{background:rgba(255,255,255,.24);color:#fff}
body.studio-layout .studio-tools{display:flex;align-items:center;gap:10px;margin-left:auto}
body.studio-layout .studio-sort{position:relative;display:inline-flex;align-items:center}
body.studio-layout .studio-sort>i{position:absolute;right:12px;color:#98a5be;font-size:14px;pointer-events:none}
body.studio-layout .studio-sort-sel{height:38px;padding:0 32px 0 14px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:#5b6a86;font-size:13px;font-weight:650;appearance:none;-webkit-appearance:none}
body.studio-layout .studio-sort-sel:focus{outline:0;border-color:var(--primary)}
body.studio-layout .studio-viewtoggle{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}
body.studio-layout .studio-viewtoggle button{width:30px;height:28px;border:0;border-radius:8px;background:transparent;color:#98a5be;font-size:13px;line-height:1}
body.studio-layout .studio-viewtoggle button.active{background:var(--primary);color:#fff}

/* ---- 表格 ---- */
body.studio-layout .table-responsive{border:0;margin:0}
body.studio-layout .table.filelist{margin:0;border-collapse:separate;border-spacing:0}
body.studio-layout .table.filelist>thead>tr>th{padding:12px 14px;border:0;border-bottom:1px solid var(--line);background:var(--surface-soft);color:var(--muted);font-size:12.5px;font-weight:700;white-space:nowrap}
body.studio-layout .table.filelist>thead>tr>th:first-child{border-radius:10px 0 0 10px}
body.studio-layout .table.filelist>thead>tr>th:last-child{border-radius:0 10px 10px 0}
body.studio-layout .table.filelist>tbody>tr>td{padding:14px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);font-size:13.5px;vertical-align:middle}
body.studio-layout .table-striped>tbody>tr:nth-of-type(odd)>td{background:transparent}
body.studio-layout .table-hover>tbody>tr:hover>td{background:var(--surface-soft)}
body.studio-layout .table.filelist>tbody>tr:last-child>td{border-bottom:0}
body.studio-layout .table.filelist>tbody>tr>td:nth-child(2){color:var(--text);font-weight:650}
body.studio-layout .table.filelist>tbody>tr>td .fa-fw{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-right:10px;border-radius:10px;background:var(--tint);color:var(--primary);font-size:15px;vertical-align:middle}
body.studio-layout .file-type-badge{display:inline-block;padding:3px 10px;border-radius:8px;background:var(--tint);color:var(--primary);font-size:12px;font-weight:700}
body.studio-layout .file-actions{display:flex;gap:6px}
body.studio-layout .file-action{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:#7c89a3!important;font-size:13px}
body.studio-layout .file-action .file-action-label{display:none}
body.studio-layout .file-action:hover{border-color:transparent;background:var(--primary);color:#fff!important}
body.studio-layout .filelist-footer{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px 0 16px;border-top:1px solid var(--line);margin-top:2px}
body.studio-layout .filelist-summary{color:var(--muted);font-size:13px}
body.studio-layout .filelist-pager{margin-left:auto}
body.studio-layout .pagination{margin:0}
body.studio-layout .pagination>li>a{min-width:34px;margin:0 3px;border:1px solid var(--line);border-radius:9px!important;background:var(--surface);color:#5b6a86;font-size:13px;text-align:center}
body.studio-layout .pagination>li>a:hover{border-color:var(--primary);color:var(--primary)}
body.studio-layout .pagination>.active>a,body.studio-layout .pagination>.active>a:hover,body.studio-layout .pagination>.active>a:focus{border-color:transparent;background:var(--primary);color:#fff}
body.studio-layout .pagination>.disabled>a{background:var(--surface-soft);color:#b9c3d6}

/* 网格视图：表格行改成卡片，表头藏起来 */
body.studio-grid-on.theme-studio .table.filelist>thead{display:none}
body.studio-grid-on.theme-studio .table.filelist,body.studio-grid-on.theme-studio .table.filelist>tbody{display:block}
body.studio-grid-on.theme-studio .table.filelist>tbody{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;padding:4px 0 14px}
body.studio-grid-on.theme-studio .table.filelist>tbody>tr{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
body.studio-grid-on.theme-studio .table.filelist>tbody>tr>td{display:block;padding:0;border:0;background:transparent!important;font-size:12.5px;color:var(--muted)}
body.studio-grid-on.theme-studio .table.filelist>tbody>tr>td:first-child{display:none}
body.studio-grid-on.theme-studio .table.filelist>tbody>tr>td:nth-child(2){font-size:14px;color:var(--text);font-weight:650}
body.studio-grid-on.theme-studio .file-actions{margin-top:6px}

/* ---- 右侧数据列 ---- */
body.studio-layout .studio-side{display:flex;flex-direction:column;gap:16px;min-width:0}
body.studio-layout .studio-panel{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}
body.studio-layout .studio-panel-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}
body.studio-layout .studio-panel-head strong{color:var(--text);font-size:15px;font-weight:800}
body.studio-layout .studio-panel-num{margin-left:auto;color:var(--text);font-size:15px;font-weight:800}
body.studio-layout .studio-panel-more{margin-left:auto;color:var(--muted);font-size:12.5px;font-weight:650}
body.studio-layout .studio-panel-more:hover{color:var(--primary);text-decoration:none}
body.studio-layout .studio-badge{margin-left:auto;padding:3px 10px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:12px;font-weight:700}
body.studio-layout .studio-badge.ok{background:#e6f7ef;color:#12925a}
body.studio-layout .studio-badge.bad{background:#fdeceb;color:#d64545}
body.studio-layout .studio-quota{display:flex;align-items:center;gap:16px}
body.studio-layout .studio-ring{position:relative;flex:0 0 auto;width:86px;height:86px}
body.studio-layout .studio-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
body.studio-layout .studio-ring circle{fill:none;stroke-width:9;stroke-linecap:round}
body.studio-layout .studio-ring-bg{stroke:#eef2fa}
body.studio-layout .studio-ring-fg{stroke:var(--primary)}
body.studio-layout .studio-ring b{position:absolute;left:0;right:0;top:50%;margin-top:-11px;color:var(--text);font-size:16px;font-weight:800;text-align:center}
body.studio-layout .studio-quota-info{flex:1;min-width:0}
body.studio-layout .studio-quota-info p{margin:0;color:var(--muted);font-size:12.5px;line-height:1.9}
body.studio-layout .studio-quota-info p b{color:var(--text);font-weight:700}
body.studio-layout .studio-quota-label{margin-top:4px!important}
body.studio-layout .studio-quota-bar{display:block;height:6px;margin:6px 0 5px;border-radius:999px;background:#eef2fa;overflow:hidden}
body.studio-layout .studio-quota-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--accent))}
body.studio-layout .studio-quota-info em{color:var(--muted);font-size:12px;font-style:normal}
body.studio-layout .studio-rights{display:flex;flex-direction:column;gap:13px}
body.studio-layout .studio-right-row{display:flex;align-items:center;gap:11px}
body.studio-layout .studio-right-row em{color:#5b6a86;font-size:13.5px;font-style:normal;font-weight:650}
body.studio-layout .studio-right-row b{margin-left:auto;color:var(--text);font-size:13.5px;font-weight:800}
body.studio-layout .studio-right-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;font-size:13px}
body.studio-layout .studio-ico-blue{background:var(--tint);color:var(--primary)}
body.studio-layout .studio-ico-indigo{background:#eef0ff;color:#6366f1}
body.studio-layout .studio-ico-amber{background:#fff3e2;color:#f59e0b}
body.studio-layout .studio-acts{display:flex;flex-wrap:wrap;gap:10px}
/* 每个入口平分整行：3 个也好 4 个也好都铺满，不会像固定列数那样空出一格 */
body.studio-layout .studio-act{flex:1 1 0;min-width:0}
body.studio-layout .studio-act{display:flex;flex-direction:column;align-items:center;gap:7px;padding:14px 6px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:#5b6a86!important;font-size:12.5px;font-weight:650;text-align:center}
body.studio-layout .studio-act i{font-size:16px;color:var(--primary)}
body.studio-layout .studio-act:hover{border-color:var(--primary);text-decoration:none}
body.studio-layout .studio-act.primary{border-color:transparent;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff!important;box-shadow:0 10px 20px rgba(59,125,251,.24)}
body.studio-layout .studio-act.primary i{color:#fff}
body.studio-layout .studio-feed{display:flex;flex-direction:column;gap:12px}
body.studio-layout .studio-feed-item{display:flex;align-items:center;gap:11px;min-width:0}
body.studio-layout .studio-feed-item:hover{text-decoration:none}
body.studio-layout .studio-feed-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:32px;height:32px;border-radius:10px;background:var(--tint);color:var(--primary);font-size:13px}
body.studio-layout .studio-feed-icon[data-group="image"]{background:#f3ecff;color:#8b5cf6}
body.studio-layout .studio-feed-icon[data-group="video"]{background:#ffeee2;color:#f97316}
body.studio-layout .studio-feed-icon[data-group="archive"]{background:#fff3e2;color:#d97706}
body.studio-layout .studio-feed-body{min-width:0}
body.studio-layout .studio-feed-body b{display:block;color:var(--text);font-size:13px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.studio-layout .studio-feed-body em{color:var(--muted);font-size:12px;font-style:normal}
body.studio-layout .studio-empty{margin:0;color:var(--muted);font-size:13px}

/* ---- 页脚 ---- */
body.studio-layout .footer{margin-top:26px;padding:22px 0 26px;border-top:0;background:transparent}
body.studio-layout .footer,body.studio-layout .footer .text-muted{color:var(--muted);font-size:13px}

/* ---- 窄屏：侧栏和顶栏都回到普通文档流 ---- */
@media (max-width:767px){
body.studio-layout .navbar.navbar-default{position:static;width:auto;background:var(--surface);border-bottom:1px solid var(--line)}
body.studio-layout .navbar-nav:before,body.studio-layout .navbar-nav.navbar-right:before{display:none}
body.studio-layout .studio-topbar{position:static;margin-left:0;height:auto;flex-wrap:wrap;gap:10px;padding:12px 14px}
body.studio-layout .studio-search{flex:1 1 100%}
body.studio-layout .studio-topbar-side{margin-left:0}
body.studio-layout>.container,body.studio-layout>.container-fluid{padding:14px 12px 8px!important}
body.studio-layout .studio-upsell{margin:12px 14px}
body.studio-layout .layout-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
body.studio-layout .studio-hero h1{font-size:22px}
body.studio-layout .well.bs-component{padding:16px 14px 4px;border-radius:16px}
body.studio-layout .studio-tools{margin-left:0}
}

/* ===== 工作台家族新增的公共块（横幅卖点 / 按钮 / 推广横幅），五套外观共用 ===== */
body.studio-layout .studio-hero-copy{min-width:0}
body.studio-layout .studio-hero-kicker{display:inline-block;margin-bottom:12px;padding:5px 14px;border-radius:999px;background:var(--tint);color:var(--primary);font-size:12.5px;font-weight:700}
body.studio-layout .studio-hero h1 span{display:block;color:var(--primary)}
body.studio-layout .studio-hero-tags{margin-top:6px!important;color:var(--muted);font-size:13px}
body.studio-layout .studio-hero-checks{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:14px}
body.studio-layout .studio-hero-checks span{display:inline-flex;align-items:center;gap:7px;color:var(--text);font-size:13.5px;font-weight:650}
body.studio-layout .studio-hero-checks i{color:var(--primary);font-size:15px}
body.studio-layout .studio-hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
body.studio-layout .studio-hero-btn{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 24px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text)!important;font-size:14px;font-weight:700}
body.studio-layout .studio-hero-btn:hover{border-color:var(--primary);color:var(--primary)!important;text-decoration:none}
body.studio-layout .studio-hero-btn.primary{border-color:transparent;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff!important;box-shadow:0 12px 26px rgba(59,125,251,.26)}
body.studio-layout .studio-hero-btn.primary:hover{color:#fff!important;filter:brightness(1.06)}
body.studio-layout .studio-hero-feats{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
body.studio-layout .studio-feat{display:inline-flex;align-items:center;gap:9px;padding:9px 16px 9px 10px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}
body.studio-layout .studio-feat i{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:var(--tint);color:var(--primary);font-size:14px}
body.studio-layout .studio-feat b{color:var(--text);font-size:13px;font-weight:700}
body.studio-layout .studio-feat em{display:block;color:var(--muted);font-size:11.5px;font-style:normal;font-weight:600}
body.studio-layout .studio-feat b+em{margin-top:2px}
body.studio-layout .studio-feat-violet{background:#f3ecff!important;color:#8b5cf6!important}
body.studio-layout .studio-feat-green{background:#e6f7ef!important;color:#16a34a!important}
body.studio-layout .studio-feat-cyan{background:#e2f7fb!important;color:#0891b2!important}
/* 推广横幅 */
body.studio-layout .studio-promo{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin:16px 0 0;padding:22px 26px;border:1px solid var(--line);border-radius:20px;background:var(--hero-bg)}
body.studio-layout .studio-promo-main{min-width:0;flex:1 1 320px}
body.studio-layout .studio-promo h3{margin:0;color:var(--text);font-size:19px;font-weight:800}
body.studio-layout .studio-promo p{margin:6px 0 0;color:var(--muted);font-size:13px}
body.studio-layout .studio-promo-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}
body.studio-layout .studio-promo-chips span{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:999px;background:var(--surface);color:#5b6a86;font-size:12.5px;font-weight:650}
body.studio-layout .studio-promo-chips i{color:var(--primary)}
body.studio-layout .studio-promo-slogan{color:var(--primary);font-size:14px;font-weight:700;line-height:1.7;text-align:center;transform:rotate(-6deg);opacity:.85;font-family:"Kaiti SC","STKaiti",Kaiti,"KaiTi","楷体",cursive}
body.studio-layout .studio-promo-btn{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 26px;border-radius:14px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff!important;font-size:14px;font-weight:700;box-shadow:0 12px 26px rgba(59,125,251,.26)}
body.studio-layout .studio-promo-btn:hover{color:#fff!important;text-decoration:none;filter:brightness(1.06)}
/* 会员卡里的升级按钮 */
body.studio-layout .studio-vip-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;padding:11px 0;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff!important;font-size:13.5px;font-weight:700;box-shadow:0 10px 22px rgba(59,125,251,.24)}
body.studio-layout .studio-vip-btn:hover{color:#fff!important;text-decoration:none;filter:brightness(1.06)}
body.studio-layout .layout-stat-doc .layout-stat-icon{background:#e8f0ff;color:#3b7dfb}
body.studio-layout .layout-stat-audio .layout-stat-icon{background:#e6f7ef;color:#10b981}
@media (max-width:1199px){body.studio-layout .layout-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1200px){body.theme-crisp .layout-stats,body.theme-azure .layout-stats{grid-template-columns:repeat(5,minmax(0,1fr))}}

/* ===== 深空科技风：深蓝星空底 + 发光描边 ===== */
body.theme-nebula{--page-bg:#050c1f;--surface:#0b1730;--surface-soft:#0f1e3d;--text:#dce8ff;--muted:#8ba0c8;--line:#1b2c50;--primary:#2f7bff;--primary-dark:#5b9bff;--accent:#22d3ee;--danger:#ff5d73;--tint:#12294f;--drop-line:#24406f;--drop-tint:#0f1e3d;--shadow:0 14px 40px rgba(0,0,0,.45);--rail-w:250px;--topbar-h:72px;--hero-bg:radial-gradient(900px 420px at 76% 18%,rgba(47,123,255,.28),transparent 62%),radial-gradient(600px 320px at 20% 90%,rgba(34,211,238,.16),transparent 60%),linear-gradient(160deg,#071433 0,#050c1f 100%);--upsell-bg:linear-gradient(160deg,#12294f,#0d1c3a);background:radial-gradient(1100px 520px at 82% -6%,rgba(47,123,255,.18),transparent 60%),linear-gradient(160deg,#04091a 0,#071433 48%,#050c1f 100%);color:var(--text)}
body.theme-nebula .studio-topbar{background:rgba(8,19,42,.86);border-bottom-color:var(--line)}
body.theme-nebula .navbar.navbar-default{background:rgba(8,19,42,.9);border-right-color:var(--line)}
body.theme-nebula .navbar-default .navbar-nav>li>a{color:#9fb3d8!important}
body.theme-nebula .navbar-default .navbar-nav>li.active>a{background:linear-gradient(135deg,rgba(47,123,255,.28),rgba(34,211,238,.18))!important;color:#eaf3ff!important;box-shadow:0 8px 22px rgba(47,123,255,.28)}
body.theme-nebula .studio-hero{border:1px solid rgba(90,150,255,.22)}
body.theme-nebula .studio-hero-slogan{color:#8fc7ff}
body.theme-nebula .layout-stat{background:linear-gradient(160deg,rgba(23,44,86,.9),rgba(11,23,48,.9));border-color:rgba(90,150,255,.2)}
body.theme-nebula .layout-stat-image .layout-stat-icon{background:rgba(139,92,246,.18);color:#a78bfa}
body.theme-nebula .layout-stat-video .layout-stat-icon{background:rgba(249,115,22,.18);color:#fb923c}
body.theme-nebula .layout-stat-today .layout-stat-icon{background:rgba(16,185,129,.18);color:#34d399}
body.theme-nebula .studio-feat{background:rgba(15,30,61,.8);border-color:rgba(90,150,255,.2)}
body.theme-nebula .studio-feat-violet{background:rgba(139,92,246,.18)!important;color:#a78bfa!important}
body.theme-nebula .studio-feat-green{background:rgba(16,185,129,.18)!important;color:#34d399!important}
body.theme-nebula .studio-ico-indigo{background:rgba(99,102,241,.18);color:#818cf8}
body.theme-nebula .studio-ico-amber{background:rgba(245,158,11,.18);color:#fbbf24}
body.theme-nebula .studio-ico-cyan{background:rgba(34,211,238,.18);color:#22d3ee}
body.theme-nebula .studio-badge.ok{background:rgba(16,185,129,.18);color:#34d399}
body.theme-nebula .studio-feed-icon[data-group="image"]{background:rgba(139,92,246,.18);color:#a78bfa}
body.theme-nebula .studio-feed-icon[data-group="video"]{background:rgba(249,115,22,.18);color:#fb923c}
body.theme-nebula .studio-feed-icon[data-group="archive"]{background:rgba(245,158,11,.18);color:#fbbf24}
body.theme-nebula .studio-ring-bg{stroke:#16264a}
body.theme-nebula .studio-quota-bar,body.theme-nebula .tg-preview-bar{background:#16264a}
body.theme-nebula .table.filelist>thead>tr>th{background:var(--surface-soft);color:#9fb3d8}
body.theme-nebula .file-action{background:var(--surface-soft)}
body.theme-nebula .studio-viewtoggle,body.theme-nebula .studio-sort-sel,body.theme-nebula .layout-filter{background:var(--surface-soft);color:#b7c8e6}
body.theme-nebula .searchbox .form-control,body.theme-nebula .studio-search{background:var(--surface-soft)!important;color:var(--text)}
body.theme-nebula .studio-kbd{background:var(--tint);border-color:var(--line);color:#9fb3d8}

/* ===== 紫韵会员风：淡紫渐变 + 金色会员卡 ===== */
body.theme-royal{--page-bg:#eef1fd;--surface:#ffffff;--surface-soft:#f6f5ff;--text:#231d48;--muted:#7c78a3;--line:#e6e6fa;--primary:#6366f1;--primary-dark:#4f46e5;--accent:#a78bfa;--danger:#ef4444;--tint:#eeecff;--drop-line:#d6d2f7;--drop-tint:#f8f6ff;--shadow:0 12px 32px rgba(70,60,140,.08);--rail-w:250px;--topbar-h:72px;--hero-bg:linear-gradient(120deg,#dbe6ff 0,#e9e3ff 42%,#dcefff 100%);--upsell-bg:linear-gradient(160deg,#fff3d9,#ffe9c9);background:linear-gradient(180deg,#eef1fd 0,#f4f2fd 100%);color:var(--text)}
body.theme-royal .studio-upsell-icon{background:linear-gradient(135deg,#ffcf6b,#f59e0b)}
body.theme-royal .studio-upsell strong{color:#7a5a12}
body.theme-royal .studio-upsell p{color:#9a7b3a}
body.theme-royal .studio-upsell-btn{background:linear-gradient(135deg,#f7b733,#f59e0b);box-shadow:0 8px 18px rgba(245,158,11,.28)}
/* 会员权限卡整块换成金色调，对应原型里的 SVIP 卡 */
body.theme-royal .studio-panel-rights{background:linear-gradient(160deg,#fff8e8,#fff1d6);border-color:#f6e2b8}
body.theme-royal .studio-panel-rights .studio-panel-head strong{color:#7a5a12}
body.theme-royal .studio-panel-rights .studio-badge.ok{background:linear-gradient(135deg,#f7b733,#f59e0b);color:#fff}
body.theme-royal .studio-panel-rights .studio-right-icon{background:rgba(245,158,11,.16);color:#c07f10}
body.theme-royal .studio-panel-rights .studio-right-row em{color:#8a6a25}
body.theme-royal .studio-panel-rights .studio-right-row b{color:#5c4310}
body.theme-royal .studio-vip-btn{background:linear-gradient(135deg,#f7b733,#f59e0b);box-shadow:0 10px 22px rgba(245,158,11,.3)}
body.theme-royal .layout-stat{background:linear-gradient(160deg,#eef3ff,#ffffff)}
body.theme-royal .layout-stat-image{background:linear-gradient(160deg,#f6efff,#ffffff)}
body.theme-royal .layout-stat-video{background:linear-gradient(160deg,#fff1e6,#ffffff)}
body.theme-royal .layout-stat-today{background:linear-gradient(160deg,#e9f9f0,#ffffff)}

/* ===== 清爽极简风：几乎纯白，横幅不做卡片 ===== */
body.theme-crisp{--page-bg:#f7f9fc;--surface:#ffffff;--surface-soft:#f4f7fc;--text:#0f172a;--muted:#64748b;--line:#e9eef6;--primary:#2563eb;--primary-dark:#1d4ed8;--accent:#60a5fa;--danger:#ef4444;--tint:#e8f0fe;--drop-line:#cddcfb;--drop-tint:#f3f7ff;--shadow:0 8px 24px rgba(15,23,42,.05);--rail-w:240px;--topbar-h:72px;--hero-bg:transparent;--upsell-bg:linear-gradient(160deg,#eef4ff,#e7eeff);background:var(--page-bg);color:var(--text)}
/* 横幅直接铺在页面底色上，没有卡片边框 */
body.theme-crisp .studio-hero{padding:8px 4px 22px;border-radius:0;background:transparent;min-height:0}
body.theme-crisp .studio-hero h1{font-size:34px;letter-spacing:-.03em}
body.theme-crisp .studio-hero p{font-size:14.5px}
body.theme-crisp .studio-hero-art{width:250px;margin-right:0}
body.theme-crisp .layout-stat{box-shadow:none}
body.theme-crisp .studio-panel{box-shadow:none}
body.theme-crisp .well.bs-component{box-shadow:none}
/* 最近动态做成时间轴 */
body.theme-crisp .studio-feed{position:relative;padding-left:14px}
body.theme-crisp .studio-feed:before{content:"";position:absolute;left:3px;top:6px;bottom:6px;width:2px;border-radius:2px;background:var(--line)}
body.theme-crisp .studio-feed-item{position:relative}
body.theme-crisp .studio-feed-item:before{content:"";position:absolute;left:-14px;top:12px;width:8px;height:8px;border-radius:50%;background:var(--primary)}

/* ===== 蓝天白云风：天蓝渐变横幅 + 云 ===== */
body.theme-azure{--page-bg:#eef6ff;--surface:#ffffff;--surface-soft:#f4f9ff;--text:#14314f;--muted:#6b88a8;--line:#dfeafc;--primary:#3b82f6;--primary-dark:#2563eb;--accent:#7dd3fc;--danger:#ef4444;--tint:#e4f0ff;--drop-line:#c7e0fb;--drop-tint:#f0f8ff;--shadow:0 12px 30px rgba(28,80,140,.07);--rail-w:250px;--topbar-h:72px;--hero-bg:linear-gradient(160deg,#cfe6ff 0,#e6f3ff 46%,#f2f9ff 100%);--upsell-bg:linear-gradient(160deg,#e3f1ff,#d8ecff);background:linear-gradient(180deg,#eef6ff 0,#f6fbff 100%);color:var(--text)}
body.theme-azure .studio-hero{min-height:190px}
body.theme-azure .studio-hero h1{font-size:32px}
/* 三个卖点做成横幅右上角的浮标 */
body.theme-azure .studio-hero-feats{position:absolute;right:26px;top:26px;z-index:2;flex-direction:column;align-items:flex-end;gap:10px;margin:0}
body.theme-azure .studio-feat{padding:8px 14px 8px 9px;border-color:rgba(255,255,255,.7);background:rgba(255,255,255,.86);box-shadow:0 8px 20px rgba(28,80,140,.1)}
body.theme-azure .studio-feat i{width:26px;height:26px;font-size:12px}
body.theme-azure .studio-hero-art{width:230px}
@media (max-width:1199px){body.theme-azure .studio-hero-feats{position:static;flex-direction:row;align-items:center;margin-top:16px}}
body.theme-azure .layout-stat{background:linear-gradient(160deg,#f6faff,#ffffff)}
body.theme-azure .studio-upsell{background:var(--upsell-bg)}
body.theme-azure .studio-promo{border-color:rgba(255,255,255,.8)}

/* ===== 修：深空科技风的列表在深色底上文字太暗 =====
   上游的 bootstrap-material-design 会给表格单元格上一层浅色底的深色文字，
   现有的黑夜风格、暗黑科技后台风都是靠 .table>tbody>tr>td 这条显式规则压住的，
   这里照同一套写法补齐，顺便把链接、格式徽章、搜索框占位符一起调亮 */
body.theme-nebula .table>tbody>tr>td{border-top:1px solid rgba(90,150,255,.14)!important;color:#dbe7ff}
body.theme-nebula .table.filelist>tbody>tr>td{color:#dbe7ff}
body.theme-nebula .table.filelist>tbody>tr>td:nth-child(2){color:#eef4ff}
body.theme-nebula .table.filelist>thead>tr>th{background:rgba(15,30,61,.9);color:#9fb3d8}
body.theme-nebula .table-striped>tbody>tr:nth-of-type(odd)>td,
body.theme-nebula .table-striped>tbody>tr:nth-of-type(even)>td{background-color:transparent}
body.theme-nebula .table-hover>tbody>tr:hover>td{background-color:rgba(47,123,255,.12)}
body.theme-nebula .filelist td a{color:#7fb0ff}
body.theme-nebula .filelist .fa-fw{color:#9fb3d8}
body.theme-nebula .file-type-badge{background:rgba(47,123,255,.2);color:#8cbcff}
body.theme-nebula .filelist-summary{color:#8ba0c8}
body.theme-nebula .filelist-lock{color:#fbbf24}
body.theme-nebula .file-action{border-color:rgba(90,150,255,.24);color:#9fb3d8!important}
body.theme-nebula .file-action:hover{background:var(--primary);color:#fff!important}
body.theme-nebula .pagination>li>a{background:var(--surface-soft);border-color:rgba(90,150,255,.24);color:#b7c8e6}
body.theme-nebula .pagination>.disabled>a{background:rgba(15,30,61,.6);color:#54688f}
body.theme-nebula .searchbox .form-control::placeholder,body.theme-nebula .studio-search input::placeholder{color:#7288b0}
body.theme-nebula .searchbox .form-control,body.theme-nebula .studio-search input{color:#dbe7ff}
body.theme-nebula .perm-bar{background:rgba(15,30,61,.7);border-color:rgba(90,150,255,.2)}
body.theme-nebula .perm-item em{color:#8ba0c8}
body.theme-nebula .perm-item b{color:#dbe7ff}

/* ===== 修：蓝天白云风的三枚浮标压在标题上 =====
   .studio-hero-main 自己是 position:relative，浮标的绝对定位挂到了它身上，
   于是落在文案块的右上角、正好盖住标题。让它退回 static，浮标就以整块横幅为基准 */
body.theme-azure .studio-hero-main{position:static}
body.theme-azure .studio-hero-feats{right:22px;top:22px;z-index:3;max-width:200px}
@media (max-width:1399px){body.theme-azure .studio-hero-feats{position:static;flex-direction:row;align-items:center;max-width:none;margin-top:16px}}

/* ===== 修：列表行透出 Bootstrap 的斑马纹底色 =====
   Bootstrap 的 .table-striped 是给 <tr> 上背景的，前面只把 <td> 设成了透明，
   tr 那层浅色底照样透出来——浅色外观看不出来（白底盖白底），
   深空科技风就变成深色面板上两条白带，浅色文字落上去等于看不见。
   底色统一压在 tr 上，行本身跟着面板色走 */
body.studio-layout .table>tbody>tr,
body.studio-layout .table-striped>tbody>tr:nth-of-type(odd),
body.studio-layout .table-striped>tbody>tr:nth-of-type(even){background-color:transparent}
body.studio-layout .table-hover>tbody>tr:hover{background-color:var(--surface-soft)}
body.theme-nebula .table-hover>tbody>tr:hover{background-color:rgba(47,123,255,.12)}
body.theme-nebula .table-hover>tbody>tr:hover>td{background-color:transparent}

/* ===== 修：蓝天白云风的浮标被插画盖住 =====
   .studio-hero-art 和 .studio-hero-main 是同级 flex 项、z-index 都是 1，
   插画在 DOM 里靠后所以压在上面；浮标虽然写了 z-index:3，但被关在
   .studio-hero-main 这个层叠上下文里，翻不过插画去。把插画压到底层即可 */
body.theme-azure .studio-hero-art{z-index:0}
body.theme-azure .studio-hero-main{z-index:2}
body.theme-azure .studio-hero-feats{max-width:none}
body.theme-azure .studio-feat{white-space:nowrap}

/* ===== 深空科技风：补齐克隆没覆盖到的通用组件 =====
   文件查看页那几块（提示卡正文、外链输入框、预览区、标签页底线）、
   以及各页面共用的提示框、弹窗、layer 弹层 */
body.theme-nebula .panel-body,body.theme-nebula .panel-body p,body.theme-nebula .panel-body li{color:var(--text)}
body.theme-nebula .panel-body .text-muted,body.theme-nebula .text-muted{color:var(--muted)!important}
body.theme-nebula .panel-info,body.theme-nebula .panel-default{background:var(--surface);border-color:var(--line)}
body.theme-nebula .panel-info>.panel-heading,body.theme-nebula .panel-default>.panel-heading{background:var(--surface-soft)!important;border-color:var(--line)!important;color:var(--text)!important}
body.theme-nebula .panel-title,body.theme-nebula .panel-title i{color:var(--text)!important}
/* 文件预览区（图片 / 文本 / 其它类型的大图标那块） */
body.theme-nebula .elseview,body.theme-nebula .image_view,body.theme-nebula .view{background:var(--surface-soft)!important;border:1px solid var(--line)!important;color:var(--text)}
body.theme-nebula .elsetext p,body.theme-nebula .elseview p{color:var(--text)}
body.theme-nebula .tubiao i{color:var(--primary)}
/* 标签页：底线和未选中项 */
body.theme-nebula .nav-tabs{border-bottom-color:var(--line)}
body.theme-nebula .nav-tabs>li>a{color:var(--muted);background:transparent;border-color:transparent}
body.theme-nebula .nav-tabs>li>a:hover{background:var(--surface-soft);border-color:transparent;color:var(--text)}
body.theme-nebula .nav-tabs>li.active>a,body.theme-nebula .nav-tabs>li.active>a:hover,body.theme-nebula .nav-tabs>li.active>a:focus{background:var(--surface-soft)!important;border-color:var(--line) var(--line) transparent!important;color:var(--primary)!important}
body.theme-nebula .tab-content{color:var(--text)}
body.theme-nebula .control-label,body.theme-nebula label{color:var(--muted)}
/* 外链输入框 */
body.theme-nebula .form-control{background:var(--surface-soft)!important;border:1px solid var(--line)!important;color:var(--text)!important;box-shadow:none!important}
body.theme-nebula .form-control::placeholder{color:#7288b0}
body.theme-nebula .form-control:focus{border-color:var(--primary)!important}
body.theme-nebula .input-group-btn .btn,body.theme-nebula .btn-default{background:var(--tint)!important;border:1px solid var(--line)!important;color:#b7c8e6!important}
body.theme-nebula .input-group-btn .btn:hover,body.theme-nebula .btn-default:hover{background:var(--primary)!important;color:#fff!important;border-color:transparent!important}
/* 提示框 / 弹窗 / layer 弹层 */
body.theme-nebula .alert{background:var(--surface-soft);border-color:var(--line);color:var(--text)}
body.theme-nebula .alert-info{background:rgba(47,123,255,.14);border-color:rgba(47,123,255,.3)}
body.theme-nebula .alert-warning{background:rgba(245,158,11,.14);border-color:rgba(245,158,11,.3);color:#fcd77a}
body.theme-nebula .alert-danger{background:rgba(255,93,115,.14);border-color:rgba(255,93,115,.3);color:#ff9aa8}
body.theme-nebula .modal-content{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}
body.theme-nebula .modal-header,body.theme-nebula .modal-footer{border-color:var(--line)}
body.theme-nebula .modal-title,body.theme-nebula .modal-body{color:var(--text)}
body.theme-nebula .close{color:var(--muted);opacity:.8;text-shadow:none}
body.theme-nebula .close:hover{color:var(--text);opacity:1}
body.theme-nebula .layui-layer{background:var(--surface)!important;border:1px solid var(--line)!important;box-shadow:var(--shadow)!important}
body.theme-nebula .layui-layer-title{background:var(--surface-soft)!important;border-bottom-color:var(--line)!important;color:var(--text)!important}
body.theme-nebula .layui-layer-content,body.theme-nebula .layui-layer-dialog .layui-layer-content{color:var(--text)!important}
body.theme-nebula .layui-layer-btn a{background:var(--tint)!important;border-color:var(--line)!important;color:#b7c8e6!important}
body.theme-nebula .layui-layer-btn .layui-layer-btn0{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}

/* ===== 公告条 / 广告位：工作台家族的配色 =====
   这两块的样式是 includes/ads.php 那段脚本运行时注入到 <head> 的，
   里面按外观列了一批 --announce-* / --gg-ad-* 变量，新外观不在它的名单里就回落成白底。
   注入的规则是 .theme-announcement-bar（一个类），这里用 body.theme-x 前缀盖过去，
   跟先后顺序无关，不用去改那段脚本里的名单 */
body.theme-studio .theme-announcement-bar{--announce-bg:rgba(255,255,255,.96);--announce-border:#e8edf7;--announce-shadow:0 10px 30px rgba(38,60,105,.07);--announce-text:#1f2a44;--announce-link:#3b7dfb;--announce-c1:#3b7dfb;--announce-c2:#6f8dfd;--announce-c3:#7c89a3}
body.theme-nebula .theme-announcement-bar{--announce-bg:rgba(11,23,48,.94);--announce-border:#1b2c50;--announce-shadow:0 14px 40px rgba(0,0,0,.45);--announce-text:#dce8ff;--announce-link:#7fb0ff;--announce-c1:#7fb0ff;--announce-c2:#22d3ee;--announce-c3:#8ba0c8}
body.theme-royal .theme-announcement-bar{--announce-bg:rgba(255,255,255,.96);--announce-border:#e6e6fa;--announce-shadow:0 12px 32px rgba(70,60,140,.09);--announce-text:#231d48;--announce-link:#6366f1;--announce-c1:#6366f1;--announce-c2:#a78bfa;--announce-c3:#7c78a3}
body.theme-crisp .theme-announcement-bar{--announce-bg:rgba(255,255,255,.97);--announce-border:#e9eef6;--announce-shadow:0 8px 24px rgba(15,23,42,.06);--announce-text:#0f172a;--announce-link:#2563eb;--announce-c1:#2563eb;--announce-c2:#60a5fa;--announce-c3:#64748b}
body.theme-azure .theme-announcement-bar{--announce-bg:rgba(255,255,255,.96);--announce-border:#dfeafc;--announce-shadow:0 12px 30px rgba(28,80,140,.08);--announce-text:#14314f;--announce-link:#3b82f6;--announce-c1:#3b82f6;--announce-c2:#7dd3fc;--announce-c3:#6b88a8}
body.theme-nebula .mpimg-link-band{--gg-ad-bg:rgba(11,23,48,.94);--gg-ad-border:#1b2c50;--gg-ad-shadow:0 14px 40px rgba(0,0,0,.45)}
body.theme-studio .mpimg-link-band,body.theme-crisp .mpimg-link-band{--gg-ad-bg:rgba(255,255,255,.98);--gg-ad-border:#e8edf7;--gg-ad-shadow:0 10px 30px rgba(38,60,105,.07)}
body.theme-royal .mpimg-link-band{--gg-ad-bg:rgba(255,255,255,.98);--gg-ad-border:#e6e6fa;--gg-ad-shadow:0 12px 32px rgba(70,60,140,.09)}
body.theme-azure .mpimg-link-band{--gg-ad-bg:rgba(255,255,255,.98);--gg-ad-border:#dfeafc;--gg-ad-shadow:0 12px 30px rgba(28,80,140,.08)}

/* ===== 潮酷涂鸦风（neo-brutalism）=====
   特征就三条：2px 纯黑描边、不带模糊的硬投影、高饱和撞色。
   结构还是工作台家族那一套，这里只改观感 */
body.theme-neo{--page-bg:#f7f2e8;--surface:#fffdf8;--surface-soft:#f3ede1;--text:#141414;--muted:#6b6255;--line:#111111;--primary:#ff6b2c;--primary-dark:#e5551a;--accent:#2f6bff;--danger:#ff5c6e;--tint:#ffe8d9;--drop-line:#111111;--drop-tint:#fff3e9;--shadow:4px 4px 0 #111111;--rail-w:250px;--topbar-h:76px;--hero-bg:#f3ede1;--upsell-bg:#2f6bff;--neo-edge:2px solid #111111;background:var(--page-bg);color:var(--text)}
body.theme-neo a{color:var(--primary)}
body.theme-neo a:hover,body.theme-neo a:focus{color:var(--primary-dark)}

/* ---- 侧栏：整块纯黑，选中项是整条橙色 ---- */
body.theme-neo .navbar.navbar-default{background:#141414!important;border-right:var(--neo-edge)!important}
body.theme-neo .navbar-header{border-bottom:var(--neo-edge)!important;background:var(--primary);padding-bottom:26px!important}
body.theme-neo .navbar-brand{color:#fff!important;font-weight:900}
body.theme-neo .navbar-brand:before{border:var(--neo-edge);border-radius:10px;background:#fff;color:var(--primary);box-shadow:none}
body.theme-neo .navbar-brand:after{content:"链接世界 · 分享美好";color:rgba(255,255,255,.9)}
body.theme-neo .navbar-nav:before,body.theme-neo .navbar-nav.navbar-right:before{color:#8b8071;border-top-color:#2b2b2b}
body.theme-neo .navbar-default .navbar-nav>li>a{border-radius:0;color:#d8d2c6!important;font-weight:800}
body.theme-neo .navbar-default .navbar-nav>li>a i{color:#8b8071}
body.theme-neo .navbar-default .navbar-nav>li>a:hover,body.theme-neo .navbar-default .navbar-nav>li>a:focus{background:#232323!important;color:#fff!important}
body.theme-neo .navbar-default .navbar-nav>li.active>a,body.theme-neo .navbar-default .navbar-nav>li.active>a:hover,body.theme-neo .navbar-default .navbar-nav>li.active>a:focus{background:var(--primary)!important;color:#fff!important;font-weight:900}
body.theme-neo .navbar-default .navbar-nav>li.active>a i{color:#fff}
body.theme-neo .navbar-default .navbar-nav>li.active>a:before{display:none}
body.theme-neo .navbar-collapse{padding-left:0;padding-right:0}
body.theme-neo .navbar-default .navbar-nav>li>a{padding-left:20px;padding-right:20px}
body.theme-neo .navbar-nav .open>.dropdown-menu{background:#1d1d1d;border-color:#2b2b2b}
body.theme-neo .navbar-nav .open>.dropdown-menu>li>a{color:#d8d2c6}
body.theme-neo .navbar-nav .open>.dropdown-menu>li>a:hover{background:var(--primary);color:#fff}
/* 侧栏底部：蓝色升级卡 + 左下角那句标语 */
body.theme-neo .studio-upsell{margin:16px;padding:18px 16px;border:var(--neo-edge);border-radius:12px;background:var(--accent);box-shadow:var(--shadow)}
body.theme-neo .studio-upsell-icon{border:var(--neo-edge);border-radius:9px;background:#ffc93c;color:#141414;box-shadow:none}
body.theme-neo .studio-upsell strong{color:#fff;font-size:15px;font-weight:900;line-height:1.4}
body.theme-neo .studio-upsell p{color:rgba(255,255,255,.86)}
body.theme-neo .studio-upsell-btn{border:var(--neo-edge);border-radius:10px;background:#fff;color:#141414!important;font-weight:900;box-shadow:none}
body.theme-neo .studio-upsell-btn:hover{background:#ffc93c;color:#141414!important;filter:none}
body.theme-neo .navbar-collapse:after{content:"GOOD FILES BETTER SHARING.";display:block;margin:6px 16px 18px;color:#3a3a3a;font-size:13px;font-weight:900;line-height:1.25;letter-spacing:.02em}

/* ---- 顶栏 ---- */
body.theme-neo .studio-topbar{background:var(--surface);border-bottom:var(--neo-edge)}
body.theme-neo .studio-search{height:46px;border:var(--neo-edge);border-radius:10px;background:#fff}
body.theme-neo .studio-search:focus-within{background:#fff;box-shadow:var(--shadow)}
body.theme-neo .studio-search>i{color:#141414}
body.theme-neo .studio-search input{font-weight:700}
body.theme-neo .studio-kbd{border:var(--neo-edge);border-radius:6px;background:var(--surface-soft);color:#141414;font-weight:900}
body.theme-neo .studio-upload{height:46px;border:var(--neo-edge);border-radius:10px;background:var(--accent);color:#fff!important;font-weight:900;box-shadow:var(--shadow)}
body.theme-neo .studio-upload:hover,body.theme-neo .studio-upload:focus{background:#1f57e0;box-shadow:2px 2px 0 #111111;transform:translate(2px,2px)}
body.theme-neo .studio-avatar{width:44px;height:44px;border:var(--neo-edge);border-radius:50%;background:#c9b6ff;color:#141414!important;font-weight:900}
body.theme-neo .studio-avatar:hover{background:var(--primary);color:#fff!important}

/* ---- 横幅 ---- */
body.theme-neo .studio-hero{border:var(--neo-edge);border-radius:14px;background:var(--hero-bg);box-shadow:var(--shadow)}
body.theme-neo .studio-hero h1{position:relative;display:inline-block;font-size:42px;font-weight:900;letter-spacing:-.02em;line-height:1.15}
body.theme-neo .studio-hero h1:after{content:"";position:absolute;left:0;right:18%;bottom:-6px;height:7px;border-radius:4px;background:var(--primary)}
body.theme-neo .studio-hero p{margin-top:16px!important;color:#3a3a3a;font-size:15px;font-weight:700}
body.theme-neo .studio-hero-cta{margin-top:22px}
body.theme-neo .studio-hero-btn{height:50px;border:var(--neo-edge);border-radius:10px;background:#fff;color:#141414!important;font-weight:900;box-shadow:var(--shadow)}
body.theme-neo .studio-hero-btn:hover{box-shadow:2px 2px 0 #111111;transform:translate(2px,2px);color:#141414!important}
body.theme-neo .studio-hero-btn.primary{background:var(--primary);color:#fff!important}
body.theme-neo .studio-hero-btn.primary:hover{background:var(--primary-dark);color:#fff!important}
body.theme-neo .studio-hero-slogan{color:#141414;font-weight:800;transform:rotate(-5deg)}
/* 插画右上角那枚黑色斜标签 */
body.theme-neo .studio-hero-art{position:relative}
body.theme-neo .studio-hero-art:after{content:"简单 安全 高效";position:absolute;right:-6px;top:6px;padding:8px 12px;border:var(--neo-edge);border-radius:8px;background:#141414;color:#fff;font-size:13px;font-weight:900;line-height:1.35;writing-mode:vertical-rl;transform:rotate(8deg);box-shadow:3px 3px 0 var(--primary)}

/* ---- 统计卡：一张一个颜色 ---- */
body.theme-neo .layout-stat{border:var(--neo-edge);border-radius:12px;box-shadow:var(--shadow);background:#4a90ff}
body.theme-neo .layout-stat:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 #111111}
body.theme-neo .layout-stat:after{color:#141414}
body.theme-neo .layout-stat strong,body.theme-neo .layout-stat span{color:#141414;font-weight:900}
body.theme-neo .layout-stat-icon{border:var(--neo-edge);border-radius:10px;background:#fff!important;color:#141414!important}
body.theme-neo .layout-stat-image{background:#ff8a9b}
body.theme-neo .layout-stat-video{background:#ffc93c}
body.theme-neo .layout-stat-today{background:#7be495}
body.theme-neo .layout-stat-doc,body.theme-neo .layout-stat-audio{background:#c9b6ff}

/* ---- 文件面板 ---- */
body.theme-neo .well.bs-component{border:var(--neo-edge);border-radius:14px;box-shadow:var(--shadow)}
body.theme-neo .well.bs-component h2{position:relative;font-size:22px;font-weight:900}
body.theme-neo .well.bs-component h2:after{content:"";position:absolute;left:0;bottom:-6px;width:78px;height:5px;border-radius:3px;background:var(--primary)}
body.theme-neo .searchbox .form-control{height:44px;border:var(--neo-edge)!important;border-radius:10px;background:#fff!important;font-weight:700}
body.theme-neo .searchbox .btn{height:44px;border:var(--neo-edge)!important;border-radius:10px;background:#141414!important;color:#fff!important;font-weight:900}
body.theme-neo .searchbox .btn:hover,body.theme-neo .searchbox .btn:focus{background:var(--primary)!important;color:#fff!important}
body.theme-neo .layout-filter{border:var(--neo-edge);border-radius:10px;background:#fff;color:#141414;font-weight:800}
body.theme-neo .layout-filter em{border:1px solid #141414;background:var(--surface-soft);color:#141414;font-weight:900}
body.theme-neo .layout-filter:hover{background:var(--tint);color:#141414}
body.theme-neo .layout-filter.active{background:#141414;color:#fff}
body.theme-neo .layout-filter.active em{background:var(--primary);border-color:#fff;color:#fff}
body.theme-neo .studio-sort-sel,body.theme-neo .studio-viewtoggle{border:var(--neo-edge);border-radius:10px;background:#fff;color:#141414;font-weight:800}
body.theme-neo .studio-viewtoggle button.active{background:#141414;color:#fff}
body.theme-neo .table.filelist>thead>tr>th{background:var(--surface-soft);border-bottom:var(--neo-edge);color:#141414;font-weight:900}
body.theme-neo .table.filelist>tbody>tr>td{border-bottom:1px solid #ded5c4}
body.theme-neo .table-hover>tbody>tr:hover{background-color:var(--tint)}
body.theme-neo .table.filelist>tbody>tr>td .fa-fw{border:var(--neo-edge);border-radius:9px;background:#fff;color:#141414}
body.theme-neo .file-type-badge{border:1px solid #141414;border-radius:7px;background:var(--tint);color:#141414;font-weight:900}
body.theme-neo .file-action{border:var(--neo-edge);border-radius:9px;background:#fff;color:#141414!important}
body.theme-neo .file-action:hover{background:var(--primary);color:#fff!important}
body.theme-neo .filelist-footer{border-top:var(--neo-edge)}
body.theme-neo .filelist-summary{color:#3a3a3a;font-weight:700}
body.theme-neo .pagination>li>a{border:var(--neo-edge);border-radius:9px!important;background:#fff;color:#141414;font-weight:800}
body.theme-neo .pagination>.active>a,body.theme-neo .pagination>.active>a:hover,body.theme-neo .pagination>.active>a:focus{background:var(--accent);border-color:#141414;color:#fff}
body.theme-neo .pagination>.disabled>a{background:var(--surface-soft);color:#9b9284}

/* ---- 右侧数据列 ---- */
body.theme-neo .studio-panel{border:var(--neo-edge);border-radius:12px;box-shadow:var(--shadow)}
body.theme-neo .studio-panel-head strong{position:relative;font-size:16px;font-weight:900;padding-bottom:5px}
body.theme-neo .studio-panel-head strong:after{content:"";position:absolute;left:0;bottom:0;width:38px;height:4px;border-radius:2px;background:var(--primary)}
body.theme-neo .studio-panel-num{font-weight:900}
body.theme-neo .studio-badge{border:1px solid #141414;background:#7be495;color:#141414;font-weight:900}
body.theme-neo .studio-badge.ok{background:#7be495;color:#141414}
body.theme-neo .studio-ring-bg{stroke:#e2d9c8}
body.theme-neo .studio-ring b{font-weight:900}
body.theme-neo .studio-quota-bar{border:1px solid #141414;background:#e2d9c8}
body.theme-neo .studio-quota-bar i{background:var(--primary)}
body.theme-neo .studio-right-icon{border:1px solid #141414;border-radius:8px}
body.theme-neo .studio-ico-blue{background:#cfe0ff;color:#1c4fd8}
body.theme-neo .studio-ico-indigo{background:#e2d7ff;color:#5b3fd6}
body.theme-neo .studio-ico-amber{background:#ffe6a8;color:#a06a00}
body.theme-neo .studio-right-row em,body.theme-neo .studio-right-row b{font-weight:800}
body.theme-neo .studio-act{border:var(--neo-edge);border-radius:10px;background:#fff;color:#141414!important;font-weight:800;box-shadow:2px 2px 0 #111111}
body.theme-neo .studio-act i{color:#141414}
body.theme-neo .studio-act:hover{transform:translate(2px,2px);box-shadow:none}
body.theme-neo .studio-act.primary{background:var(--primary);color:#fff!important}
body.theme-neo .studio-act.primary i{color:#fff}
body.theme-neo .studio-act:nth-child(2){background:var(--accent);color:#fff!important}
body.theme-neo .studio-act:nth-child(2) i{color:#fff}
body.theme-neo .studio-act:nth-child(3){background:#7be495}
body.theme-neo .studio-feed-icon{border:1px solid #141414;border-radius:8px}
body.theme-neo .studio-feed-body b{font-weight:800}
body.theme-neo .studio-panel-more{color:#141414;font-weight:800}

/* ---- 页脚 ---- */
body.theme-neo .footer{border-top:var(--neo-edge);background:var(--surface)}
body.theme-neo .footer .text-muted{color:#3a3a3a;font-weight:700}
body.theme-neo>footer.footer:before{content:"LINK MORE POSSIBILITIES.";display:block;margin:0 0 6px;color:#141414;font-size:14px;font-weight:900;letter-spacing:.04em}

/* ---- 公告条 / 广告位 ---- */
body.theme-neo .theme-announcement-bar{--announce-bg:#fffdf8;--announce-border:#111111;--announce-shadow:0 4px 0 #111111;--announce-text:#141414;--announce-link:#ff6b2c;--announce-c1:#ff6b2c;--announce-c2:#2f6bff;--announce-c3:#141414}
body.theme-neo .mpimg-link-band{--gg-ad-bg:#fffdf8;--gg-ad-border:#111111;--gg-ad-shadow:0 4px 0 #111111}

/* ---- 其它页面共用的组件 ---- */
body.theme-neo .panel,body.theme-neo .well,body.theme-neo .modal-content{border:var(--neo-edge);border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}
body.theme-neo .panel-heading{border-bottom:var(--neo-edge)!important;background:var(--surface-soft)!important;color:#141414!important}
body.theme-neo .panel-title{font-weight:900}
body.theme-neo .form-control{border:var(--neo-edge)!important;border-radius:9px;background:#fff!important;color:#141414!important;box-shadow:none!important;font-weight:600}
body.theme-neo .btn-primary,body.theme-neo .btn-raised.btn-primary{border:var(--neo-edge)!important;border-radius:10px;background:var(--primary)!important;color:#fff!important;font-weight:900;box-shadow:var(--shadow)!important}
body.theme-neo .btn-primary:hover,body.theme-neo .btn-raised.btn-primary:hover{background:var(--primary-dark)!important;box-shadow:2px 2px 0 #111111!important}
body.theme-neo .btn-default{border:var(--neo-edge)!important;border-radius:10px;background:#fff!important;color:#141414!important;font-weight:800}
body.theme-neo .nav-tabs{border-bottom:var(--neo-edge)}
body.theme-neo .nav-tabs>li>a{border-radius:9px 9px 0 0;color:#3a3a3a;font-weight:800}
body.theme-neo .nav-tabs>li.active>a,body.theme-neo .nav-tabs>li.active>a:hover,body.theme-neo .nav-tabs>li.active>a:focus{border:var(--neo-edge)!important;border-bottom-color:var(--surface)!important;background:var(--surface)!important;color:var(--primary)!important}
body.theme-neo .alert{border:var(--neo-edge);border-radius:10px}
body.theme-neo .label{border:1px solid #141414;border-radius:6px;font-weight:800}
body.theme-neo .progress{border:1px solid #141414;background:#e2d9c8}
body.theme-neo .progress-bar{background:var(--primary)!important}
@media (max-width:767px){body.theme-neo .studio-hero h1{font-size:28px}body.theme-neo .navbar-collapse:after{display:none}}

/* ===== 云端门户风（skyline）=====
   家族里唯一一套顶部横向导航的：把侧栏那套规则整体退回顶栏，
   搜索框搬进横幅，右侧一列是上传卡 / 存储空间 / 最近上传 / 快捷操作 / 我的权限。
   --rail-w 归零，家族里所有按侧栏宽度让位的地方就自动失效了 */
body.theme-skyline{--page-bg:#f4f7fc;--surface:#ffffff;--surface-soft:#f5f8fd;--text:#1a2540;--muted:#6f7f9b;--line:#e6ecf6;--primary:#2563eb;--primary-dark:#1d4ed8;--accent:#38bdf8;--danger:#ef4444;--tint:#e8f0fe;--drop-line:#cddcfb;--drop-tint:#f2f7ff;--shadow:0 10px 30px rgba(26,37,64,.06);--rail-w:0px;--topbar-h:0px;--hero-bg:linear-gradient(180deg,#bfe0f7 0,#dceefb 42%,#eef6fd 100%);--upsell-bg:linear-gradient(160deg,#e8f0fe,#dbe9fd);background:var(--page-bg);color:var(--text)}
body.theme-skyline a{color:var(--primary)}
body.theme-skyline a:hover,body.theme-skyline a:focus{color:var(--primary-dark)}

/* ---- 顶部横向导航：把家族的固定侧栏改回一条顶栏 ---- */
@media (min-width:768px){
body.theme-skyline .navbar.navbar-default{position:sticky;top:0;left:auto;bottom:auto;width:auto;flex-direction:row;align-items:center;border-right:0;border-bottom:1px solid var(--line);background:var(--surface);box-shadow:0 2px 14px rgba(26,37,64,.05);overflow:visible}
body.theme-skyline .navbar .container{flex-direction:row;align-items:center;width:100%;max-width:1560px;height:auto;min-height:0;padding:0 26px;margin:0 auto}
body.theme-skyline .navbar-header{width:auto;padding:14px 0;border-bottom:0}
body.theme-skyline .navbar-brand:after{position:static;display:block;margin-top:2px}
body.theme-skyline .navbar-collapse{flex:1;flex-direction:row;align-items:center;padding:0 0 0 34px;overflow:visible}
body.theme-skyline .navbar-nav{flex-direction:row;width:auto;gap:6px}
body.theme-skyline .navbar-nav:before,body.theme-skyline .navbar-nav.navbar-right:before{display:none}
body.theme-skyline .navbar-nav.navbar-right{width:auto;margin-left:auto!important}
body.theme-skyline .navbar-nav>li{width:auto}
body.theme-skyline .navbar-default .navbar-nav>li>a{padding:22px 14px;border-radius:0;color:var(--muted)!important;font-weight:650}
body.theme-skyline .navbar-default .navbar-nav>li>a:hover,body.theme-skyline .navbar-default .navbar-nav>li>a:focus{background:transparent!important;color:var(--text)!important}
body.theme-skyline .navbar-default .navbar-nav>li.active>a,body.theme-skyline .navbar-default .navbar-nav>li.active>a:hover,body.theme-skyline .navbar-default .navbar-nav>li.active>a:focus{background:transparent!important;color:var(--primary)!important;font-weight:800}
/* 选中项底部一条短横线，替掉侧栏那根左侧竖条 */
body.theme-skyline .navbar-default .navbar-nav>li.active>a:before{content:"";position:absolute;left:14px;right:14px;top:auto;bottom:0;width:auto;height:3px;border-radius:3px 3px 0 0;background:var(--primary)}
body.theme-skyline .navbar-nav .open>.dropdown-menu{position:absolute;width:auto;min-width:170px;margin-top:0;background:var(--surface);box-shadow:var(--shadow)}
/* 顶栏是横的，页面就不用再为侧栏和吸顶搜索条让位 */
body.theme-skyline>.container,body.theme-skyline>.container-fluid{max-width:1560px!important;margin:0 auto!important;padding:22px 26px 8px!important}
body.theme-skyline>footer.footer{padding-left:0}
body.theme-skyline .theme-announcement-bar,body.theme-skyline .mpimg-link-band{margin-left:0!important;width:100%!important}
}
/* 顶栏已经带了搜索和上传，家族那条吸顶条不再需要 */
body.theme-skyline .studio-topbar{display:none}
body.theme-skyline .studio-upsell{display:none}

/* ---- 横幅：天空渐变 + 远山 + 大搜索框 ---- */
body.theme-skyline .studio-hero{position:relative;align-items:flex-start;min-height:250px;padding:44px 40px 40px;border-radius:18px;background:var(--hero-bg);overflow:hidden}
/* 远山用两层圆角色块堆出来，不引外部图片 */
body.theme-skyline .studio-hero:before{content:"";position:absolute;left:-6%;right:-6%;bottom:-42px;height:190px;border-radius:46% 54% 0 0/100% 100% 0 0;background:linear-gradient(180deg,#9fc6e8,#c8e0f2);opacity:.55}
body.theme-skyline .studio-hero:after{content:"";position:absolute;left:22%;right:-14%;bottom:-58px;height:210px;border-radius:52% 48% 0 0/100% 100% 0 0;background:linear-gradient(180deg,#7fb3dd,#a9cfea);opacity:.5}
body.theme-skyline .studio-hero-main{align-items:flex-start;flex:1 1 auto;min-width:0}
body.theme-skyline .studio-hero-copy{width:100%;max-width:760px}
body.theme-skyline .studio-hero h1{font-size:38px;font-weight:800;letter-spacing:-.02em;color:#123059}
body.theme-skyline .studio-hero p{margin-top:10px!important;color:#3d5a80;font-size:14.5px;font-weight:600}
body.theme-skyline .studio-hero-search{display:flex;align-items:center;gap:0;width:100%;max-width:730px;height:56px;margin-top:26px;padding:0 6px 0 18px;border:1px solid rgba(255,255,255,.9);border-radius:14px;background:rgba(255,255,255,.92);box-shadow:0 14px 34px rgba(26,60,110,.14);backdrop-filter:blur(6px)}
body.theme-skyline .studio-hero-search>i{flex:0 0 auto;margin-right:10px;color:#8fa3bf;font-size:15px}
body.theme-skyline .studio-hero-search input{flex:1;min-width:0;height:52px;border:0;background:transparent;box-shadow:none!important;color:var(--text);font-size:14.5px}
body.theme-skyline .studio-hero-search input:focus{outline:0}
body.theme-skyline .studio-hero-search input::placeholder{color:#9aabc4}
body.theme-skyline .studio-hero-search button{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;height:44px;padding:0 24px;border:0;border-radius:11px;background:var(--primary);color:#fff;font-size:14px;font-weight:700}
body.theme-skyline .studio-hero-search button:hover{background:var(--primary-dark)}
body.theme-skyline .studio-hero-slogan{align-self:center;color:#3d6ea8;opacity:.85}
body.theme-skyline .studio-hero-art{align-self:center;width:250px;opacity:.95}
@media (max-width:1199px){body.theme-skyline .studio-hero-slogan{display:none}}

/* ---- 统计卡：浅色底 + 彩色图标块 ---- */
body.theme-skyline .layout-stat{padding:20px 40px 20px 18px;border-radius:16px;background:linear-gradient(160deg,#f2f7ff,#ffffff)}
body.theme-skyline .layout-stat-image{background:linear-gradient(160deg,#f6f0ff,#ffffff)}
body.theme-skyline .layout-stat-video{background:linear-gradient(160deg,#fff3e9,#ffffff)}
body.theme-skyline .layout-stat-doc{background:linear-gradient(160deg,#eafaf1,#ffffff)}
body.theme-skyline .layout-stat-today{background:linear-gradient(160deg,#eafaf1,#ffffff)}
body.theme-skyline .layout-stat-icon{width:50px;height:50px;border-radius:14px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;font-size:20px}
body.theme-skyline .layout-stat-image .layout-stat-icon{background:linear-gradient(135deg,#8b5cf6,#c4b5fd);color:#fff}
body.theme-skyline .layout-stat-video .layout-stat-icon{background:linear-gradient(135deg,#fb7c3d,#fdba74);color:#fff}
body.theme-skyline .layout-stat-doc .layout-stat-icon,body.theme-skyline .layout-stat-today .layout-stat-icon{background:linear-gradient(135deg,#16a34a,#6ee7b7);color:#fff}
body.theme-skyline .layout-stat span{order:-1;display:block;margin-bottom:2px;font-size:13px}
body.theme-skyline .layout-stat>div{display:flex;flex-direction:column}
body.theme-skyline .layout-stat strong{font-size:24px}

/* ---- 右侧：蓝色上传卡 ---- */
body.theme-skyline .studio-drop{display:block;padding:26px 20px 22px;border-radius:18px;background:linear-gradient(160deg,#2f6fe4 0,#1f4fd8 60%,#2a5fe0 100%);color:#fff!important;text-align:center;box-shadow:0 16px 34px rgba(31,79,216,.28)}
body.theme-skyline .studio-drop:hover{text-decoration:none;filter:brightness(1.05)}
body.theme-skyline .studio-drop-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:14px;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;font-size:24px}
body.theme-skyline .studio-drop strong{display:block;color:#fff;font-size:17px;font-weight:800}
body.theme-skyline .studio-drop em{display:block;margin-top:6px;color:rgba(255,255,255,.82);font-size:12.5px;font-style:normal}
body.theme-skyline .studio-drop-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;padding:11px 0;border-radius:11px;background:#fff;color:var(--primary);font-size:14px;font-weight:800}
body.theme-skyline .studio-drop-feats{display:flex;justify-content:space-between;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.22)}
body.theme-skyline .studio-drop-feats i{display:inline-flex;align-items:center;gap:5px;color:rgba(255,255,255,.9);font-size:12px;font-style:normal;font-weight:650}
body.theme-skyline .studio-drop-feats b{font-weight:400}

/* ---- 面板与列表 ---- */
body.theme-skyline .well.bs-component,body.theme-skyline .studio-panel{border-radius:18px}
body.theme-skyline .well.bs-component h2{font-size:20px}
body.theme-skyline .layout-filter{border-radius:10px}
body.theme-skyline .table.filelist>thead>tr>th{background:var(--surface-soft)}
body.theme-skyline .file-action{border-radius:10px}
body.theme-skyline .studio-panel-head strong{font-size:15px}
body.theme-skyline .studio-ring-fg{stroke:var(--primary)}
body.theme-skyline .footer{border-top:1px solid var(--line);background:var(--surface)}
@media (max-width:767px){body.theme-skyline .studio-hero{padding:24px 18px}body.theme-skyline .studio-hero h1{font-size:24px}body.theme-skyline .studio-hero-search{height:auto;flex-wrap:wrap;padding:10px}body.theme-skyline .studio-hero-search input{width:100%;flex:1 1 100%}body.theme-skyline .studio-hero-search button{width:100%;margin-top:8px}}
/* 公告条：覆盖 ads.php 注入的那份变量（新外观不在它的名单里，默认会回落成蓝白配色） */
body.theme-skyline .theme-announcement-bar{--announce-bg:rgba(255,255,255,.97);--announce-border:#e6ecf6;--announce-shadow:0 10px 28px rgba(26,37,64,.07);--announce-text:#1a2540;--announce-link:#2563eb;--announce-c1:#2563eb;--announce-c2:#38bdf8;--announce-c3:#6f7f9b}
body.theme-skyline .mpimg-link-band{--gg-ad-bg:rgba(255,255,255,.98);--gg-ad-border:#e6ecf6;--gg-ad-shadow:0 10px 28px rgba(26,37,64,.07)}

/* 紧凑广告条：各套外观里给广告条写死的白底、边框、毛玻璃和重阴影统一去掉，
   只留居中的一排小按钮；各主题只改变量的那些规则自然就失效了，这里只收写死属性的几套。 */
.mpimg-link-band{background:none!important;border-top:0!important;border-bottom:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body.theme-mac .mpimg-link-band{border-left:0!important;border-right:0!important}
body .mpimg-link-grid .dh{box-shadow:0 2px 6px rgba(24,46,84,.14)!important}
body .mpimg-link-grid .dh:hover,body .mpimg-link-grid .dh:focus{box-shadow:0 4px 12px rgba(24,46,84,.2)!important}
body .mpimg-link-grid .dh.has-image{box-shadow:none!important}
