:root{--sl-gold:#c9a84c;--sl-panel:#18181f;--sl-line:#30303b;--sl-muted:#9997a0;--sl-good:#67b884}
html,body{max-width:100%;overflow-x:hidden}
.container{max-width:1440px;padding:18px clamp(12px,2.5vw,30px) 36px}
.header{text-align:left;padding:18px 0 14px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.header h1{font-size:clamp(24px,3vw,38px);letter-spacing:.04em}
.header p{max-width:760px;line-height:1.65}
.course-chip{display:inline-flex;align-items:center;gap:8px;margin-bottom:7px;color:#d8c98f;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.workflow-shell{display:grid;grid-template-columns:230px minmax(0,1fr);gap:18px;align-items:start}
.workflow-sidebar{position:sticky;top:82px;padding:14px;background:#15151b;border:1px solid var(--sl-line);border-radius:14px;box-shadow:0 16px 44px rgba(0,0,0,.2)}
.workflow-sidebar h2{font-size:13px;color:#e9e5d8;margin:2px 4px 10px}
.workflow-step{width:100%;display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:9px;padding:11px 9px;border:0;border-top:1px solid #292933;background:transparent;color:#aaa8ad;text-align:left;cursor:pointer}
.workflow-step:first-of-type{border-top:0}
.workflow-step strong{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #3a3943;border-radius:8px;color:#c9a84c;font-size:11px}
.workflow-step span{font-size:13px;font-weight:700}
.workflow-step em{font-style:normal;color:#666;font-size:11px}
.workflow-step.active{color:#fff;background:#22222c;border-radius:9px}
.workflow-step.active strong{background:var(--sl-gold);border-color:var(--sl-gold);color:#111}
.workflow-summary{margin-top:12px;padding:12px;border-radius:10px;background:#0f0f13;border:1px solid #282833}
.workflow-summary b{display:block;color:#e8e6e1;font-size:12px;margin-bottom:8px}
.workflow-metrics{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.workflow-metrics span{padding:7px;border-radius:7px;background:#1b1b23;color:#777;font-size:11px}
.workflow-metrics strong{display:block;color:#d9c578;font-size:16px;margin-bottom:2px}
.workflow-main,.brief-card,.card{min-width:0}
[data-workflow-anchor]{scroll-margin-top:88px}
.migration-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:13px 15px;border:1px solid #655927;border-radius:11px;background:#201d12}
.migration-notice b{display:block;color:#e5d7a1;font-size:13px;margin-bottom:4px}
.migration-notice p{color:#948b6d;font-size:11px;line-height:1.55}
.course-brief{display:grid;grid-template-columns:1.1fr 1fr;gap:12px;margin-bottom:16px}
.brief-card{padding:15px 16px;border:1px solid var(--sl-line);border-radius:12px;background:linear-gradient(145deg,#1b1b22,#15151b)}
.brief-card small{display:block;color:#777;font-size:11px;font-weight:800;letter-spacing:.12em;margin-bottom:6px}
.brief-card b{display:block;color:#eee9dc;font-size:15px;margin-bottom:5px}
.brief-card p{color:#96939a;font-size:12px;line-height:1.65;overflow-wrap:anywhere}
.view-switch{justify-content:flex-start;margin:0 0 14px;padding:5px;background:#15151b;border:1px solid var(--sl-line);border-radius:11px;width:max-content;max-width:100%}
.view-btn{border:0;border-radius:8px;padding:9px 16px}
.tab-bar{justify-content:flex-start;margin-bottom:14px;position:sticky;top:72px;z-index:18;padding:5px;background:rgba(15,15,19,.92);backdrop-filter:blur(10px);width:max-content;max-width:100%;border-radius:10px}
.card{padding:18px;border-radius:12px;margin-bottom:14px}
.card h2 small{color:#777;font-size:11px;font-weight:500;margin-left:7px;letter-spacing:0}
.generator-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr);gap:14px;align-items:start}
.generator-side{position:sticky;top:82px}
.field-help{color:#7e7b84;font-size:12px;line-height:1.6;margin:-7px 0 12px}
.selection-summary{padding:14px;border:1px solid #363641;border-radius:10px;background:#111117;margin-bottom:10px}
.selection-summary small{display:block;color:#777;margin-bottom:4px}
.selection-summary b{color:#e6d18c;font-size:14px}
.style-grid{grid-template-columns:repeat(auto-fill,minmax(135px,1fr));max-height:390px;overflow:auto;padding-right:4px}
.required-style-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:none;overflow:visible}
.style-card{position:relative;padding:11px;background:transparent;color:inherit;font:inherit;appearance:none;min-height:92px}
.style-card:focus-visible,.space-btn:focus-visible,.workflow-step:focus-visible,.mobile-stepbar button:focus-visible{outline:2px solid var(--sl-gold);outline-offset:2px}
.style-card .style-progress{display:block;margin-top:8px;color:#6f6d75;font-size:10px;font-weight:650}
.style-card[data-required="true"]::before{content:"必做";position:absolute;top:7px;right:7px;color:#8d8258;font-size:9px;font-weight:800}
.style-card.is-started .style-progress{color:#d8bd63}
.style-card.is-complete{border-color:var(--sl-good);box-shadow:inset 0 0 0 1px rgba(103,184,132,.24)}
.style-card.is-complete .style-progress{color:#80c99a}
.optional-styles{margin-top:14px;border-top:1px solid #2b2b34;padding-top:12px}
.optional-styles summary{cursor:pointer;color:#777;font-size:12px;list-style-position:inside}
.optional-styles[open] summary{margin-bottom:12px;color:#aaa}
.optional-styles .style-grid{max-height:240px}
.space-types{grid-template-columns:repeat(3,1fr)}
.result-card{display:grid;grid-template-columns:108px minmax(0,1fr);gap:12px;align-items:start}
.result-card h3{margin:3px 0 0}
.result-card .prompt-text,.result-card .btn-row{grid-column:2}
.record-page{grid-template-columns:minmax(300px,.82fr) minmax(0,1.5fr);gap:14px}
.rp-right{display:block}
.record-source-grid,.record-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.record-section{padding:14px;border:1px solid var(--sl-line);border-radius:10px;background:#15151b;margin-bottom:12px}
.record-section h4{color:#d8c373;font-size:13px;margin-bottom:9px}
.record-section h4 small{color:#777;font-weight:500;margin-left:7px}
.img-slot.has-final{border:2px solid var(--sl-good);box-shadow:0 0 0 3px rgba(103,184,132,.12)}
.upload-hit{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;cursor:pointer}
.upload-hit:focus-visible{outline:2px solid var(--sl-gold);outline-offset:-3px}
.img-slot-label{position:absolute;left:6px;top:6px;z-index:3;padding:3px 7px;border-radius:999px;background:rgba(10,10,14,.8);color:#ddd;font-size:10px}
.final-btn{position:absolute;right:6px;bottom:6px;z-index:3;border:1px solid #d4bc66;background:rgba(15,15,19,.9);color:#d4bc66;border-radius:6px;padding:5px 8px;font-size:11px;cursor:pointer}
.has-final .final-btn{background:var(--sl-good);border-color:var(--sl-good);color:#07120b}
.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.compare-field{display:flex;flex-direction:column;gap:5px;color:#aaa;font-size:12px}
.compare-field.full{grid-column:1/-1}
.compare-field textarea{width:100%;min-height:72px;padding:10px;background:#101016;color:#ddd;border:1px solid #34343f;border-radius:8px;resize:vertical;font:inherit;line-height:1.55}
.compare-field textarea:focus{outline:2px solid rgba(201,168,76,.35);border-color:#c9a84c}
.prompt-version-list{display:grid;gap:7px;margin-top:8px}
.prompt-version{padding:8px 9px;border:1px solid #30303a;border-radius:7px;background:#111117;color:#aaa;font-size:11px;line-height:1.55}
.prompt-version.is-selected{border-color:#c9a84c;color:#ddd}
.prompt-version p{margin-top:4px;white-space:pre-wrap;word-break:break-word}
.iteration-history{margin-top:10px;border-top:1px solid #30303a;padding-top:9px}
.iteration-history summary{cursor:pointer;color:#a9934f;font-size:11px}
.iteration-history div{margin-top:8px;padding:8px;border-radius:7px;background:#101016;color:#888;font-size:11px}
.iteration-history p{margin-top:4px;white-space:pre-wrap;word-break:break-word;line-height:1.5}
.record-time{font-size:12px;color:#666;margin-top:6px}
.record-toolbar{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:12px;flex-wrap:wrap}
.sync-note{font-size:12px;color:#777}
.sync-note.ready{color:#7ec896}
.export-bar{position:sticky;bottom:12px;z-index:20;padding:10px;background:rgba(18,18,24,.94);border:1px solid #34343e;border-radius:12px;backdrop-filter:blur(12px);align-items:center}
.export-title{font-size:12px;font-weight:800;color:#d9cfad;margin-right:auto;padding:0 4px}
.export-btn.primary{background:#c9a84c;color:#101014}
.empty-state{text-align:center;padding:clamp(42px,8vw,74px) 20px}
.empty-state b{display:block;color:#ddd;font-size:18px;margin-bottom:7px}
.empty-state p{max-width:620px;margin:0 auto 18px;color:#777;font-size:13px;line-height:1.7}
.mobile-stepbar{display:none}
@media(max-width:1000px){
  .workflow-shell{grid-template-columns:1fr}.workflow-sidebar{position:static;display:none}.mobile-stepbar{display:flex;position:sticky;top:58px;z-index:40;overflow:auto;gap:6px;margin:0 -2px 12px;padding:7px 2px;background:rgba(15,15,19,.94);backdrop-filter:blur(10px)}.mobile-stepbar button{white-space:nowrap;padding:8px 11px;border:1px solid #34343e;background:#17171e;color:#aaa;border-radius:8px}.mobile-stepbar button.active{background:var(--sl-gold);border-color:var(--sl-gold);color:#111;font-weight:750}.generator-grid{grid-template-columns:1fr}.generator-side{position:static}.course-brief{grid-template-columns:1fr 1fr}.tab-bar{top:108px}}
@media(max-width:720px){
  .page-header{min-height:56px;padding:6px 10px}.nav-links{gap:5px}.nav-link a{width:36px;padding:0;justify-content:center;font-size:0}.nav-link a span{font-size:15px}.container{padding:10px}.header{display:block;padding:12px 0}.header h1{font-size:23px}.header p{font-size:12px;margin-top:9px}.migration-notice{align-items:stretch;flex-direction:column}.course-brief{grid-template-columns:1fr}.brief-card{padding:12px}.record-page{grid-template-columns:1fr}.compare-grid{grid-template-columns:1fr}.compare-field.full{grid-column:auto}.style-grid,.required-style-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:320px}.required-style-grid{max-height:none}.space-types{grid-template-columns:repeat(3,1fr)}.result-card{grid-template-columns:1fr}.result-card .prompt-text,.result-card .btn-row{grid-column:1}.record-source-grid,.record-result-grid{grid-template-columns:1fr 1fr}.record-section h4 small{display:block;margin:4px 0 0}.img-slot .remove-img{opacity:1}.export-bar{position:static;display:grid;grid-template-columns:1fr 1fr;bottom:auto}.export-title{grid-column:1/-1}.export-btn{padding:9px 10px;font-size:11px}.export-btn.danger{grid-column:1/-1}.record-toolbar{align-items:stretch}.record-toolbar>div{display:flex;flex-direction:column;gap:7px}.record-toolbar .export-btn{width:100%}}
@media(max-width:420px){.record-source-grid,.record-result-grid{grid-template-columns:1fr}.space-types{grid-template-columns:repeat(2,1fr)}}
