/* Existing SAI palette; every rule is limited to the guided authoring surface. */
.studio-guide{color:var(--tx);min-width:0;padding:0 24px 32px;overflow-wrap:anywhere}
.studio-guide[hidden],.studio-guide [hidden]{display:none!important}
.studio-guide *{box-sizing:border-box}
.studio-guide button,.studio-guide a{ -webkit-tap-highlight-color:transparent }
.studio-guide button:focus-visible,.studio-guide a:focus-visible,.studio-guide summary:focus-visible{outline:2px solid var(--violet);outline-offset:4px}
.studio-guide [data-guide-title]:focus{outline:none}
.studio-guide [data-guide-title]{scroll-margin-top:88px}
.studio-guide svg{height:20px;width:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.sg-question{max-width:680px;margin:0 auto;padding:24px 0 8px}
.sg-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px;min-height:40px}
.sg-brand-label{font-size:12.5px;color:var(--tx2);font-weight:700}
.sg-progress{display:flex;gap:4px;margin:0 0 32px}
.sg-progress i{height:4px;background:var(--line);border-radius:var(--r-sm);flex:1}
.sg-progress i.is-active{background:var(--violet)}
.sg-step-label,.sg-eyebrow{display:inline-flex;align-items:center;color:var(--tx2);font-size:12.5px;font-weight:800;letter-spacing:.02em;margin:0 0 12px}
.sg-eyebrow{border:1px solid var(--line2);background:var(--surface);border-radius:var(--r-pill);padding:4px 12px}
.studio-guide h1{font-size:20px;font-weight:800;line-height:1.3;letter-spacing:-.02em;margin:0 0 12px;word-break:keep-all}
.sg-description{color:var(--tx2);font-size:14.5px;line-height:1.75;margin:0 0 24px;word-break:keep-all}
.sg-options{display:grid;grid-template-columns:1fr;gap:12px}
.sg-option{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;border:1px solid var(--line2);background:var(--surface);border-radius:var(--r-card);padding:16px;text-align:left;font:inherit;color:var(--tx);cursor:pointer;transition:border-color .12s var(--ease),background .12s var(--ease);min-height:96px}
.sg-option:hover{border-color:var(--line2);background:var(--hover)}
.sg-option.is-selected{border-color:var(--line2);box-shadow:none;background:var(--raised)}
.sg-option-copy{display:block;min-width:0;flex:1}
.sg-option-title{font-size:14.5px;line-height:1.5;font-weight:700;display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.sg-option-description{display:block;color:var(--tx2);font-size:12.5px;line-height:1.65;margin-top:4px;word-break:keep-all}
.sg-recommended{display:inline-flex;border-radius:var(--r-sm);background:var(--surface);color:var(--tx);font-weight:700;font-size:11px;padding:0px 4px}
.sg-radio{border:1.5px solid var(--line2);border-radius:50%;width:25px;height:25px;display:grid;place-items:center;flex:none;color:#fff}
.is-selected .sg-radio{border-color:var(--violet);background:var(--violet)}
.sg-radio svg{width:17px;height:17px;stroke-width:2.2}
.sg-selection-note{display:flex;align-items:flex-start;gap:8px;min-height:92px;padding:16px 0px;color:var(--tx2);font-size:12.5px}
.sg-selection-note p{margin:0;line-height:1.65}
.sg-selection-note strong{color:var(--tx);font-size:12.5px;display:block;margin-bottom:4px}
.sg-selection-note span:not(.sg-selection-mark){display:block}
.sg-selection-mark{display:flex;flex:none;margin-top:0px;color:var(--tx2)}
.sg-selection-mark svg{width:18px;height:18px}
.sg-template-note{color:var(--tx2);font-size:12.5px;line-height:1.7;margin:0 0 16px;word-break:keep-all}
.sg-question-actions{display:flex;gap:12px;justify-content:space-between;padding-top:8px}
.sg-question-actions .sg-primary{flex:1;max-width:380px}
.sg-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:52px;border:1px solid var(--line2);border-radius:var(--r-card);padding:12px 16px;color:var(--tx);background:var(--hover);font:inherit;font-size:16px;font-weight:700;line-height:1.4;text-decoration:none;cursor:pointer;transition:background .12s var(--ease),border-color .12s var(--ease)}
.sg-button:hover{background:var(--hover);border-color:var(--line2)}
.sg-button.sg-primary{color:#fff;background:var(--violet);border-color:var(--violet)}
.sg-button.sg-primary:hover{background:var(--violet);border-color:var(--violet);filter:brightness(1.08)}
.sg-button.sg-secondary{background:var(--hover)}
.sg-button.sg-text{background:transparent;border-color:transparent;padding:8px 0;min-height:36px;color:var(--tx2);font-size:12.5px}
.sg-button.sg-text:hover{color:var(--tx)}
.sg-button.sg-text svg{height:14px;width:14px}
.sg-button:disabled,.sg-option:disabled{opacity:.45;cursor:not-allowed}
.sg-button.sg-ai-primary{background:var(--violet);border-color:var(--violet);color:#fff;box-shadow:none}
.sg-button.sg-ai-primary:hover{background:var(--violet);border-color:var(--violet);filter:brightness(1.08)}
.sg-ai-quick{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--surface);border:1px solid var(--line2);border-radius:var(--r-card);padding:16px 16px;margin:0 0 24px}
.sg-ai-quick strong{font-size:12.5px;line-height:1.5;color:var(--tx)}
.sg-ai-quick p{font-size:11px;line-height:1.6;margin:4px 0 0;color:var(--tx2)}
.sg-ai-quick .sg-button{font-size:12.5px;min-height:42px;padding:8px 12px;flex:none}
.sg-ai-quick .sg-button svg{width:17px;height:17px}
.sg-extra-idea{margin:0 0 16px}
.sg-extra-idea label,.sg-generate-dialog label{display:block;color:var(--tx);font-size:12.5px;font-weight:700;margin:0 0 8px}
.sg-extra-idea label>span{font-size:11px;font-weight:400;color:var(--tx2);margin-left:4px}
.sg-extra-idea textarea,.sg-generate-dialog textarea,.sg-generate-dialog select{display:block;width:100%;max-width:100%;min-width:0;font:inherit;color:var(--tx);background:var(--bg);border:1px solid var(--line2);border-radius:var(--r-sm);padding:12px 16px;line-height:1.7;font-size:12.5px;resize:vertical;outline:none}
.sg-extra-idea textarea:focus,.sg-generate-dialog textarea:focus,.sg-generate-dialog select:focus{border-color:var(--violet);box-shadow:none;outline:1px solid var(--violet);outline-offset:0}
.sg-extra-idea textarea::placeholder,.sg-generate-dialog textarea::placeholder{color:var(--tx2)}
.sg-extra-idea p,.sg-question-ai p{font-size:11px;line-height:1.7;color:var(--tx2);margin:8px 0 0}
.sg-question-ai{margin:12px 0 0}
.sg-question-ai .sg-button{width:100%;min-height:48px}
.sg-question-ai p{text-align:center}
.sg-ai-tools{background:var(--surface);border:1px solid var(--line2);border-radius:var(--r-card);padding:16px;margin:0 0 24px;min-width:0}
.sg-ai-tools-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}
.sg-ai-mark{display:grid;place-items:center;flex:none;width:35px;height:35px;border-radius:var(--r-sm);background:var(--raised);color:var(--violet)}
.sg-ai-tools h2{font-size:14.5px;line-height:1.5;letter-spacing:-.01em;margin:0;color:var(--tx)}
.sg-ai-tools-heading p{font-size:12.5px;line-height:1.6;color:var(--tx2);margin:4px 0 0}
.sg-ai-tool-actions{display:flex;align-items:stretch;gap:12px;min-width:0}
.sg-ai-tool-actions>.sg-ai-primary{min-width:180px;flex:none;align-self:stretch;font-size:12.5px;padding:12px 16px}
.sg-ai-tool-shortcuts{display:flex;gap:8px;flex-wrap:wrap;min-width:0;align-items:stretch;flex:1}
.sg-button.sg-ai-chip{min-height:38px;font-size:12.5px;padding:8px 12px;background:var(--raised);border-color:var(--line2);color:var(--tx);flex:1;white-space:nowrap}
.sg-button.sg-ai-chip:hover{border-color:var(--line2);background:var(--hover)}
.sg-ai-tools-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;color:var(--tx2);font-size:11px;line-height:1.65;flex-wrap:wrap}
.sg-ai-tools-foot .sg-text{font-size:11px;min-height:25px;padding:0px 0}
.sg-ai-tools .sg-message{margin:12px 0 0}
.sg-ai-notice{font-size:12.5px;color:var(--tx);margin:12px 0 0;line-height:1.6}
.sg-generate-dialog{width:min(600px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);margin:auto;padding:24px;color:var(--tx);background:var(--surface);border:1px solid var(--line2);border-radius:var(--r-modal);box-shadow:none;overflow:auto;overscroll-behavior:contain}
.sg-generate-dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(3px)}
.sg-generate-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}
.sg-generate-heading h2{font-size:20px;letter-spacing:-.035em;line-height:1.4;margin:0;word-break:keep-all}
.sg-generate-heading .sg-text{flex:none;padding-top:0px}
.sg-generate-dialog .sg-description{font-size:12.5px;line-height:1.8;margin:0 0 24px}
.sg-generate-dialog select{margin-bottom:24px;resize:none;min-height:45px}
.sg-generate-dialog textarea{min-height:160px}
.sg-generate-hint{font-size:11px;color:var(--tx2);line-height:1.7;margin:12px 0 0}
.sg-generate-defaults{font-size:11px;color:var(--tx2);line-height:1.8;border-radius:var(--r-sm);background:var(--surface);padding:12px;margin:12px 0 0}
.sg-generate-defaults b,.sg-generate-defaults span{display:block}
.sg-generate-defaults b{font-size:12.5px;color:var(--tx);margin-bottom:4px}
.sg-generate-defaults span{color:var(--tx2);margin-top:4px}
.sg-generate-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}
.sg-local-note{text-align:center;color:var(--tx3);font-size:11px;margin:16px 0 0}
.sg-message{font-size:12.5px;line-height:1.65;padding:12px 16px;border-radius:var(--r-sm);word-break:keep-all}
.sg-error{color:var(--warn);border:1px solid var(--line2);background:var(--surface)}
.sg-success{color:var(--ok);border:1px solid var(--line2);background:var(--surface)}
.sg-result{max-width:1080px;margin:0 auto;padding-top:24px}
.sg-result-heading{max-width:730px;margin:8px 0 24px}
.sg-result-heading .sg-description{margin-bottom:0}
.sg-work-summary{display:flex;gap:24px;border:1px solid var(--line);background:var(--surface);border-radius:var(--r-modal);padding:24px;margin-bottom:16px;min-width:0}
.sg-cover{width:136px;height:176px;object-fit:cover;object-position:center 25%;border-radius:var(--r-sm);flex:none;align-self:center}
.sg-work-copy{min-width:0;flex:1}
.sg-work-kind{font-size:12.5px;color:var(--tx2)}
.sg-work-copy h2{font-size:20px;letter-spacing:-.025em;line-height:1.4;margin:4px 0 8px;word-break:keep-all}
.sg-work-copy p{font-size:14.5px;line-height:1.75;color:var(--tx);margin:0}
.sg-work-copy blockquote{margin:12px 0 0;color:var(--tx);font-size:14.5px;line-height:1.6}
.sg-result-source{padding:0 4px;margin-bottom:24px}
.sg-result-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.sg-result-column{display:flex;flex-direction:column;gap:16px;min-width:0}
.sg-card{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-card);padding:24px;min-width:0}
.sg-section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.sg-section-heading h2{font-size:14.5px;line-height:1.5;letter-spacing:-.02em;margin:0;word-break:keep-all}
.sg-section-heading .sg-button{flex:none}
.sg-card>p{font-size:12.5px;color:var(--tx2);line-height:1.8;margin:12px 0 0}
.sg-card .sg-card-caption{font-size:12.5px;margin:0 0 16px;color:var(--tx2)}
.sg-character-name{font-size:20px;line-height:1.4;margin:0 0 4px}
.sg-character-name span{font-size:12.5px;font-weight:400;color:var(--tx2);margin-left:8px}
.sg-card .sg-character-role{color:var(--tx2);margin:0}
.sg-voice{border-top:1px solid var(--line);margin-top:16px;padding-top:16px;font-size:12.5px;color:var(--tx2)}
.sg-voice b{color:var(--tx2)}
.sg-voice p{margin:4px 0 0;line-height:1.75}
.sg-appeal dl{margin:0;display:flex;flex-direction:column;gap:16px}
.sg-appeal dt{font-size:11px;font-weight:700;color:var(--tx2);margin-bottom:4px}
.sg-appeal dd{margin:0;font-size:12.5px;line-height:1.75;color:var(--tx2)}
.sg-appeal-actions{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}
.sg-appeal-actions .sg-button{font-size:12.5px;min-height:38px;padding:8px 12px}
.sg-card .sg-proposal-note{font-size:11px;line-height:1.7;margin-top:8px}
.sg-design-actions{border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:12px}
.sg-design-actions .sg-appeal-actions{margin-top:10px}
.sg-design-actions .sg-logic-ai{border-color:var(--violet);color:var(--tx);font-weight:600}
.sg-conversation{display:flex;flex-direction:column;gap:16px}
.sg-chat-line p{font-size:12.5px;line-height:1.8;color:var(--tx2);white-space:pre-line;margin:0}
.sg-chat-line.is-speech b{font-size:11px;color:var(--tx2);display:block;margin:0 0 4px}
.sg-chat-line.is-speech p{background:var(--raised);border-radius:4px 14px 14px 14px;padding:12px 12px;color:var(--tx)}
.sg-stage-list{list-style:none;margin:0;padding:0}
.sg-stage-list li{display:flex;gap:12px;position:relative;padding-bottom:16px;min-width:0}
.sg-stage-list li:last-child{padding-bottom:0}
.sg-stage-list li:not(:last-child):before{content:"";position:absolute;left:12px;top:29px;bottom:4px;width:1px;background:var(--surface)}
.sg-stage-number{width:25px;height:25px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--tx);font-size:11px;font-weight:700}
.sg-stage-list details{flex:1;min-width:0;padding-top:0px}
.sg-stage-list summary{font-size:12.5px;line-height:1.65;font-weight:700;cursor:pointer;color:var(--tx)}
.sg-stage-list p{font-size:12.5px;line-height:1.7;color:var(--tx2);margin:8px 0 0}
.sg-stage-list .sg-stage-hook{color:var(--tx2)}
.sg-card .sg-image-note{border-radius:var(--r-sm);background:var(--surface);padding:12px;color:var(--tx2);font-size:12.5px;margin:0 0 16px}
.sg-scene-list{display:flex;flex-direction:column;gap:16px}
.sg-scene{display:flex;gap:12px;min-width:0}
.sg-scene>div{flex:1;min-width:0}
.sg-scene>img,.sg-image-empty{width:58px;height:74px;border-radius:var(--r-sm);flex:none;object-fit:cover;background:var(--surface)}
.sg-image-empty{border:1px dashed var(--line2);display:grid;place-items:center;color:var(--tx2)}
.sg-image-empty svg{width:23px;height:23px;stroke-width:1.3}
.sg-scene strong{font-size:12.5px;line-height:1.5;display:block;margin:0px 0 4px}
.sg-scene p{font-size:12.5px;line-height:1.65;margin:0;color:var(--tx2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sg-pending{display:inline-block;font-size:11px;color:var(--tx2);margin-top:4px}
.sg-all-scenes{margin-top:16px}
.sg-issues{border:1px solid var(--line2);border-radius:var(--r-card);background:var(--surface);margin-top:24px;padding:16px}
.sg-issues h3{font-size:14.5px;margin:0;color:var(--warn)}
.sg-issues ul{margin:12px 0;padding-left:16px;color:var(--tx2);font-size:12.5px;line-height:1.9}
.sg-issues li{padding:4px 0}
.sg-issues li>.sg-button{margin-left:12px;vertical-align:baseline;min-height:28px;padding:0px 0}
.sg-save-bar{position:sticky;bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 16px;border:1px solid var(--line2);border-radius:var(--r-card);background:var(--surface);backdrop-filter:none;box-shadow:none;margin:24px 0 0;z-index:6}
.sg-save-state{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.sg-save-state b{font-size:12.5px}
.sg-save-state span{font-size:11px;line-height:1.6;color:var(--tx2)}
.sg-save-actions{display:flex;gap:8px;flex:none}
.sg-save-actions .sg-button{min-width:122px;font-size:12.5px;padding:12px 16px}
.sg-result-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 0}
.sg-result-bottom>span{font-size:11px;color:var(--tx3)}
@media(max-width:760px){
 .studio-guide{padding:0 16px 24px}
 .sg-question{padding-top:16px}
 .sg-topbar{margin-bottom:16px}
 .sg-progress{margin-bottom:24px}
 .studio-guide h1{font-size:20px;line-height:1.42}
 .sg-description{font-size:14.5px;margin-bottom:24px}
 .sg-option{padding:16px;min-height:94px;gap:12px}
 .sg-option-title{font-size:14.5px}
 .sg-option-description{font-size:12.5px}
 .sg-options{gap:8px}
 .sg-selection-note{min-height:92px;padding-top:16px;font-size:12.5px}
 .sg-question-actions{gap:8px}
 .sg-question-actions .sg-secondary{padding-left:12px;padding-right:12px;font-size:12.5px}
 .sg-result{padding-top:12px}
 .sg-work-summary{padding:16px;gap:16px;border-radius:var(--r-card)}
 .sg-cover{width:84px;height:120px;align-self:flex-start}
 .sg-work-copy h2{font-size:20px}
 .sg-work-copy p,.sg-work-copy blockquote{font-size:12.5px}
 .sg-result-grid{grid-template-columns:minmax(0,1fr);gap:16px}
 .sg-result-column{gap:16px}
 .sg-card{padding:16px}
 .sg-save-bar{flex-direction:column;align-items:stretch;gap:12px;padding:12px;margin-top:16px;bottom:8px;background:var(--surface);backdrop-filter:none}
 .sg-save-actions{width:100%}
 .sg-save-actions .sg-button{flex:1;min-width:0;padding:12px 8px;font-size:12.5px}
 .sg-result-bottom{align-items:flex-start;flex-direction:column;gap:4px}
 .sg-ai-quick{align-items:stretch;flex-direction:column;gap:12px;padding:16px;margin-bottom:24px}
 .sg-ai-quick .sg-button{width:100%}
 .sg-ai-tools{padding:16px;margin-bottom:16px}
 .sg-ai-tool-actions{flex-direction:column;gap:8px}
 .sg-ai-tool-actions>.sg-ai-primary{width:100%;min-height:44px}
 .sg-ai-tool-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .sg-button.sg-ai-chip{white-space:normal;padding:8px 4px;font-size:11px;line-height:1.5;background:var(--raised)}
 .sg-ai-tool-shortcuts .sg-button:last-child{grid-column:1/-1}
 .sg-ai-tools-heading p{font-size:11px}
 .sg-ai-tools-foot{font-size:11px}
 .sg-generate-dialog{padding:24px 16px;border-radius:var(--r-card);max-height:calc(100dvh - 24px);width:calc(100vw - 24px);max-width:calc(100vw - 24px)}
 .sg-generate-heading h2{font-size:20px}
 .sg-generate-actions .sg-button{padding:12px;min-width:0}
 .sg-generate-actions .sg-ai-primary{flex:1}
 .sg-extra-idea textarea,.sg-generate-dialog textarea,.sg-generate-dialog select{font-size:16px;line-height:1.65;background:var(--bg);color:var(--tx);padding:12px 16px}
}
@media(max-width:360px){
 .studio-guide{padding-left:12px;padding-right:12px}
 .sg-option{padding:12px;gap:8px}
 .sg-option-title{font-size:14.5px}
 .sg-option-description{font-size:11px}
 .sg-work-summary{padding:16px;flex-direction:column}
 .sg-cover{width:80px;height:104px}
 .sg-section-heading h2{font-size:14.5px}
 .sg-card{padding:16px}
 .sg-section-heading .sg-text{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.studio-guide *{transition:none!important;scroll-behavior:auto!important}}
/* Creation main: orientation → chat format → benchmark combination → editable idea. */
.sg-start{max-width:1080px;margin:0 auto;padding:24px 0 12px}
.sg-start-heading{max-width:760px;margin:4px 0 24px}
.sg-start-heading .sg-description{margin-bottom:0}
.sg-start-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 24px;padding:8px;border:1px solid var(--line2);border-radius:var(--r-card);background:var(--surface)}
.sg-button.sg-start-step{border:0;background:transparent;justify-content:flex-start;gap:8px;min-height:38px;font-size:12.5px;padding:8px 8px;color:var(--tx2)}
.sg-start-step b{display:grid;place-items:center;width:22px;height:22px;flex:none;border-radius:50%;background:var(--surface);color:var(--tx2);font-size:11px}
.sg-button.sg-start-step.is-current{background:var(--raised);color:var(--tx)}
.sg-start-step.is-current b{background:var(--violet);color:#fff}
.sg-start-section{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);padding:24px;margin:0 0 16px;min-width:0;scroll-margin-top:90px}
.sg-start-section-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}
.sg-section-number{flex:none;width:27px;height:27px;display:grid;place-items:center;border-radius:var(--r-sm);background:var(--raised);color:var(--tx2);font-size:12.5px;font-weight:800}
.sg-start-section-heading h2{font-size:18px;line-height:1.5;letter-spacing:-.01em;margin:0}
.sg-start-section-heading p{font-size:14px;line-height:1.6;color:var(--tx2);margin:4px 0 0}
.sg-lane-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sg-lane-card,.sg-mode-card{font:inherit;color:var(--tx);background:var(--bg);border:1px solid var(--line2);border-radius:var(--r-card);cursor:pointer;min-width:0;transition:background .12s var(--ease),border-color .12s var(--ease)}
.sg-lane-card:hover,.sg-mode-card:hover{border-color:var(--line2);background:var(--hover)}
.sg-lane-card.is-selected,.sg-mode-card.is-selected{background:var(--raised);border-color:var(--violet);box-shadow:none}
.sg-lane-card{position:relative;text-align:left;padding:16px;min-height:112px}
.sg-lane-card strong{font-size:16px;line-height:1.5;display:block;margin:0 0 8px}
.sg-lane-card>span:last-child{font-size:13px;line-height:1.6;color:var(--tx2);display:block;max-width:190px}
.sg-lane-mark{position:absolute;right:14px;top:17px;width:20px;height:20px;border:1px solid var(--line2);border-radius:50%;display:grid;place-items:center}
.sg-lane-mark svg{width:14px;height:14px;stroke-width:2}
.is-selected .sg-lane-mark{border-color:var(--violet);background:var(--violet)}
.sg-mode-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sg-mode-card{padding:16px;display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left}
.sg-mode-card>span{flex:1;min-width:0}
.sg-mode-card strong{display:block;font-size:16px;margin-bottom:4px;line-height:1.5}
.sg-mode-card>span>span{display:block;color:var(--tx2);font-size:13px;line-height:1.6}
.sg-mode-card .sg-radio{font-style:normal}
.sg-topics-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 16px}
.sg-topics-controls .sg-secondary,.sg-topics-controls .sg-topic-refresh{font-size:14px;min-height:40px;padding:8px 12px;border-radius:11px}
.sg-topic-refresh .sg-refresh-icon{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sg-topic-refresh[aria-busy="true"] .sg-refresh-icon{animation:sg-refresh-spin 1s linear infinite}
@keyframes sg-refresh-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.sg-topic-refresh[aria-busy="true"] .sg-refresh-icon{animation:none}}
.sg-topics-controls>.sg-text:last-child{margin-left:auto}
.sg-topic-overview{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin:0 0 16px;color:var(--tx2);font-size:12px;line-height:1.6}
.sg-topic-overview p{flex-basis:100%;margin:0;color:var(--tx3)}
.sg-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sg-topic-card{position:relative;display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg);overflow:visible}
.sg-topic-score{position:absolute;top:8px;right:12px;z-index:2;color:var(--tx2);font-size:11px}
.sg-topic-score summary{display:flex;align-items:center;gap:4px;min-height:36px;cursor:pointer;list-style:none;font-variant-numeric:tabular-nums}
.sg-topic-score summary::-webkit-details-marker{display:none}
.sg-topic-score summary b{color:var(--tx);font-weight:700}
.sg-topic-score summary svg{width:14px;height:14px}
.sg-topic-score[open]{z-index:5}
.sg-score-tip{position:absolute;right:0;top:40px;width:240px;max-width:calc(100vw - 72px);padding:16px;border:1px solid var(--line2);border-radius:var(--r-sm);background:var(--raised);color:var(--tx2);font-size:12.5px;line-height:1.6;word-break:keep-all}
.sg-topic-score~.sg-topic-pick .sg-topic-label{padding-right:96px;min-height:20px}
.sg-appeal-explanations:empty{display:none}
.sg-appeal-explanations{display:grid;gap:12px;margin:0 0 24px}
.sg-appeal-explanations article{padding:16px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg)}
.sg-appeal-explanations h4{margin:0 0 8px;color:var(--tx);font-size:14.5px;font-weight:700}
.sg-appeal-explanations p{margin:8px 0 0;color:var(--tx2);font-size:12.5px;line-height:1.7}
.sg-appeal-explanations b{display:block;margin:0 0 4px;color:var(--tx3);font-size:11px;font-weight:700}
.sg-topic-card.is-selected{border-color:var(--line2);box-shadow:none;background:var(--raised)}
.sg-topic-pick{display:flex;flex-direction:column;align-items:stretch;flex:1;width:100%;min-width:0;text-align:left;color:var(--tx);background:transparent;border:0;padding:16px;font:inherit;cursor:pointer}
.sg-topic-pick:hover{background:var(--hover)}
.sg-topic-label{display:flex;align-items:center;gap:4px;color:var(--tx2);font-size:11px;font-weight:700;margin-bottom:8px}
.sg-topic-label svg{height:13px;width:13px}
.sg-topic-pick>strong{font-size:14.5px;line-height:1.55;margin-bottom:8px;word-break:keep-all}
.sg-topic-concept{display:block;font-size:13px;line-height:1.6;color:var(--tx2);white-space:pre-line}
.sg-topic-facts{display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.6;color:var(--tx2)}
.sg-topic-fact{display:grid;grid-template-columns:54px minmax(0,1fr);gap:8px;align-items:start}
.sg-fact-label{font-size:12px;color:var(--tx3)}
.sg-topic-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:12px}
.sg-topic-tags i{display:inline-flex;align-items:center;border:1px solid var(--line2);background:var(--surface);color:var(--tx2);padding:4px 8px;border-radius:var(--r-pill);font-size:11px;font-style:normal;line-height:1.5;max-width:100%}
.sg-topic-choose{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--tx2);margin-top:auto;padding-top:16px}
.sg-topic-choose svg{height:13px;width:13px}
.sg-topic-evidence{border-top:1px solid var(--line2);margin:0 16px;padding:12px 0;font-size:11px;color:var(--tx2)}
.sg-topic-evidence summary{cursor:pointer;color:var(--tx2);font-size:11px}
.sg-topic-evidence p{font-size:11px;margin:8px 0 4px;line-height:1.7}
.sg-topic-evidence ul{padding-left:16px;margin:8px 0 4px;line-height:1.9}
.sg-topic-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 125px;gap:12px;padding:16px;border:1px solid var(--line2);border-radius:var(--r-sm);background:var(--surface);margin:0 0 16px}
.sg-topic-filters label,.sg-start-field-label{display:block;font-size:12.5px;font-weight:700;color:var(--tx);margin:0 0 8px}
.sg-topic-filters input,.sg-start-compose textarea,.sg-start-compose input{display:block;width:100%;max-width:100%;min-width:0;font:inherit;font-size:15px;line-height:1.6;color:var(--tx);background:var(--bg);border:1px solid var(--line2);border-radius:var(--r-sm);padding:12px 16px;outline:none}
.sg-topic-filters input:focus,.sg-start-compose textarea:focus,.sg-start-compose input:focus{border-color:var(--violet);box-shadow:none;outline:1px solid var(--violet);outline-offset:0}
.sg-topic-filters input::placeholder,.sg-start-compose textarea::placeholder,.sg-start-compose input::placeholder{color:var(--tx2)}
.sg-topic-filter-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;grid-column:1/-1}
.sg-topic-filter-foot p{font-size:11px;line-height:1.7;color:var(--tx2);margin:0}
.sg-topic-filter-foot .sg-button{font-size:12.5px;padding:8px 12px;min-height:37px;flex:none}
.sg-topics-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed var(--line2);border-radius:var(--r-card);padding:32px 16px;background:var(--surface)}
.sg-topics-empty .sg-ai-mark{margin-bottom:12px}
.sg-topics-empty strong{font-size:14.5px;line-height:1.6}
.sg-topics-empty p{max-width:420px;font-size:12.5px;line-height:1.7;color:var(--tx2);margin:8px 0 0}
.sg-start-compose textarea{resize:vertical;min-height:126px}
.sg-selected-topic{border:1px solid var(--line2);background:var(--surface);border-radius:var(--r-sm);padding:12px 16px;margin-bottom:24px}
.sg-selected-topic>span{display:block;color:var(--tx2);font-size:11px;margin-bottom:4px}
.sg-selected-topic>b{font-size:14.5px;line-height:1.6}
.sg-selected-topic .sg-topic-tags{margin-top:8px}
.sg-selected-topic-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;color:var(--tx2);font-size:12px}
.sg-button.sg-edit-pill{min-height:32px;border-radius:var(--r-pill);padding:4px 12px;gap:4px;background:var(--raised);font-size:12px;flex:none}
.sg-edit-pill svg{width:14px;height:14px}
.sg-topic-editor .sg-start-field-label{margin-top:16px}
.sg-topic-editor p{margin:8px 0 0;color:var(--tx2);font-size:12px;line-height:1.6}
.sg-topic-editor p.sg-error{color:var(--warn)}
.sg-topic-name-option{margin-top:16px;padding-top:12px;border-top:1px solid var(--line);font-size:12px;color:var(--tx2)}
.sg-topic-name-option summary{cursor:pointer;line-height:1.6}
.sg-topic-name-option summary span{color:var(--tx3);margin-left:4px}
.sg-all-attributes{margin-top:12px}
.sg-attribute-row{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:12px;align-items:start;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}
.sg-attribute-row>span{color:var(--tx2);padding-top:6px}
.sg-attribute-row>div{display:flex;flex-wrap:wrap;gap:5px;padding-top:3px}
.sg-attribute-row i{font-style:normal;border:1px solid var(--line2);border-radius:var(--r-pill);padding:3px 8px;overflow-wrap:anywhere}
.sg-dimension-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;margin:16px 0}
.sg-dimension-field{min-width:0}
.sg-dimension-grid textarea{min-height:84px;font-size:14px}
.sg-dimension-field details{font-size:12px;color:var(--tx2);margin-top:8px}
.sg-dimension-field summary,.sg-more-attributes summary,.sg-selected-appeal summary{cursor:pointer}
.sg-field-values{max-height:190px;overflow:auto;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;align-content:flex-start}
.sg-field-values .sg-button{font-size:12px;min-height:32px;padding:4px 10px;border-radius:var(--r-pill);background:var(--raised)}
.sg-field-values [hidden]{display:none}
.sg-field-search{margin-top:8px}
.sg-more-attributes{border-top:1px solid var(--line2);padding:16px 0;font-size:13px}
.sg-catalog-intro,.sg-catalog-note,.sg-catalog-count{color:var(--tx2);font-size:12px;line-height:1.7;margin:8px 0 14px}
.sg-catalog-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:8px}
.sg-catalog-toolbar select{min-width:0;background:var(--bg);color:var(--tx);border:1px solid var(--line2);border-radius:var(--r-sm);padding:10px;font:inherit;font-size:13px}
.sg-catalog-results{max-height:450px;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:2px;scrollbar-width:thin}
.sg-catalog-item{display:flex;flex-direction:column;gap:8px;text-align:left;background:var(--bg);color:var(--tx);border:1px solid var(--line2);border-radius:var(--r-card);padding:16px;font:inherit;cursor:pointer;min-width:0}
.sg-catalog-item:hover{background:var(--hover)}
.sg-catalog-item.is-selected{border-color:var(--violet);background:var(--raised)}
.sg-catalog-item:focus-visible{outline:2px solid var(--violet);outline-offset:-2px}
.sg-catalog-item>span,.sg-catalog-item>small{font-size:11px;color:var(--tx2)}
.sg-catalog-item>strong{font-size:14px;overflow-wrap:anywhere}
.sg-catalog-item p{font-size:12px;line-height:1.6;margin:0;color:var(--tx2)}
.sg-catalog-item>small{margin-top:auto}
.sg-selected-appeal{background:var(--surface);border:1px solid var(--line2);border-radius:var(--r-card);padding:16px;margin:12px 0}
.sg-selected-appeal>summary{font-size:15px;font-weight:700;overflow-wrap:anywhere}
.sg-selected-appeal-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:12px 0;font-size:11px;color:var(--tx2)}
.sg-selected-appeal label{font-size:12px;color:var(--tx2);display:block;min-width:0}
.sg-selected-appeal label input,.sg-selected-appeal label textarea{margin-top:8px}
.sg-appeal-refs{font-size:11px;color:var(--tx2);border-top:1px solid var(--line2);padding-top:12px}
@media(max-width:760px){.sg-dimension-grid,.sg-catalog-results,.sg-catalog-toolbar{grid-template-columns:minmax(0,1fr)}.sg-attribute-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.sg-attribute-row>span{grid-column:1/-1}.sg-catalog-results{max-height:400px}.sg-dimension-grid textarea,.sg-catalog-toolbar select{font-size:16px}}
.sg-topic-edit-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.sg-topic-edit-actions .sg-button{min-height:40px;font-size:14px;border-radius:11px}
.sg-start-count{display:flex;justify-content:space-between;gap:12px;color:var(--tx2);font-size:11px;line-height:1.7;margin:8px 0 24px}
.sg-start-count>span:last-child{flex:none}
.sg-start-appeal{border-top:1px solid var(--line2);padding-top:16px;margin-top:4px}
.sg-start-appeal h3{font-size:12.5px;color:var(--tx);margin:0 0 12px}
.sg-start-appeal h3>span{font-weight:400;font-size:11px;color:var(--tx2);margin-left:4px}
.sg-start-appeal-options{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.sg-button.sg-appeal-chip{min-height:35px;border-radius:var(--r-pill);font-size:11px;padding:8px 12px;background:var(--surface);border-color:var(--line2);color:var(--tx2)}
.sg-button.sg-appeal-chip.is-selected{background:#fff;border-color:#fff;color:#000}
.sg-appeal-direction{font-size:11px;line-height:1.8;padding:12px;border-radius:var(--r-sm);background:var(--surface);color:var(--tx2);margin:12px 0 0}
.sg-start-generate-actions{display:flex;gap:12px;margin-top:24px}
.sg-start-generate-actions>.sg-ai-primary{flex:1;min-height:52px}
.sg-start-generate-actions>.sg-secondary{font-size:12.5px}
.sg-start-safety{font-size:11px;line-height:1.8;color:var(--tx2);margin:12px 0 0}
.sg-start-examples{border-top:1px solid var(--line2);padding:16px 0px;margin-top:24px;color:var(--tx2);font-size:11px}
.sg-start-examples summary{cursor:pointer;line-height:1.8}
.sg-start-examples p{line-height:1.8;margin:8px 0 4px}
.sg-creation-nav{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line2);margin:0 0 24px;padding-bottom:16px}
.sg-button.sg-nav-button{font-size:11px;padding:8px 8px;min-height:33px;border-radius:var(--r-sm);border-color:var(--line2);background:var(--surface);color:var(--tx2)}
.sg-chapter-list{list-style:none;padding:0;margin:0}
.sg-chapter-list>li{border-top:1px solid var(--line2);padding:16px 0}
.sg-chapter-list>li:first-child{border-top:0;padding-top:0}
.sg-chapter-list summary{font-size:12.5px;font-weight:700;line-height:1.7;cursor:pointer}
.sg-chapter-list summary>span{font-size:11px;color:var(--tx2);margin-right:8px}
.sg-chapter-list details>p{color:var(--tx2);font-size:12.5px;line-height:1.8;margin:8px 0}
.sg-story-choices{padding:16px;background:var(--raised);border-radius:var(--r-sm);margin-top:12px}
.sg-story-choices b{font-size:11px;color:var(--tx2)}
.sg-story-choices ul{font-size:11px;line-height:1.8;color:var(--tx2);padding-left:16px;margin:8px 0 0}
.sg-ending-list{display:flex;flex-direction:column;gap:16px}
.sg-ending-list article{border-left:2px solid var(--line2);padding:0px 0 0px 12px}
.sg-ending-list article>span{font-size:11px;color:var(--tx2)}
.sg-ending-list h3{font-size:12.5px;line-height:1.6;margin:4px 0 4px}
.sg-ending-list p{font-size:12.5px;color:var(--tx2);line-height:1.8;margin:0}
.sg-story-world details,.sg-story-cast details{font-size:11px;color:var(--tx2);margin-top:12px}
.sg-story-world summary,.sg-story-cast summary{cursor:pointer}
.sg-story-world details p,.sg-story-cast details p{font-size:12.5px;line-height:1.8;white-space:pre-line}
.sg-story-cast article+article{border-top:1px solid var(--line2);padding-top:16px;margin-top:16px}
.sg-story-cast h3{font-size:14.5px;line-height:1.5;margin:0 0 4px}
.sg-story-cast h3>span{font-size:11px;font-weight:400;color:var(--tx2);margin-left:8px}
.sg-story-cast article>p{font-size:12.5px;line-height:1.8;color:var(--tx2);margin:8px 0}
.sg-story-cast .sg-story-role{color:var(--tx2)}
@media(max-width:900px){.sg-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .sg-start{padding-top:16px}
 .sg-start-heading{margin-bottom:16px}
 .sg-start-progress{gap:4px;padding:4px;margin-bottom:16px}
 .sg-button.sg-start-step{font-size:11px;gap:4px;padding:4px 4px;flex-direction:column;min-height:51px}
 .sg-start-section{padding:16px 16px;border-radius:var(--r-card);scroll-margin-top:146px}
 .sg-start-section-heading{gap:8px;margin-bottom:16px}
 .sg-start-section-heading h2{font-size:18px}
 .sg-start-section-heading p{font-size:13px}
 .sg-lane-options{gap:8px}
 .sg-lane-card{padding:16px;min-height:124px}
 .sg-lane-card strong{font-size:14.5px;margin-top:16px;margin-bottom:8px}
 .sg-lane-card>span:last-child{font-size:11px;line-height:1.6}
 .sg-lane-mark{top:12px;right:11px;width:17px;height:17px}
 .sg-mode-options{gap:8px}
 .sg-mode-card{padding:16px;gap:8px;align-items:flex-start;position:relative}
 .sg-mode-card strong{font-size:14.5px;padding-right:16px}
 .sg-mode-card>span>span{font-size:11px}
 .sg-mode-card .sg-radio{position:absolute;right:10px;top:17px;width:16px;height:16px}
 .sg-mode-card .sg-radio svg{width:12px;height:12px}
 .sg-topics-controls{gap:12px}
 .sg-topics-controls>.sg-text:last-child{margin-left:0}
 .sg-topic-grid{grid-template-columns:minmax(0,1fr)}
 .sg-topic-pick{padding:16px}
 .sg-topic-filters{grid-template-columns:minmax(0,1fr);padding:12px}
 .sg-topic-filter-foot{flex-direction:column;align-items:stretch;gap:12px}
 .sg-topic-filters input,.sg-start-compose textarea,.sg-start-compose input{font-size:16px;background:var(--bg);color:var(--tx);padding:12px 16px}
 .sg-start-count{font-size:11px}
 .sg-start-generate-actions{flex-direction:column;gap:8px}
 .sg-start-generate-actions>.sg-secondary{min-height:40px}
 .sg-start-appeal-options{gap:4px}
 .sg-button.sg-appeal-chip{font-size:11px;padding:8px 8px}
 .sg-creation-nav{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:12px;scrollbar-width:thin;overscroll-behavior-x:contain}
 .sg-creation-nav>.sg-button{flex:none}
}
.sg-rating-age{display:inline-block;white-space:nowrap}
.sg-rating-section .sg-mode-card strong,.sg-rating-section .sg-mode-card>span>span{word-break:keep-all}
