/* 故事转视频引擎 — 暖色调胶片主题 */
.sf-mount{display:flex;flex-direction:column;gap:22px;color:#2a2630;font-family:inherit;}
.sf-hero{position:relative;text-align:center;padding:40px 20px 26px;border-radius:22px;background:linear-gradient(160deg,#fff7ec,#fdeee0);overflow:hidden;box-shadow:0 10px 40px rgba(150,90,40,.08);}
.sf-badge{display:inline-block;padding:5px 14px;border-radius:999px;background:linear-gradient(90deg,#f6a96b,#ec7f4a);color:#fff;font-size:12px;font-weight:700;letter-spacing:.5px;}
.sf-hero h1{margin:14px 0 8px;font-size:34px;font-weight:800;letter-spacing:1px;background:linear-gradient(90deg,#c96a2e,#8a4a1e);-webkit-background-clip:text;background-clip:text;color:transparent;}
.sf-hero p{color:#7a6a60;font-size:14px;margin:0;}
.sf-deco{position:absolute;inset:0;pointer-events:none;opacity:.5;}
.sf-deco span{position:absolute;font-size:26px;}
.sf-deco .d1{top:18px;left:26px;transform:rotate(-14deg);}
.sf-deco .d2{top:30px;right:34px;transform:rotate(12deg);}
.sf-deco .d3{bottom:20px;left:40px;transform:rotate(8deg);}
.sf-deco .d4{bottom:24px;right:44px;transform:rotate(-10deg);}
.sf-deco .d5{top:14px;left:50%;transform:translateX(-50%);}
.sf-deco .d6{bottom:12px;left:46%;}
.sf-panel{background:#fff;border-radius:18px;padding:20px 22px;box-shadow:0 6px 24px rgba(150,90,40,.06);}
.sf-story-wrap{position:relative;}
.sf-story{width:100%;min-height:150px;resize:vertical;border:1.5px solid #f0ddc8;border-radius:14px;padding:14px 16px;font-size:14px;line-height:1.7;color:#3a332c;background:#fffaf4;font-family:inherit;outline:none;box-sizing:border-box;}
.sf-story:focus{border-color:#ec9a5c;}
.sf-story-count{position:absolute;right:12px;bottom:10px;font-size:12px;color:#b09a88;}
.sf-story-idea{display:inline-flex;align-items:center;gap:6px;margin-top:10px;color:#d97c3e;font-size:13px;cursor:pointer;background:none;border:0;padding:0;}
.sf-story-idea:hover{text-decoration:underline;}
/* 配置行 */
.sf-cfg{display:flex;flex-wrap:wrap;gap:10px;}
.sf-cfg-chip{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:12px;border:1.5px solid #f0ddc8;background:#fffaf4;color:#6b5b4e;font-size:13px;cursor:pointer;font-weight:600;}
.sf-cfg-chip:hover{border-color:#ec9a5c;color:#c96a2e;}
.sf-cfg-chip .val{color:#d97c3e;font-weight:700;}
.sf-cfg-actions{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap;}
.sf-model{font-size:12px;color:#8a7a6a;}
.sf-gen{display:inline-flex;align-items:center;gap:8px;padding:12px 26px;border-radius:12px;border:0;background:linear-gradient(90deg,#ec8a4a,#d96a2e);color:#fff;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 8px 22px rgba(217,106,46,.32);}
.sf-gen:hover{transform:translateY(-1px);}
.sf-gen:disabled{opacity:.6;cursor:not-allowed;}
/* 教程 */
.sf-tut-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.sf-tut-head h3{margin:0;font-size:16px;color:#4a3a2c;}
.sf-tut-head a{color:#d97c3e;font-size:13px;cursor:pointer;}
.sf-tut-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:14px;}
.sf-tut-thumbs .t{aspect-ratio:16/10;border-radius:10px;background:linear-gradient(150deg,#f3d9be,#e8b58c);display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;cursor:pointer;}
.sf-recent h3{margin:0 0 12px;font-size:16px;color:#4a3a2c;}
.sf-recent-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.sf-recent-card{border-radius:12px;overflow:hidden;cursor:pointer;background:#f7ede2;}
.sf-recent-card .cover{aspect-ratio:16/10;background:linear-gradient(150deg,#e8c9a8,#d9a878);display:flex;align-items:center;justify-content:center;font-size:22px;}
.sf-recent-card .meta{padding:8px 10px;font-size:12px;color:#7a6a5a;}
/* 模态 */
.sf-modal-mask{position:fixed;inset:0;background:rgba(20,14,8,.45);display:flex;align-items:center;justify-content:center;z-index:9000;padding:20px;}
.sf-modal{background:#fff;border-radius:18px;width:100%;max-width:620px;max-height:84vh;overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.25);}
.sf-modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #f3e6d8;position:sticky;top:0;background:#fff;z-index:2;}
.sf-modal-head h3{margin:0;font-size:17px;color:#3a2e22;}
.sf-modal-head .x{border:0;background:none;font-size:20px;color:#a89a8a;cursor:pointer;}
.sf-modal-body{padding:20px 22px;}
.sf-modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:16px 22px;border-top:1px solid #f3e6d8;position:sticky;bottom:0;background:#fff;}
.sf-btn{padding:9px 20px;border-radius:10px;border:1.5px solid #e8d8c6;background:#fff;color:#6b5b4e;font-size:13px;cursor:pointer;font-weight:600;}
.sf-btn.primary{background:linear-gradient(90deg,#ec8a4a,#d96a2e);border-color:transparent;color:#fff;}
/* 风格网格 */
.sf-style-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
.sf-style{border:1.5px solid #f0ddc8;border-radius:12px;overflow:hidden;cursor:pointer;background:#fff;}
.sf-style.sel{border-color:#ec8a4a;box-shadow:0 0 0 2px rgba(236,138,74,.25);}
.sf-style .pv{aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;font-size:26px;}
.sf-style .nm{padding:8px 10px;font-size:13px;font-weight:600;color:#5a4a3a;display:flex;align-items:center;gap:6px;}
.sf-style .tick{margin-left:auto;color:#ec8a4a;display:none;}
.sf-style.sel .tick{display:block;}
/* BGM */
.sf-bgm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
.sf-bgm{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1.5px solid #f0ddc8;border-radius:10px;cursor:pointer;font-size:13px;color:#5a4a3a;}
.sf-bgm.sel{border-color:#ec8a4a;background:#fff5ec;}
.sf-bgm .dur{margin-left:auto;font-size:11px;color:#a89a8a;}
.sf-slider{display:flex;align-items:center;gap:12px;margin-top:14px;font-size:13px;color:#6b5b4e;}
.sf-slider input{flex:1;}
/* 技能 */
.sf-skill{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1.5px solid #f0ddc8;border-radius:10px;cursor:pointer;font-size:13px;color:#5a4a3a;margin-bottom:8px;}
.sf-skill.sel{border-color:#ec8a4a;background:#fff5ec;}
.sf-note{font-size:12px;color:#a89a8a;margin-top:10px;}
/* 时长 */
.sf-dur{display:flex;flex-direction:column;gap:8px;}
.sf-dur label{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1.5px solid #f0ddc8;border-radius:10px;cursor:pointer;font-size:13px;color:#5a4a3a;}
.sf-dur label.sel{border-color:#ec8a4a;background:#fff5ec;}
.sf-dur .hint{font-size:11px;color:#a89a8a;}
/* select */
.sf-select{width:100%;padding:11px 12px;border:1.5px solid #f0ddc8;border-radius:10px;font-size:14px;color:#3a2e22;background:#fff;outline:none;}
/* 方向 */
.sf-orient{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.sf-orient label{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;border:1.5px solid #f0ddc8;border-radius:12px;cursor:pointer;font-size:13px;color:#5a4a3a;}
.sf-orient label.sel{border-color:#ec8a4a;background:#fff5ec;}
.sf-orient .ic{font-size:26px;}
/* 剧本结果 */
.sf-script h3{margin:0 0 14px;font-size:17px;color:#3a2e22;}
.sf-scene{border:1.5px solid #f0ddc8;border-radius:14px;padding:14px 16px;margin-bottom:12px;background:#fffaf4;}
.sf-scene .sh{display:flex;align-items:center;gap:10px;font-weight:700;color:#c96a2e;font-size:14px;margin-bottom:8px;}
.sf-scene .sh .ln{flex:1;height:1px;background:#f0ddc8;}
.sf-scene .nv{font-size:13px;color:#5a4a3a;line-height:1.7;margin-bottom:6px;}
.sf-scene .dl{font-size:13px;color:#3a2e22;line-height:1.7;}
.sf-script-actions{display:flex;gap:12px;margin-top:16px;flex-wrap:wrap;}
.sf-loading{display:flex;align-items:center;gap:10px;color:#8a7a6a;font-size:14px;}
.sf-spin{width:18px;height:18px;border:2.5px solid #f0ddc8;border-top-color:#ec8a4a;border-radius:50%;animation:sfspin .8s linear infinite;}
@keyframes sfspin{to{transform:rotate(360deg);}}
@media(max-width:900px){.sf-style-grid,.sf-bgm-grid{grid-template-columns:1fr;}.sf-tut-thumbs{grid-template-columns:repeat(3,1fr);}.sf-recent-grid{grid-template-columns:repeat(2,1fr);}.sf-hero h1{font-size:26px;}}
