﻿/* 简约版：案例内容优先，弱化装饰和宣传 */
.case-menu-panel .export-icon{color:#657b98}.case-menu-panel .export-icon:hover{background:#edf3fc;color:#2468eb}


.card-actions .case-menu{margin-right:0;margin-left:auto}.card-actions>.publish-switch:first-child{margin-right:0}.case-menu summary svg{width:24px;height:24px}.case-menu .case-menu-panel{left:auto;right:0;flex-direction:column;gap:6px}.case-menu-panel button svg{width:20px;height:20px}dialog.confirm-dialog{width:min(420px,calc(100vw - 36px));border:1px solid #dce3ee;background:#fff;border-radius:10px;padding:0;box-shadow:0 18px 70px #10264233}dialog.confirm-dialog::backdrop{background:#14243c66;backdrop-filter:blur(3px)}.confirm-content{padding:26px}.confirm-heading{display:flex;align-items:center;gap:12px}.confirm-heading h2{font-size:18px;font-weight:600;color:#20334e;margin:0}.confirm-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff0ed;color:#c15347;font-size:21px;font-weight:600}.confirm-content>p{font-size:13px;line-height:1.9;color:#718097;margin:18px 0 26px;overflow-wrap:anywhere}.confirm-buttons{display:flex;justify-content:flex-end;gap:10px}.button.danger{background:#cf4c4c;color:#fff;border-color:#cf4c4c}.button.danger:hover{background:#b83c3c}
.media-thumb{position:relative;flex-shrink:0;padding-bottom:30px}.media-thumb .remove-media{position:absolute;bottom:0;right:0;display:flex;align-items:center;justify-content:center;width:28px;height:26px;background:#fff;border:1px solid #e0e6ef;border-radius:4px;color:#b34b4b}.media-thumb .remove-media:hover{background:#fff0f0;border-color:#e9baba}.cover-options .media-thumb>label{display:block;margin:0}.mini-media .media-thumb>img,.mini-media .media-thumb>video{display:block}
.card-actions{position:relative}.case-menu{position:relative;margin-right:auto}.case-menu summary{list-style:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:4px;color:#657b98}.case-menu summary::-webkit-details-marker{display:none}.case-menu summary:hover,.case-menu[open] summary{background:#edf3fc;color:#2468eb}.case-menu summary:focus-visible{outline:2px solid #2468eb;outline-offset:2px}.case-menu-panel{position:absolute;bottom:calc(100% + 6px);left:0;display:flex;gap:4px;padding:6px;background:#fff;border:1px solid #dce3ed;border-radius:6px;box-shadow:0 5px 20px #14243c20;z-index:5}.case-menu:not([open]) .case-menu-panel{display:none}.case-menu-panel button{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:4px}.case-menu-panel .edit-icon{color:#657b98}.case-menu-panel .edit-icon:hover{background:#edf3fc;color:#2468eb}.case-menu-panel .delete-icon{color:#c54e4e}.case-menu-panel .delete-icon:hover{background:#fff0f0}.case-card:has(.case-menu[open]){position:relative;z-index:3}
.gif-preview{display:block;position:relative;padding:0;border:1px solid #dce3ed;border-radius:5px;overflow:hidden;background:#e5ebf5;cursor:zoom-in;width:100%}.gif-preview img{display:block;width:100%;height:100%;max-height:600px;object-fit:contain}.gif-expand{position:absolute;right:12px;bottom:12px;background:#14243cbb;color:#fff;padding:7px 11px;font-size:11px;border-radius:4px}.gif-preview:hover .gif-expand{background:#2468eb}dialog.gif-viewer{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:62px 18px 18px;border:0;border-radius:0;background:#0c1018;box-shadow:none;overflow:hidden}dialog.gif-viewer::backdrop{background:#0c1018}dialog.gif-viewer>img{display:block;width:100%;height:100%;object-fit:contain}.gif-viewer-tools{position:absolute;top:12px;right:16px;display:flex;gap:10px}.gif-viewer-tools button{font-size:12px;color:#fff;background:#ffffff20;border:1px solid #ffffff30;padding:9px 15px;border-radius:4px}.gif-viewer-tools button:hover{background:#ffffff35}.gif-viewer-tools button[hidden]{display:none}
#edit-form .form-row{display:flex;flex-direction:column;gap:20px}#edit-form .form-row>label{display:block}#edit-form .form-row>label>input{display:block;width:100%;margin-top:10px}#edit-form .form-row em{display:inline}#edit-form .media-editor{border-top:1px solid #e0e6ef;padding-top:20px}#edit-form .media-section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}#edit-form .media-section-heading h3{font-size:14px}#edit-form .media-empty{font-size:11px;color:#98a3b2;margin:13px 0}#edit-form .upload-line{margin:12px 0 5px;display:flex;flex-wrap:nowrap}#edit-form .upload-line input{width:0;min-width:0;flex:1}#edit-form .upload-line button{flex-shrink:0}#edit-form .cover-options,#edit-form .mini-media{margin:12px 0}
.card-actions>.edit-icon,.card-actions>.publish-switch{min-width:36px;min-height:36px;justify-content:center;border-radius:4px}.card-actions>.edit-icon{color:#657b98}.card-actions>.edit-icon:hover{background:#edf3fc;color:#2468eb}.card-actions>.publish-switch{padding:0 2px}.card-actions .publish-switch .switch{width:32px;height:18px}.card-actions .publish-switch .switch:after{width:14px;height:14px;left:2px;top:2px}.card-actions .publish-switch .switch.on:after{left:16px}.card-actions{padding-top:6px;padding-bottom:6px}
.site-header .brand{flex-shrink:0}.company-logo{display:block;width:205px;height:auto;object-fit:contain}.site-header{min-height:80px}@media(max-width:700px){.company-logo{width:164px}.site-header{min-height:72px}.site-header nav{gap:14px}}@media(max-width:390px){.company-logo{width:145px}.site-header nav{gap:10px}.site-header nav a{font-size:10px}}
body{background:#f7f8fa;color:#202d40}.site-header{height:72px;padding:0 6%;gap:60px}.brand{font-size:18px}.brand-mark{width:29px;height:29px;font-size:19px}.collection,.dashboard{padding:34px 6% 60px;min-height:calc(100vh - 134px)}.section-heading{margin-bottom:14px}.section-heading h1,.admin-heading h1{font-size:24px;font-weight:600;letter-spacing:0;margin:0}.collection-bar{margin-bottom:24px;min-height:52px}.filter-tabs{gap:24px}.filter-tabs button{padding-bottom:12px}.collection-tools{padding-bottom:12px}.cards{gap:24px}.case-card{border:1px solid #e3e7ee;box-shadow:none;border-radius:5px}.case-card:hover{transform:none;box-shadow:0 4px 18px #182e4c0a}.card-meta{padding:16px 18px 19px}.card-meta p{font-size:11px;margin-bottom:7px}.card-meta h3{font-size:15px}.card-art{aspect-ratio:1.7}.art-title{font-size:24px;font-weight:500}.art-orbit{opacity:.6}.card-open,.tiny-arrow{display:none}.empty-state{padding:80px 20px;background:transparent;border:0}.empty-state h3{font-size:15px;color:#8b98aa;font-weight:400;margin:0 0 20px}.empty-state p{display:none}footer{min-height:62px;padding:0;margin:0 6%;font-size:10px;color:#a0aab8;gap:8px}footer>span:last-child{font-size:10px;letter-spacing:0}.admin-heading{margin-bottom:16px}.admin-heading-actions{gap:8px}.button{padding:10px 16px;border-radius:4px}.sort-hint{font-size:11px;color:#8d9bae;margin-bottom:5px}.dashboard .collection-bar{margin-bottom:22px}.login-layout{display:flex;align-items:flex-start;justify-content:center;min-height:calc(100vh - 210px);margin:64px 5%}.login-form{max-width:360px;background:#fff;padding:30px;border:1px solid #e2e7ef;border-radius:6px;gap:23px}.login-form h2{font-size:22px;margin:0 0 2px}.login-form .back-link{font-size:11px}.detail{max-width:1240px;margin:0 auto;padding:24px 6% 50px}.detail-title{margin:22px 0 26px}.detail-title h1{font-size:30px;margin:0;font-weight:600}.detail-intro{padding:30px 0;gap:40px}.detail-intro h2,.media-section h2{font-size:18px}.detail-intro h3{font-size:16px;margin:10px 0 0}.detail-intro .eyebrow{font-size:11px;letter-spacing:0}.description{font-size:13px;line-height:2}.detail-hero{height:auto;min-height:220px;max-height:620px;aspect-ratio:1.9}.media-section{margin-top:30px}.media-section h2{margin-bottom:16px}.modal-heading h2{font-size:22px;margin:0}.modal{gap:20px}.modal-footer>span{font-size:10px}.import-guide{border:1px solid #e0e6ef;border-radius:4px;font-size:12px;color:#617591}.import-guide summary{cursor:pointer;padding:13px 15px}.import-guide .package-guide{border-radius:0;background:#f0f3f8}.import-guide .info-note{margin:0;border-radius:0;padding:14px 18px}.drop-zone{padding:25px 15px}.modal .eyebrow{display:none}@media(min-width:1600px){.collection,.dashboard{max-width:1440px;padding-left:0;padding-right:0}}@media(max-width:1050px){.admin-heading{flex-direction:column;gap:18px}.admin-heading-actions{justify-content:flex-start}.login-layout{margin-top:45px}.art-title{font-size:22px}}@media(max-width:700px){.site-header{height:64px;padding:0 5%;gap:15px}.brand{font-size:15px}.collection,.dashboard{padding:25px 5% 40px;min-height:calc(100vh - 125px)}.section-heading h1,.admin-heading h1{font-size:22px}.collection-bar{gap:0}.collection-tools{padding:10px 0}.cards{gap:15px}.card-meta{padding:13px}.card-meta h3{font-size:13px}.card-meta p{font-size:9px}.art-title{font-size:18px}.admin-heading-actions{gap:7px;width:100%}.admin-heading-actions .text-button{order:0;margin-left:0;padding-left:0}.admin-heading-actions .button{font-size:10px;padding:9px 10px}.sort-hint{font-size:10px}.login-layout{margin:35px 5%;min-height:calc(100vh - 195px)}.login-form{padding:25px;max-width:380px}.detail-title h1{font-size:25px}.detail-intro{gap:22px;padding:25px 0}.detail-hero{aspect-ratio:1.5;min-height:180px}footer{min-height:61px;margin:0 5%;padding:0;flex-wrap:nowrap}footer>span:last-child{width:auto;margin-left:auto}.button{font-size:11px}.empty-state{padding:65px 15px}}@media(prefers-reduced-motion:no-preference){.case-card{animation-duration:.25s}}

html{min-height:100%}body{min-height:100vh;display:flex;flex-direction:column}#app{flex:1;width:100%}footer{flex-shrink:0}.detail{max-width:1120px;padding:28px 40px 64px}.detail>.back-link{font-size:12px;padding:4px 0;color:#8190a5}.detail .detail-title{margin:26px 0 0;padding:0 0 28px;border-bottom:1px solid #e1e6ee;gap:24px}.detail-heading{min-width:0}.detail .detail-title h1{font-size:30px;line-height:1.5;overflow-wrap:anywhere}.detail-client{display:flex;align-items:baseline;gap:12px;margin-top:13px;font-size:13px;color:#475b76;line-height:1.8}.detail-client>span{font-size:11px;color:#8b98aa;flex-shrink:0}.detail #visit-demo{flex-shrink:0;align-self:flex-start;margin-top:5px}.detail-overview{padding:28px 0 4px}.detail-overview h2,.detail .media-section h2{font-size:16px;font-weight:600;margin-bottom:16px;color:#2c405b}.detail-overview .description{font-size:14px;line-height:2;color:#5c6f88;max-width:900px}.detail .media-section{margin-top:30px}.detail .gallery{gap:20px;margin-bottom:0;align-items:start}.detail .gallery.single-media{grid-template-columns:minmax(0,1fr);max-width:880px;margin:0 auto}.detail .gallery img,.detail .gallery video{max-height:660px}.detail .gif-preview img{height:auto;max-height:660px}.detail-pending{padding:54px 24px;text-align:center;background:#f0f3f8;border:1px solid #e4e9f1;border-radius:7px;margin-top:28px}.pending-symbol{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:12px;background:#e5ecf8;color:#7999c7;margin-bottom:15px}.detail-pending h2{font-size:16px;font-weight:500;color:#667c98}.detail-pending p{font-size:12px;color:#97a4b5;margin-top:10px;line-height:1.8}.cards.few-cases:not(.masonry){grid-template-columns:repeat(2,minmax(0,1fr));max-width:1060px}.cards.few-cases .card-art{aspect-ratio:1.75}.masonry.few-cases{columns:2;max-width:1060px}@media(max-width:700px){.detail{padding:22px 5% 42px}.detail .detail-title{margin-top:20px;padding-bottom:22px;gap:16px;flex-direction:row;align-items:flex-start}.detail .detail-title h1{font-size:23px}.detail #visit-demo{font-size:11px;padding:10px 13px;margin-top:2px}.detail-client{font-size:12px;gap:8px;margin-top:10px;flex-wrap:wrap}.detail-overview{padding-top:22px}.detail-overview .description{font-size:13px}.detail .media-section{margin-top:24px}.detail .gallery{grid-template-columns:1fr;gap:16px}.detail-pending{padding:40px 20px}.cards.few-cases:not(.masonry){grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:440px){.cards.few-cases:not(.masonry){grid-template-columns:1fr}.masonry.few-cases{columns:1}.detail .detail-title{flex-direction:column}.detail #visit-demo{margin:0}}
.detail .detail-overview .description{font-family:Microsoft YaHei,PingFang SC,Noto Sans SC,Arial,sans-serif;font-size:16px;font-weight:400;line-height:2;color:#43546b;letter-spacing:.2px;max-width:none}.detail .detail-overview h2,.detail .media-section h2{font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif;font-size:18px;font-weight:600}@media(max-width:700px){.detail .detail-overview .description{font-size:15px;line-height:1.95}.detail .detail-overview h2,.detail .media-section h2{font-size:17px}}

/* 四列案例列表与向下展开菜单 */
.cards:not(.masonry),.cards.few-cases:not(.masonry){grid-template-columns:repeat(4,minmax(0,1fr));max-width:none}
.cards.masonry,.cards.masonry.few-cases{columns:4;max-width:none}
.case-card:has(.case-menu){overflow:visible}
.case-card:has(.case-menu) .card-art{border-radius:4px 4px 0 0}
.case-menu .case-menu-panel{top:50%;bottom:auto;right:calc(100% + 6px);left:auto;transform:translateY(-50%);flex-direction:row;gap:4px;padding:4px}
.cards:has(.case-menu){padding-bottom:0}
@media(max-width:1200px){.cards:not(.masonry),.cards.few-cases:not(.masonry){grid-template-columns:repeat(3,minmax(0,1fr))}.cards.masonry,.cards.masonry.few-cases{columns:3}}
@media(max-width:900px){.cards:not(.masonry),.cards.few-cases:not(.masonry){grid-template-columns:repeat(2,minmax(0,1fr))}.cards.masonry,.cards.masonry.few-cases{columns:2}}
@media(max-width:440px){.cards:not(.masonry),.cards.few-cases:not(.masonry){grid-template-columns:minmax(0,1fr)}.cards.masonry,.cards.masonry.few-cases{columns:1}}
.custom-enable{display:flex;flex-direction:row;align-items:center;gap:9px;margin:15px 0 8px;font-size:13px}.custom-enable input{width:16px;height:16px;padding:0;accent-color:#2468eb}.custom-enable:has(input:disabled){color:#9aa6b6}
.display-options{display:flex;flex-wrap:wrap;gap:18px;margin:16px 0}.display-options label{flex-direction:row;align-items:center;gap:7px;font-size:12px;font-weight:400}.display-options input{width:15px;height:15px;padding:0;accent-color:#2468eb}#zip-settings[hidden],#link-settings[hidden]{display:none}#link-settings{margin:14px 0}

/* 公开案例展示：宽幅封面、清晰层级，后台保持原布局 */
.collection.showcase{max-width:1600px;margin:0 auto;padding:68px 6% 96px;min-height:calc(100vh - 142px)}
.showcase-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:48px}
.showcase-eyebrow{display:block;font-size:12px;font-weight:600;letter-spacing:2px;color:#526b8c;margin-bottom:22px}
.showcase-heading h1{font-size:clamp(34px,3.5vw,58px);font-weight:600;line-height:1.35;letter-spacing:-1.8px;color:#172b46}
.showcase-heading h1 span{color:#2468eb}
.showcase-heading>p{max-width:235px;font-size:14px;line-height:1.9;color:#7a879a;padding-bottom:8px}
.showcase .collection-bar{border-bottom:1px solid #dce3ed;margin-bottom:32px;min-height:48px}
.showcase .filter-tabs button{font-size:14px;padding-bottom:18px}
.showcase .filter-tabs button span{margin-left:8px;background:#e7edf7;color:#47678f;border-radius:20px;padding:3px 8px;font-size:11px}
@media(min-width:1600px){.collection.showcase{padding-left:72px;padding-right:72px}}
@media(max-width:1000px){.collection.showcase{padding-top:48px}.showcase-heading{gap:24px}.showcase-heading>p{max-width:200px;font-size:13px}}
@media(max-width:600px){.collection.showcase{padding:34px 5% 56px}.showcase-heading{display:block;margin-bottom:30px}.showcase-eyebrow{font-size:11px;margin-bottom:16px}.showcase-heading h1{font-size:34px;letter-spacing:-1px}.showcase-heading>p{max-width:none;font-size:12px;margin-top:18px;padding:0}.showcase .collection-bar{margin-bottom:24px}}
/* 前后台共用卡片列数，不按案例数量自动放大 */
#cards.cards{display:grid;grid-template-columns:repeat(var(--case-columns,4),minmax(0,1fr));gap:24px}
#cards.cards.masonry{display:block;columns:var(--case-columns,4);column-gap:24px}
#cards .card-art{aspect-ratio:16/9}
#cards.cards.masonry .card-art{aspect-ratio:auto}
#cards .empty-state{grid-column:1/-1;column-span:all}
.column-setting{display:flex;align-items:center;flex-direction:row;gap:8px;color:#718097;font-size:12px;font-weight:400}
.column-setting select{padding:6px 10px;background:#fff;border:1px solid #e0e6ef;border-radius:4px;font-size:12px}
@media(max-width:900px){#cards.cards{grid-template-columns:repeat(2,minmax(0,1fr))}#cards.cards.masonry{columns:2}}
@media(max-width:560px){#cards.cards{grid-template-columns:minmax(0,1fr)}#cards.cards.masonry{columns:1}.collection-tools{gap:8px}.column-setting{gap:4px}}

/* 页面框架与页脚：避免旧样式 max-width 和百分比外边距造成大屏偏左 */
body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.site-header{flex-shrink:0}
#app{flex:1 0 auto;width:100%;display:flex;flex-direction:column}
.collection,.dashboard,.collection.showcase{min-height:0;flex:1 0 auto;width:100%}
body>footer{box-sizing:border-box;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;width:88%;max-width:1456px;min-height:70px;margin:0 auto;padding:20px 0;gap:20px;border-top:1px solid #dce3ed}
body>footer>span{width:auto;margin:0;font-size:11px;line-height:1.7;color:#8b98aa;letter-spacing:0}
body>footer>span:last-child{width:auto;margin:0 0 0 auto;flex-shrink:0;font-size:11px;letter-spacing:0}
@media(max-width:600px){body>footer{width:90%;min-height:64px;padding:18px 0;gap:12px}body>footer>span,body>footer>span:last-child{font-size:10px}}

/* 卡片封面加载：占位尺寸稳定，完整解码后淡入 */
#cards .card-art{position:relative;background-color:#edf0f4}
#cards img[data-cover]{opacity:0;transition:opacity .25s ease}
#cards img[data-cover].cover-ready{opacity:1}
#cards.cards.masonry .case-card{break-inside:avoid;margin-bottom:24px}
#cards.cards.masonry .card-art:has(img[data-cover]){aspect-ratio:auto;min-height:0;height:auto}
#cards.cards.masonry img[data-cover]{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
#cards.cards.masonry .card-art:has(img[data-cover][hidden]){aspect-ratio:16/9}
#cards .cover-failure{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:13px;color:#8190a5;background:#edf0f4}
#cards img[data-cover][hidden]{display:none}
@media(prefers-reduced-motion:reduce){#cards img[data-cover]{transition:none}}
