.brand-en{display:block}.sidebar{padding-top:31px}.side-tagline{margin-bottom:25px}.nav-item{padding-top:12px;padding-bottom:12px}.project-list{max-height:150px;overflow:auto}.trip-link>span:nth-child(2){max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-heading{margin-top:29px}.local-icon{width:31px;height:31px;background:#e2e9d9;border-radius:50%;display:grid;place-items:center;color:#768a67}.local-icon .icon{margin:0;width:15px}.studio-hero{height:290px}.studio-hero h2{font-size:33px}.studio-hero .hero-content{top:32px}.studio-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;border-bottom:1px solid var(--line);padding:26px 0}.studio-steps>div{display:flex;gap:14px;align-items:center}.step-number{font-family:var(--serif);color:#a6b299;font-size:26px;border-right:1px solid #dce3d5;padding-right:15px}.studio-steps b{display:block;font-weight:500;font-size:12px;margin-bottom:7px}.studio-steps small{color:#939d89;font-size:9px}.studio-artifacts{display:grid;grid-template-columns:1.24fr 1fr;gap:25px}.studio-artifacts .film-poster{height:270px}.studio-artifacts .poster-title h3{font-size:25px;letter-spacing:3px}.studio-artifacts .film-info{padding:18px}.album-teaser{background:#edf0e7;border:1px solid #e0e5d9;border-radius:8px;padding:20px 24px 0;overflow:hidden;text-align:left;display:flex;flex-direction:column;align-items:center}.album-book{width:80%;max-width:295px;min-height:272px;background:#f6f1e7;box-shadow:5px 5px 0 #d6d6c6,8px 10px 26px #3c4e3333;padding:20px 20px 13px;position:relative;transform:rotate(2deg);transition:transform .4s;border-left:4px solid #d9d5c9}.album-teaser:hover .album-book{transform:rotate(0deg) translateY(-3px)}.album-book .eyebrow{font-size:6px;letter-spacing:1.6px;color:#8f977e}.album-book img{width:100%;height:140px;margin-top:12px;filter:saturate(.8)}.album-book h3{font-family:var(--serif);font-size:17px;font-weight:500;letter-spacing:1px;margin:15px 0 8px;line-height:1.5;color:#3d5140}.album-book p{font-size:8px;color:#8e987d;margin:0 0 14px}.album-book-bottom{font-size:6px;letter-spacing:1px;color:#9ca48d}.album-teaser-info{padding:17px 0;display:flex;gap:15px;justify-content:space-between;width:100%;font-size:9px;color:#7c8c6c}.album-teaser-info .icon{width:13px;height:13px}.studio-ai-banner{display:flex;align-items:center;gap:14px;background:#eaf0e4;border:1px solid #e0e7d7;border-radius:8px;padding:20px 22px;margin-top:25px}.spark-circle{display:grid;place-items:center;border:1px solid #d0ddc0;background:#f5f8f0;border-radius:50%;height:39px;width:39px;color:#8f9d73;flex-shrink:0}.studio-ai-banner h3{font-family:var(--serif);font-weight:500;font-size:16px;margin:0 0 7px}.studio-ai-banner p{font-size:10px;color:#8c9980;margin:0;line-height:1.7}.studio-ai-banner .btn{margin-left:auto;font-size:10px}.studio-photo-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}.studio-photo-strip .media-thumb{height:135px}.studio-photo-strip .media-info{padding:11px 10px}.studio-photo-strip .media-info h3{font-size:9px}.studio-photo-strip .media-info p{font-size:8px;gap:5px}.subject-tag{position:absolute;right:9px;bottom:9px;padding:5px 7px;font-size:8px;background:#f4f6e9e6;border-radius:3px;color:#637b4e;backdrop-filter:blur(6px)}.media-info h3{line-height:1.7}.people-collection{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px}.person-profile{padding:24px 20px;border:1px solid var(--line);border-radius:10px;background:#fff;display:flex;flex-direction:column;align-items:center;position:relative}.selected-profile{border-color:#91a87c;box-shadow:inset 0 0 0 1px #91a87c;background:#f6f8f2}.person-portrait{width:94px;height:108px;border-radius:45% 45% 10px 10px;object-fit:cover;border:4px solid #f0f3ea}.person-profile h3{font-family:var(--serif);text-align:center;font-size:20px;font-weight:500;margin:15px 0 8px}.person-profile p{font-size:10px;text-align:center;color:#939f86;margin:0 0 18px}.person-profile .btn{font-size:10px;min-width:170px}.person-profile .text-link{margin-top:15px;font-size:9px}.model-actions{display:flex;align-items:center;gap:12px;margin-top:22px;flex-wrap:wrap}.person-edit-avatar .avatar{width:70px;height:80px;border-radius:10px;margin:0 auto 20px}.style-options{display:flex;gap:9px;align-items:center}.style-choice{display:flex;align-items:center;gap:7px;background:white;border:1px solid #e2e7db;border-radius:6px;padding:7px 10px 7px 6px;font-size:10px;color:#859179;white-space:nowrap}.style-choice>span{background:var(--swatch);color:var(--swatch-ink);font-family:var(--serif);font-size:17px;width:30px;height:33px;display:grid;place-items:center;border-radius:3px;border:1px solid #72806618}.style-choice.active{border-color:#90a47a;background:#eef3e8;color:#405d35}.creation-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap}.creation-toolbar>div:last-child{display:flex;gap:10px}.creation-toolbar .btn{font-size:10px}.album-explanation{display:flex;justify-content:space-between;gap:15px;color:#8c9b7d;font-size:9px;line-height:1.8;margin:18px 0}.album-explanation .icon{width:13px;height:13px}.album-pages{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;margin-top:24px}.album-page-preview{aspect-ratio:4/5;background:#eceee6;border:1px solid #e0e4d8;box-shadow:0 7px 20px #3b4a2e14;overflow:hidden;display:grid;place-items:center;position:relative}.album-page-preview>span{color:#9ba68d;font-size:11px}.album-page-preview canvas{width:100%;height:auto;display:block}.film-workspace{display:grid;grid-template-columns:1.3fr 1fr;gap:25px;margin-top:25px}.film-workspace .film-poster{height:300px}.film-workspace .film-info .btn{display:none}.film-settings{padding:25px;border:1px solid var(--line);border-radius:9px;background:#fff}.film-settings h3{font-family:var(--serif);font-size:19px;font-weight:500;margin:0 0 25px}.film-settings .style-choice{font-size:9px;padding-right:8px}.film-settings .style-options{gap:6px;flex-wrap:wrap}.film-settings .style-choice>span{font-size:15px;width:25px;height:29px}.checkbox-label{display:flex;align-items:flex-start;gap:8px;color:#788c66;font-size:11px;line-height:1.8;cursor:pointer}.checkbox-label input{accent-color:var(--green);margin:4px 0 0;flex-shrink:0}.consent-line{margin-top:22px;font-size:11px}.settings-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;margin-top:30px}.settings-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:9px}.settings-card>.form-group:first-child{margin-top:0}.settings-card .model-actions{gap:9px}.settings-card .btn{font-size:11px}.settings-guide{padding:20px 10px}.settings-guide h2{font-family:var(--serif);font-size:28px;font-weight:500;line-height:1.7;margin:15px 0 20px}.settings-guide>p{font-size:12px;line-height:2;color:#8c9982}.settings-guide .notice{font-size:11px;line-height:2.1;margin-top:25px}.movie-modal{background:#17251d;position:relative;display:grid;place-items:center;max-height:72vh;overflow:hidden}.movie-modal canvas{display:block;max-width:100%;max-height:72vh;width:auto;height:auto}.movie-overlay-head{position:absolute;top:20px;left:22px;right:20px;color:#f3f5e8;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:2px}.movie-overlay-head .close-button{background:#ffffff29;color:white}.download-ready{text-align:center;padding:30px 15px}.download-ready>.icon{width:50px;height:50px;padding:13px;background:#e3edda;border-radius:50%;color:#799762}.download-ready h3{font-family:var(--serif);font-size:19px;font-weight:500;overflow-wrap:anywhere;line-height:1.7}.download-ready p{font-size:11px;color:#94a086}.detail-info input[type=range]{width:100%;accent-color:#738e61;margin:0 0 15px}.detail-info>.tag-people{margin-top:12px}.detail-info>.text-link{margin-top:10px}.detail-info .form-group{margin-top:15px}.detail-image img{height:550px}.detail-info .modal-head{align-items:flex-start}.detail-info .modal-head h2{white-space:normal;overflow-wrap:anywhere;line-height:1.5}.detail-info .tag-person{font-size:9px}.people-tabs{scrollbar-width:none}.people-tabs::-webkit-scrollbar{display:none}.empty-state .btn{margin-top:13px}.page-intro h1{line-height:1.5}.page-intro .demo-chip{flex-shrink:0}.topbar .breadcrumb b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:290px}.progress-box p{line-height:1.9}.model-actions a{font-size:11px}.sidebar-bottom .side-note{margin-top:15px}.album-page-preview{page-break-inside:avoid}.modal-foot .btn{font-size:11px}
@media(min-width:1600px){.studio-hero{height:340px}.studio-artifacts .film-poster{height:315px}.album-book{max-width:320px;min-height:310px}.album-book img{height:170px}.studio-photo-strip .media-thumb{height:170px}}
@media(max-width:1200px){.studio-artifacts{gap:18px}.studio-artifacts .film-poster{height:260px}.album-teaser{padding:20px 15px 0}.album-book{width:85%}.studio-photo-strip{grid-template-columns:repeat(4,1fr)}.studio-photo-strip .media-card:last-child{display:none}.film-workspace{grid-template-columns:1fr}.film-settings .style-options{gap:10px}.settings-layout{gap:24px}.creation-toolbar .style-choice{font-size:9px}.studio-ai-banner{padding:18px}.studio-ai-banner .btn{font-size:9px;padding:10px}.studio-ai-banner h3{font-size:14px}}
@media(max-width:950px){.studio-steps{gap:13px}.studio-steps>div{gap:9px}.step-number{font-size:21px;padding-right:10px}.studio-steps b{font-size:10px}.studio-steps small{font-size:8px;line-height:1.8;display:block}.studio-artifacts{grid-template-columns:1fr}.album-teaser{padding:22px 25px 0}.album-book{width:70%;max-width:340px;min-height:330px;padding:25px}.album-book img{height:170px}.album-book h3{font-size:23px}.album-book .eyebrow{font-size:7px}.album-teaser-info{max-width:400px}.studio-ai-banner{flex-wrap:wrap}.studio-ai-banner>div{flex:1}.studio-ai-banner .btn{margin-left:53px}.studio-photo-strip{grid-template-columns:repeat(3,1fr)}.studio-photo-strip .media-card:nth-child(4){display:none}.people-collection{grid-template-columns:repeat(2,1fr);gap:15px}.person-profile{padding:23px 13px}.person-profile .btn{min-width:0;width:100%;padding:10px}.album-pages{gap:16px}.settings-layout{grid-template-columns:1fr}.settings-guide{padding:15px 8px}.settings-guide h2{font-size:26px}.creation-toolbar{gap:15px}.album-explanation{display:block}.album-explanation span{display:block;margin-bottom:6px}.topbar .breadcrumb b{max-width:170px}.film-workspace .film-poster{height:275px}}
@media(max-width:650px){.studio-hero{height:280px}.studio-hero h2{font-size:30px}.studio-hero .hero-content{left:24px;top:37px}.studio-hero .hero-content .eyebrow{font-size:7px;letter-spacing:2px}.studio-hero .hero-label{font-size:7px;padding:6px 8px;top:15px}.studio-hero .hero-content p{max-width:260px;line-height:1.8}.studio-hero .hero-bottom{bottom:22px;right:20px;font-size:9px}.studio-steps{padding:22px 0;gap:10px}.studio-steps>div{display:block}.step-number{font-size:20px;border:0;padding:0;display:block;margin-bottom:11px}.studio-steps b{font-size:10px;line-height:1.7;margin-bottom:4px}.studio-steps small{font-size:8px}.studio-artifacts .film-poster{height:230px}.studio-artifacts .poster-title h3{font-size:23px}.studio-artifacts .film-info{padding:16px 13px}.studio-artifacts .film-info .btn{font-size:9px;padding:8px}.studio-artifacts .film-info h4{font-size:10px}.studio-artifacts .film-info p{font-size:9px}.album-book{width:78%;padding:24px;min-height:305px}.album-book img{height:155px}.album-book h3{font-size:20px}.studio-ai-banner{padding:17px 15px;gap:11px}.spark-circle{height:32px;width:32px}.spark-circle .icon{width:17px}.studio-ai-banner h3{font-size:13px;line-height:1.7}.studio-ai-banner p{font-size:9px}.studio-ai-banner .btn{margin-left:43px;font-size:10px}.studio-photo-strip{gap:11px;grid-template-columns:repeat(2,1fr)}.studio-photo-strip .media-card:nth-child(3){display:none}.studio-photo-strip .media-thumb{height:150px}.studio-photo-strip .media-info h3{font-size:10px}.studio-photo-strip .media-info p{font-size:8px}.person-profile{padding:23px 12px}.person-portrait{width:80px;height:95px}.person-profile h3{font-size:19px}.person-profile p{font-size:9px}.person-profile .btn{font-size:9px;padding:10px 6px;gap:4px}.person-profile .btn .icon{width:12px;height:12px}.person-profile .text-link{font-size:8px}.people-collection{gap:12px}.person-profile .text-link .icon{width:11px;height:11px}.album-pages{grid-template-columns:1fr;gap:24px}.creation-toolbar{padding:14px 0}.creation-toolbar>div:last-child{width:100%;justify-content:space-between}.creation-toolbar .btn{padding:10px 13px;font-size:10px}.style-options{gap:7px}.style-choice{padding:6px 8px 6px 5px;font-size:9px;gap:5px}.style-choice>span{width:27px;height:30px;font-size:16px}.film-settings{padding:22px 18px}.film-settings h3{font-size:18px}.film-workspace .film-poster{height:235px}.film-workspace .film-info h4{font-size:10px}.film-workspace .film-info p{font-size:9px}.settings-card{padding:22px 18px}.settings-guide h2{font-size:25px}.settings-guide>p{font-size:11px}.settings-guide .notice{font-size:10px}.model-actions{gap:9px;margin-top:20px}.model-actions .btn{font-size:10px;padding:10px 12px}.checkbox-label{font-size:10px}.consent-line{font-size:10px}.movie-overlay-head{top:13px;left:15px;right:13px;font-size:8px}.player-footer .model-actions{margin:0;gap:6px}.player-footer .model-actions .btn{font-size:9px;padding:9px}.player-footer b{font-size:10px}.player-footer p{font-size:8px;line-height:1.7}.detail-image img{height:275px}.detail-info .tag-person{font-size:9px}.page-intro{align-items:flex-start;gap:8px}.page-intro .demo-chip{max-width:90px;font-size:7px;line-height:1.6;text-align:center;margin-top:10px;white-space:normal}.topbar .breadcrumb b{max-width:125px}.topbar .breadcrumb{gap:6px}.topbar .btn-primary{font-size:9px}.side-heading{margin-top:25px}.footer{margin-top:28px}.album-teaser-info{font-size:9px}.subject-tag{font-size:7px;padding:4px 6px}.model-actions .btn-primary{line-height:1.5}}
@media print{.sidebar,.topbar,.page-intro,.people-tabs,.creation-toolbar,.album-explanation,.footer{display:none!important}.main{margin:0}.content{padding:0}.album-pages{display:block;margin:0}.album-page-preview{width:100%;height:auto;border:0;box-shadow:none;break-after:page;margin:0}.album-page-preview:last-child{break-after:auto}}

.album-page-preview[role=button]{cursor:zoom-in}.album-zoom{max-height:78vh;overflow:auto;background:#e9ede2}.album-zoom canvas{width:100%;height:auto;display:block}.modal.wide:has(.album-zoom)>.modal-head{padding:20px 24px;margin:0}@media(max-width:950px){.album-pages{grid-template-columns:1fr}}
.model-presets{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:12px}.model-presets>span{color:#96a18d;font-size:9px;margin-right:2px}.model-preset{font-size:10px;color:#6c805d;padding:5px 8px;background:#f1f5eb;border:1px solid #e2e9d8;border-radius:4px}.model-preset:hover{background:#e7eedf}.model-discovery-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:23px;margin-bottom:10px}.model-discovery-head .form-label{margin:0}.model-discovery-head .btn{font-size:10px;padding:8px 12px}.model-discovery-head #model-count{font-size:9px;color:#8c9e7b;margin-left:4px}#model-select{max-width:100%;text-overflow:ellipsis}#model-select:disabled{color:#9aa58e;background:#f4f6f0}.model-status{font-size:11px;line-height:1.9;padding:12px 14px;margin-top:17px;border-radius:5px;border:1px solid #e2e8db;background:#f1f5eb;color:#7f906e;overflow-wrap:anywhere}.model-status:empty{display:none}.model-status[data-kind=success]{background:#edf5e8;border-color:#d8e5ca;color:#567943}.model-status[data-kind=warning]{background:#fbf5e9;border-color:#eee1c9;color:#9a8053}.model-status[data-kind=error]{background:#fbefea;border-color:#ecd8ce;color:#a3664f}.connection-steps{list-style:none;counter-reset:connection;padding:0;margin:23px 0 29px;display:grid;gap:21px}.connection-steps li{counter-increment:connection;position:relative;padding-left:34px}.connection-steps li:before{content:'0' counter(connection);font-family:var(--serif);position:absolute;left:0;top:0;font-size:17px;color:#9ba98c}.connection-steps b{font-size:12px;font-weight:500;display:block;margin-bottom:7px}.connection-steps span{font-size:11px;line-height:1.9;color:#929d86;display:block}.settings-guide .notice{font-size:10px}.settings-card #forget-model-key{font-size:10px}.settings-card .model-actions{gap:10px}@media(max-width:650px){.model-discovery-head .btn{font-size:9px}.model-presets{gap:6px}.model-preset{font-size:9px;padding:5px 7px}.model-status{font-size:10px;padding:11px}.connection-steps span{font-size:10px}.connection-steps b{font-size:11px}.settings-card .model-actions .btn{font-size:10px;padding:10px 12px}}

/* 首次使用：导入引导（不展示示例内容） */
.onboarding{max-width:720px;margin:6vh auto 0;padding:0 20px;text-align:center}
.onboarding .eyebrow{display:block;font-size:10px;letter-spacing:3px;color:#8e9b83;margin-bottom:22px}
.onboarding h1{font-family:"Songti SC",SimSun,serif;font-size:clamp(28px,5vw,42px);font-weight:400;line-height:1.4;letter-spacing:2px;margin:0 0 18px;color:#26342e}
.onboarding-lead{font-size:14px;line-height:2;color:#7f8b76;margin:0 auto 34px;max-width:440px}
.onboarding-actions{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;margin-bottom:54px}
.onboarding-actions .btn-primary{padding:14px 28px;font-size:14px}
.onboarding-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;list-style:none;padding:0;margin:0 0 30px;text-align:left}
.onboarding-steps li{background:#fffef9;border:1px solid #e8ece2;border-radius:12px;padding:20px 18px}
.onboarding-steps span{display:block;font-size:11px;color:#c0b59c;letter-spacing:2px;margin-bottom:10px}
.onboarding-steps b{display:block;font-size:14px;color:#2e5147;margin-bottom:6px;font-weight:600;letter-spacing:.5px}
.onboarding-steps small{font-size:11px;color:#96a088;line-height:1.7}
.onboarding-note{font-size:11px;color:#a8afa0;margin:0}
@media(max-width:640px){.onboarding{margin-top:4vh}.onboarding-steps{grid-template-columns:1fr;gap:12px}.onboarding-actions{margin-bottom:38px}}
/* 危险操作：删除 */
.btn-outline.danger{color:#a86645;border-color:#e6d2c6}
.btn-outline.danger:hover{background:#fdf5f0;border-color:#d8b49f}
.text-link.danger{color:#a86645}
.text-link.danger:hover{color:#8f5238}
/* 批量选择 */
.media-card{position:relative}
.media-card.picked{outline:2px solid #2e5147;outline-offset:2px;border-radius:14px}
.pick-mark{position:absolute;left:10px;top:10px;z-index:3;width:24px;height:24px;border-radius:50%;
  background:#fffef9;border:1.5px solid #cfd8c8;color:#2e5147;font-size:13px;display:grid;place-items:center;
  box-shadow:0 2px 8px #00000014}
.media-card.picked .pick-mark{background:#2e5147;border-color:#2e5147;color:#fff}
.batch-bar{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:80;display:flex;
  align-items:center;gap:10px;padding:12px 18px;border-radius:14px;background:#fffdf7;
  border:1px solid #dfe6d6;box-shadow:0 14px 40px #2e51472e;font-size:12px;color:#4c5d4b;flex-wrap:wrap;
  max-width:min(760px,calc(100vw - 32px))}
.batch-bar b{color:#2e5147;font-size:14px}
.batch-bar .btn{padding:7px 13px;font-size:12px}
@media(max-width:640px){.batch-bar{left:12px;right:12px;transform:none;max-width:none;justify-content:space-between}}
/* 手动添加人物：头像选择 */
.thumb-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px;max-height:210px;overflow-y:auto;padding:4px}
.thumb-option{padding:0;border:2px solid transparent;border-radius:9px;overflow:hidden;cursor:pointer;background:none;line-height:0}
.thumb-option img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.thumb-option:hover{border-color:#c3cfba}
.thumb-option.selected{border-color:#2e5147;box-shadow:0 0 0 1px #2e5147}
/* 手动框选人脸 */
.face-stage{position:relative;display:block}
#face-marks,#face-draw{position:absolute;inset:0;pointer-events:none}
#face-draw.active{pointer-events:auto;cursor:crosshair;background:#00000010}
.face-mark{position:absolute;border:2px solid #4f8a6d;border-radius:6px;background:#4f8a6d1a;
  color:#2e5147;font-size:11px;padding:1px 4px;white-space:nowrap;overflow:hidden;max-width:100%}
.face-draft{position:absolute;border:2px dashed #2e5147;border-radius:6px;background:#2e51471a}

/* 照片详情：人脸列表 */
.face-chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 4px}
.face-chip{position:relative;display:inline-block;line-height:0}
.face-chip img{width:54px;height:54px;object-fit:cover;border-radius:9px;border:1px solid #e2e8dc}
.face-chip button{position:absolute;right:-6px;top:-6px;width:20px;height:20px;border-radius:50%;
  border:1px solid #fff;background:#a86645;color:#fff;font-size:12px;line-height:1;cursor:pointer;
  display:grid;place-items:center;padding:0}
.face-chip button:hover{background:#8f5238}
.media-thumb canvas{display:block;width:100%;height:100%;object-fit:cover}
.media-card.excluded .media-thumb>canvas{opacity:.6;filter:grayscale(.5)}
.detail-image canvas{display:block;width:100%;height:550px;object-fit:contain}
@media(max-width:760px){.detail-image canvas{height:275px}}
