.fs-manager-page { padding-bottom: var(--spacing-5,24px); }
.fs-page-lead { margin: var(--spacing-2,8px) 0 0; color: var(--color-neutral); }
.fs-overview { display: grid; grid-template-columns: repeat(3,minmax(120px,1fr)) minmax(280px,2fr); align-items: stretch; gap: var(--spacing-4,16px); }
.fs-overview>div:not(.callout) { display: flex; flex-direction: column; justify-content: center; min-height: 76px; padding: var(--spacing-4,16px); border-radius: 8px; background: var(--surface-bg); box-shadow: var(--shadow-sm); }
.fs-overview strong { color: var(--color-primary); font-size: 1.65rem; line-height: 1; }
.fs-overview span { margin-top: var(--spacing-2,8px); color: var(--color-neutral); font-size: .78rem; }
.fs-overview .callout { display: flex; align-items: center; margin: 0; padding-left: var(--spacing-4,16px); }
.fs-overview .callout p { margin: 0; color: var(--color-neutral); font-size: .84rem; line-height: 1.6; }
.fs-manager-page .fs-grid { margin-top: var(--spacing-5,24px); }
.fs-manager-page .fs-card { border: 0; border-radius: 8px; box-shadow: var(--shadow-sm); transition: transform .18s ease,box-shadow .18s ease; }
.fs-manager-page .fs-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.fs-manager-page .fs-card h3 { margin: var(--spacing-4,16px) 0 var(--spacing-1,4px); font-size: 1.08rem; font-weight: 700; }
.fs-manager-page .fs-card-actions { align-items: center; }
.fs-mode-picker { grid-template-columns: repeat(3,1fr); }
.fs-manager-page .fs-card-actions .btn { flex: 1; }
.fs-card-more { border: 0; color: var(--color-neutral); }
.fs-card-more:hover,.fs-card-more:focus-visible { background: var(--hover-bg-subtle); color: var(--text-primary); }
.fs-manager-page .fs-card-data { border-color: var(--border-color); }
.fs-manager-page .fs-empty { margin-top: var(--spacing-5,24px); border: 0; border-radius: 8px; background: var(--color-bg-subtle); }
.fs-tool-dock { display: grid; grid-template-columns: repeat(4,minmax(150px,190px)); justify-content: end; gap: var(--spacing-3,12px); margin: 0 0 var(--spacing-5,24px); padding: var(--spacing-3,12px); border-radius: 8px; background: var(--surface-bg); box-shadow: var(--shadow-sm); }
.fs-tool-dock .dropdown { display: contents; }
.fs-tool-action { display: flex; align-items: center; gap: var(--spacing-3,12px); min-height: 68px; padding: var(--spacing-3,12px); border: 0; border-radius: 8px; background: var(--color-bg-subtle); color: var(--color-primary); text-align: left; text-decoration: none; transition: background .18s ease,transform .18s ease; }
.fs-tool-action:hover,.fs-tool-action:focus-visible { transform: translateY(-1px); background: var(--hover-bg-subtle); color: var(--color-primary-active); }
.fs-tool-action>i { font-size: 1.35rem; }
.fs-tool-action span { display: flex; flex-direction: column; }
.fs-tool-action strong { color: inherit; font-size: .9rem; }
.fs-tool-action small { margin-top: var(--spacing-1,4px); color: var(--color-neutral); font-size: .68rem; }
.fs-tool-action-primary { background: var(--color-primary); color: var(--surface-bg); }
.fs-tool-action-primary small { color: var(--surface-bg); opacity: .82; }
.fs-tool-action-primary:hover,.fs-tool-action-primary:focus-visible { background: var(--color-primary-active); color: var(--surface-bg); }
.fs-ai-modal { overflow: hidden; max-height: 88vh; border-radius: 12px; }
.fs-ai-modal .modal-header { flex: 0 0 auto; }.fs-ai-modal .modal-header h2 { margin: 0; font-family: inherit; font-size: 1.3rem; }.fs-ai-modal .modal-header p { margin: var(--spacing-1,4px) 0 0; color: var(--color-neutral); font-size: .78rem; }
.fs-ai-modal .modal-body { overflow: hidden; }
.fs-workbench { display: grid; grid-template-columns: minmax(340px,.78fr) minmax(480px,1.22fr); gap: 0; height: min(650px,calc(88vh - 116px)); margin: calc(var(--spacing-5,24px) * -1); }
.fs-build-panel,.fs-preview-panel { overflow-y: auto; padding: var(--spacing-5,24px); }
.fs-build-panel { background: var(--color-bg-subtle); }
.fs-preview-panel { background: var(--surface-bg); }
.fs-step { display: flex; align-items: center; gap: var(--spacing-3,12px); margin-bottom: var(--spacing-4,16px); color: var(--color-neutral); font-size: .8rem; font-weight: 700; }
.fs-step b { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; background: var(--color-primary); color: var(--surface-bg); }
.fs-action-tabs { display: grid; grid-template-columns: 1fr 1fr; padding: var(--spacing-1,4px); border-radius: 8px; background: var(--border-color); }
.fs-action-tabs input { position: absolute; opacity: 0; }
.fs-action-tabs span { display: block; cursor: pointer; padding: var(--spacing-3,12px); border-radius: 4px; text-align: center; font-size: .82rem; font-weight: 700; }
.fs-action-tabs input:checked+span { background: var(--surface-bg); color: var(--color-primary); box-shadow: var(--shadow-sm); }
.fs-code-input,.fs-code-result { font-family: "Cascadia Code","Microsoft YaHei",monospace; font-size: .8rem; line-height: 1.55; }
.fs-mode-inline { display: flex; gap: var(--spacing-5,24px); margin: var(--spacing-4,16px) 0; color: var(--color-neutral); font-size: .85rem; }
.fs-mode-inline input { accent-color: var(--color-primary); }
.fs-validation { display: flex; gap: var(--spacing-3,12px); min-height: 86px; margin-bottom: var(--spacing-4,16px); padding: var(--spacing-4,16px); border-radius: 8px; }
.fs-validation>i { font-size: 1.5rem; }.fs-validation strong { font-size: .9rem; }.fs-validation p { margin: var(--spacing-1,4px) 0 0; color: var(--color-neutral); font-size: .76rem; }
.fs-validation ul { max-height: 92px; overflow: auto; margin: var(--spacing-2,8px) 0 0; padding-left: var(--spacing-4,16px); color: var(--color-neutral); font-size: .74rem; }
.fs-validation-idle { background: var(--color-bg-subtle); color: var(--color-neutral); }
.fs-validation-ok { border-left: 4px solid var(--color-success); color: var(--color-success); }
.fs-validation-error { border-left: 4px solid var(--color-danger); color: var(--color-danger); }
.fs-preview-tabs { display: flex; gap: var(--spacing-1,4px); margin-bottom: var(--spacing-2,8px); }
.fs-preview-tabs button { padding: var(--spacing-2,8px) var(--spacing-3,12px); border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--color-neutral); font-size: .78rem; font-weight: 700; }
.fs-preview-tabs button.active { border-color: var(--color-primary); color: var(--color-primary); }
#fsAiPreview,.fs-code-result { width: 100%; height: min(420px,48vh); border: 0; border-radius: 8px; background: var(--color-bg-subtle); box-shadow: inset 0 0 0 1px var(--border-color); }
.fs-code-result { padding: var(--spacing-4,16px); resize: none; }
.fs-save-row { display: grid; grid-template-columns: 1fr auto; gap: var(--spacing-2,8px); margin-top: var(--spacing-3,12px); }
.fs-save-row .btn { white-space: nowrap; }
.fs-ai-notice { display: flex; gap: var(--spacing-3,12px); margin-top: var(--spacing-4,16px); padding: var(--spacing-3,12px); border-left: 4px solid var(--color-info); color: var(--color-info); }
.fs-ai-notice>i { font-size: 1.2rem; }.fs-ai-notice div { display: flex; flex-direction: column; }.fs-ai-notice strong { font-size: .84rem; }.fs-ai-notice span { margin-top: var(--spacing-1,4px); color: var(--color-neutral); font-size: .74rem; line-height: 1.5; }
.fs-generate-modal,.fs-review-modal { overflow: hidden; border-radius: 12px; }.fs-generate-modal .modal-header h2,.fs-review-modal .modal-header h2 { margin: 0; font-family: inherit; font-size: 1.3rem; }.fs-generate-modal .modal-header p,.fs-review-modal .modal-header p { margin: var(--spacing-1,4px) 0 0; color: var(--color-neutral); font-size: .78rem; }
.fs-generation-status { display: flex; align-items: center; gap: var(--spacing-3,12px); margin-top: var(--spacing-4,16px); padding: var(--spacing-3,12px); border-left: 4px solid var(--color-info); color: var(--color-info); }.fs-generation-status>i { font-size: 1.35rem; }.fs-generation-status div { display: flex; flex-direction: column; }.fs-generation-status span { margin-top: var(--spacing-1,4px); color: var(--color-neutral); font-size: .76rem; }
.fs-review-modal { max-height: 90vh; }.fs-review-modal .modal-body { overflow-y: auto; }.fs-review-modal .modal-footer { flex-wrap: nowrap; }.fs-review-modal .modal-footer .form-control { min-width: 260px; margin-right: auto; }
.fs-process-strip { display: flex; align-items: center; justify-content: center; gap: var(--spacing-2,8px); margin: 0 0 var(--spacing-4,16px); padding: var(--spacing-2,8px); border-radius: 8px; background: var(--color-bg-subtle); color: var(--color-neutral); font-size: .72rem; }.fs-process-strip span { display: inline-flex; align-items: center; gap: var(--spacing-1,4px); }.fs-process-strip span.is-active { color: var(--color-primary); font-weight: 700; }.fs-process-strip span.is-done { color: var(--color-success); }
@media(max-width:1000px) { .fs-overview { grid-template-columns: repeat(3,1fr); }.fs-overview .callout { grid-column: 1/-1; }.fs-workbench { grid-template-columns: 1fr; height: min(700px,calc(88vh - 116px)); }.fs-build-panel,.fs-preview-panel { overflow: visible; }.fs-ai-modal .modal-body { overflow-y: auto; }.fs-tool-dock { grid-template-columns: repeat(2,minmax(150px,1fr)); } }
@media(max-width:620px) { .fs-overview { grid-template-columns: 1fr; }.fs-overview .callout { grid-column: auto; }.fs-action-tabs,.fs-save-row,.fs-tool-dock { grid-template-columns: 1fr; }.fs-workbench { height: auto; margin: calc(var(--spacing-5,24px) * -1); }.fs-ai-modal { max-height: 94vh; } }
.fs-results-overview { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--spacing-4,16px); }
.fs-results-overview>div { display: flex; min-height: 76px; flex-direction: column; justify-content: center; padding: var(--spacing-4,16px); border-radius: 8px; background: var(--surface-bg); box-shadow: var(--shadow-sm); }
.fs-results-overview strong { color: var(--color-primary); font-size: 1.65rem; line-height: 1; }.fs-results-overview span { margin-top: var(--spacing-2,8px); color: var(--color-neutral); font-size: .78rem; }
.fs-results-page .fs-result-grid { margin-top: var(--spacing-5,24px); }.fs-results-page .fs-result-card { border: 0; border-radius: 8px; box-shadow: var(--shadow-sm); }.fs-results-page .fs-result-card h3 { margin: var(--spacing-2,8px) 0 var(--spacing-4,16px); font-size: 1rem; }.fs-results-page .fs-result-card>span { color: var(--color-primary); font-size: .7rem; font-weight: 700; }
.fs-results-page .fs-bar { margin-top: var(--spacing-3,12px); }.fs-results-page .fs-bar>div { display: flex; justify-content: space-between; font-size: .8rem; }.fs-results-page progress { width: 100%; height: 8px; border: 0; border-radius: 999px; overflow: hidden; background: var(--color-bg-subtle); }.fs-results-page progress::-webkit-progress-bar { background: var(--color-bg-subtle); }.fs-results-page progress::-webkit-progress-value { background: var(--color-primary); }.fs-results-page progress::-moz-progress-bar { background: var(--color-primary); }
.fs-results-page .fs-submissions { margin-top: var(--spacing-5,24px); border: 0; border-radius: 8px; box-shadow: var(--shadow-sm); }.fs-results-page .fs-submissions h3 { margin: 0; font-size: 1.05rem; }.fs-results-page .fs-submissions table { margin-top: var(--spacing-4,16px); }.fs-results-page .fs-submissions thead { background: var(--color-bg-subtle); }
@media(max-width:620px) { .fs-results-overview { grid-template-columns: 1fr; }.fs-results-page .app-page-header { align-items: stretch; flex-direction: column; }.fs-results-page .btn-toolbar { margin-top: var(--spacing-4,16px); } }
.fs-editor-settings { display: grid; grid-template-columns: minmax(220px,1fr) auto minmax(320px,1.5fr); gap: var(--spacing-4,16px); align-items: end; }.fs-editor-settings .fs-validation { margin: 0; min-height: 62px; }.fs-editor-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--spacing-4,16px); margin-top: var(--spacing-5,24px); }.fs-editor-grid>.card { overflow: hidden; min-height: 650px; border: 0; border-radius: 8px; box-shadow: var(--shadow-sm); }.fs-editor-pane-title { display: flex; justify-content: space-between; padding: var(--spacing-3,12px) var(--spacing-4,16px); background: var(--color-bg-subtle); }.fs-editor-pane-title span { color: var(--color-neutral); font-size: .74rem; }.fs-editor-code,#fsEditorPreview { width: 100%; min-height: 600px; border: 0; border-radius: 0; resize: none; }.fs-editor-code { padding: var(--spacing-4,16px); font-family: "Cascadia Code","Microsoft YaHei",monospace; font-size: .78rem; line-height: 1.55; }#fsEditorPreview { background: var(--surface-bg); }
@media(max-width:900px) { .fs-editor-settings,.fs-editor-grid { grid-template-columns: 1fr; }.fs-editor-grid>.card { min-height: 500px; }.fs-editor-code,#fsEditorPreview { min-height: 450px; } }
.fs-question-editor-grid { display: grid; grid-template-columns: minmax(520px,1.1fr) minmax(420px,.9fr); gap: var(--spacing-4,16px); margin-top: var(--spacing-5,24px); align-items: start; }.fs-editor-section-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--spacing-3,12px); }.fs-editor-section-head h3 { margin: 0; font-size: 1.05rem; }.fs-editor-section-head span { color: var(--color-neutral); font-size: .76rem; }.fs-question-list { display: grid; gap: var(--spacing-3,12px); }.fs-question-edit-card { overflow: hidden; border-radius: 8px; background: var(--surface-bg); box-shadow: var(--shadow-sm); }.fs-question-edit-card summary { display: grid; grid-template-columns: auto minmax(0,1fr) auto auto; align-items: center; gap: var(--spacing-3,12px); cursor: pointer; padding: var(--spacing-4,16px); list-style: none; }.fs-question-edit-card summary::-webkit-details-marker { display: none; }.fs-question-edit-card summary strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.fs-question-edit-card[open] summary { background: var(--color-bg-subtle); }.fs-question-edit-card[open] summary>i { transform: rotate(180deg); }.fs-question-order { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; background: var(--color-primary); color: var(--surface-bg); font-size: .75rem; font-weight: 700; }.fs-question-edit-body { padding: var(--spacing-4,16px); }.fs-option-editor { margin-top: var(--spacing-4,16px); }.fs-option-head { display: flex; justify-content: space-between; margin-bottom: var(--spacing-2,8px); }.fs-option-head span { color: var(--color-neutral); font-size: .72rem; }.fs-option-row { display: grid; grid-template-columns: auto minmax(0,1fr) 120px; gap: var(--spacing-2,8px); align-items: center; margin-top: var(--spacing-2,8px); }.fs-option-row>[type=radio],.fs-option-row>[type=checkbox] { width: 18px; height: 18px; accent-color: var(--color-primary); }.fs-option-value { font-family: "Cascadia Code",monospace; font-size: .78rem; }.fs-question-preview { position: sticky; top: var(--spacing-4,16px); overflow: hidden; min-height: 720px; border: 0; border-radius: 8px; box-shadow: var(--shadow-sm); }.fs-question-preview #fsEditorPreview { width: 100%; min-height: 680px; border: 0; }
@media(max-width:1050px) { .fs-question-editor-grid { grid-template-columns: 1fr; }.fs-question-preview { position: static; min-height: 540px; }.fs-question-preview #fsEditorPreview { min-height: 500px; } }
.fs-editor-add-actions,.fs-card-tools { display:flex; align-items:center; gap:8px; }
.fs-type-menu { columns:2; min-width:280px; }
.fs-editor-tip { margin-bottom:12px; padding:10px 12px; border-left:3px solid var(--color-primary); background:var(--color-bg-subtle); color:var(--color-neutral); font-size:.78rem; }
.fs-question-edit-card summary { grid-template-columns:auto auto minmax(0,1fr) auto auto; }
.fs-card-tools button { display:grid; width:28px; height:28px; place-items:center; padding:0; border:0; border-radius:5px; background:transparent; color:var(--color-neutral); }
.fs-card-tools button:hover { background:var(--hover-bg-subtle); color:var(--color-primary); }
.fs-drag-handle { cursor:grab; touch-action:none; }
.fs-question-edit-card.is-dragging { opacity:.45; }
.fs-question-edit-card.is-drop-target { outline:2px solid var(--color-primary); outline-offset:3px; }
.fs-style-editor,.fs-file-settings { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:16px; padding:12px; border-radius:8px; background:var(--color-bg-subtle); }
.fs-style-editor label,.fs-file-settings label { display:grid; gap:6px; color:var(--color-neutral); font-size:.75rem; }
.fs-style-editor select,.fs-file-settings select,.fs-file-settings input { min-height:36px; padding:6px 8px; border:1px solid var(--border-color); border-radius:6px; background:var(--surface-bg); color:var(--text-primary); }
.fs-option-row { grid-template-columns:auto minmax(0,1fr) 120px auto; }
.fs-option-row button { border:0; background:transparent; color:var(--color-danger); }
@media(max-width:700px){.fs-editor-add-actions{flex-wrap:wrap}.fs-card-tools button:not(.fs-drag-handle){display:none}.fs-style-editor,.fs-file-settings{grid-template-columns:1fr}.fs-question-edit-card summary{grid-template-columns:auto auto minmax(0,1fr) auto}.fs-question-edit-card summary>.badge{display:none}}
.fs-editor-page { --editor-ink:#10233f; --editor-blue:#2563eb; }
.fs-editor-header { position:sticky; top:0; z-index:20; margin:0 calc(var(--spacing-4,16px) * -1) var(--spacing-4,16px); padding:12px var(--spacing-4,16px); border-bottom:1px solid var(--border-color); background:color-mix(in srgb,var(--surface-bg) 94%,transparent); backdrop-filter:blur(14px); }
.fs-editor-header .fs-kicker { color:var(--color-primary); font-size:.68rem; font-weight:800; letter-spacing:.12em; }
.fs-editor-header .app-page-title { margin-top:2px; font-size:1.45rem; }
.fs-editor-header-actions { display:flex; align-items:center; gap:8px; }
.fs-save-state { display:inline-flex; align-items:center; gap:6px; min-width:92px; color:var(--color-success); font-size:.76rem; font-weight:700; }
.fs-save-state.is-dirty { color:#b45309; }.fs-save-state.is-dirty i { font-size:.45rem; }.fs-save-state.is-saving { color:var(--color-primary); }
.fs-editor-settings { border:1px solid var(--border-color); box-shadow:none; }
.fs-editor-list-tools { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.fs-editor-search { display:flex; align-items:center; flex:1; max-width:360px; height:38px; padding:0 10px; border:1px solid var(--border-color); border-radius:8px; background:var(--surface-bg); color:var(--color-neutral); transition:border-color .18s,box-shadow .18s; }
.fs-editor-search:focus-within { border-color:var(--color-primary); box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 12%,transparent); }
.fs-editor-search input { flex:1; min-width:0; padding:0 8px; border:0; outline:0; background:transparent; font-size:.82rem; }
.fs-editor-search button { border:0; background:transparent; color:var(--color-neutral); }
.fs-editor-list-tools .fs-editor-tip { margin:0; padding:0; border:0; background:transparent; white-space:nowrap; }
.fs-question-edit-card { border:1px solid transparent; transition:border-color .18s,box-shadow .18s,transform .18s; }
.fs-question-edit-card:hover { border-color:color-mix(in srgb,var(--color-primary) 26%,var(--border-color)); }
.fs-question-edit-card[open] { border-color:color-mix(in srgb,var(--color-primary) 38%,var(--border-color)); box-shadow:0 10px 26px rgba(15,35,65,.08); }
.fs-question-edit-card summary { grid-template-columns:auto auto minmax(0,1fr) auto auto; }
.fs-card-tools { opacity:.72; transition:opacity .18s; }.fs-question-edit-card:hover .fs-card-tools,.fs-question-edit-card[open] .fs-card-tools { opacity:1; }
.fs-card-tools button:disabled { opacity:.25; cursor:not-allowed; }
.fs-insert-chooser { padding:16px; border:1px solid color-mix(in srgb,var(--color-primary) 35%,var(--border-color)); border-radius:10px; background:linear-gradient(145deg,color-mix(in srgb,var(--color-primary) 6%,var(--surface-bg)),var(--surface-bg)); box-shadow:0 10px 28px rgba(37,99,235,.1); animation:fsChooserIn .18s ease-out; }
.fs-insert-chooser>div { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }.fs-insert-chooser>div button { border:0; background:transparent; color:var(--color-neutral); }
.fs-insert-chooser section { display:flex; flex-wrap:wrap; gap:7px; margin-top:8px; }.fs-insert-chooser section>span { width:100%; color:var(--color-neutral); font-size:.68rem; font-weight:700; letter-spacing:.08em; }
.fs-insert-chooser section button { display:inline-flex; align-items:center; gap:5px; padding:7px 10px; border:1px solid var(--border-color); border-radius:7px; background:var(--surface-bg); color:var(--editor-ink); font-size:.75rem; }.fs-insert-chooser section button:hover { border-color:var(--color-primary); color:var(--color-primary); transform:translateY(-1px); }
@keyframes fsChooserIn { from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none} }
.fs-empty-search { display:grid; place-items:center; gap:5px; padding:42px 20px; border:1px dashed var(--border-color); border-radius:10px; color:var(--color-neutral); text-align:center; }.fs-empty-search[hidden]{display:none}.fs-empty-search i{font-size:1.6rem}.fs-empty-search strong{color:var(--editor-ink)}.fs-empty-search span{font-size:.76rem}
.fs-editor-pane-title>div:first-child { display:flex; flex-direction:column; gap:2px; }
.fs-preview-device { display:flex; align-items:center; gap:4px; }.fs-preview-device button,.fs-preview-device a { display:grid; width:30px; height:30px; place-items:center; border:0; border-radius:6px; background:transparent; color:var(--color-neutral); text-decoration:none; }.fs-preview-device button:hover,.fs-preview-device a:hover,.fs-preview-device button.active { background:var(--surface-bg); color:var(--color-primary); box-shadow:var(--shadow-sm); }
.fs-preview-canvas { display:flex; justify-content:center; min-height:680px; overflow:hidden; background:#edf1f6; transition:padding .25s; }.fs-preview-canvas iframe { background:white; transition:width .25s,border-radius .25s,box-shadow .25s; }
.fs-question-preview[data-device="mobile"] .fs-preview-canvas { padding:24px; }.fs-question-preview[data-device="mobile"] iframe { width:390px!important; min-height:760px!important; border-radius:18px!important; box-shadow:0 16px 45px rgba(15,35,65,.2); }
@media(max-width:900px){.fs-editor-header{position:static;margin:0 0 16px;padding:0;border:0;background:transparent;backdrop-filter:none}.fs-editor-header,.fs-editor-header-actions,.fs-editor-list-tools{align-items:flex-start;flex-wrap:wrap}.fs-save-state{order:3;width:100%}.fs-editor-search{max-width:none;width:100%}.fs-editor-list-tools .fs-editor-tip{display:none}}
.fs-wysiwyg-page { padding-bottom:32px; }
.fs-wysiwyg-header { position:sticky; top:0; z-index:30; display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 -16px; padding:9px 16px; border-bottom:1px solid #dbe3ed; background:rgba(255,255,255,.96); backdrop-filter:blur(14px); }
.fs-wysiwyg-title { display:flex; align-items:center; gap:12px; min-width:0; }.fs-wysiwyg-title .fs-kicker { flex:none; color:#2563eb; font-size:.66rem; font-weight:800; letter-spacing:.1em; }.fs-wysiwyg-title input { width:min(34vw,420px); padding:5px 8px; border:1px solid transparent; border-radius:6px; background:transparent; color:#10233f; font-size:1.05rem; font-weight:750; text-overflow:ellipsis; }.fs-wysiwyg-title input:hover,.fs-wysiwyg-title input:focus { border-color:#cbd5e1; background:#fff; outline:0; }
.fs-wysiwyg-actions { display:flex; align-items:center; gap:4px; }.fs-wysiwyg-actions button,.fs-wysiwyg-actions a { display:inline-flex; align-items:center; justify-content:center; gap:5px; min-height:34px; padding:0 10px; border:1px solid transparent; border-radius:6px; background:transparent; color:#475569; font-size:.76rem; font-weight:700; text-decoration:none; }.fs-wysiwyg-actions button:hover,.fs-wysiwyg-actions a:hover { background:#f1f5f9; color:#1d4ed8; }.fs-wysiwyg-actions button:disabled { opacity:.35; }.fs-wysiwyg-actions .is-primary { background:#2563eb; color:#fff; }.fs-wysiwyg-actions .is-primary:hover { background:#1d4ed8; color:#fff; }
.fs-wysiwyg-toolbar,.fs-element-inspector { display:flex; align-items:center; gap:6px; min-height:44px; margin:10px 0 0; padding:5px 8px; border:1px solid #dbe3ed; border-radius:8px; background:#fff; box-shadow:0 4px 16px rgba(15,35,65,.05); }
.fs-wysiwyg-toolbar button,.fs-wysiwyg-toolbar>label,.fs-element-inspector button,.fs-element-inspector label { display:inline-flex; align-items:center; gap:5px; height:32px; margin:0; padding:0 8px; border:0; border-radius:5px; background:transparent; color:#334155; font-size:.73rem; white-space:nowrap; }.fs-wysiwyg-toolbar button:hover,.fs-element-inspector button:hover { background:#eef4ff; color:#1d4ed8; }.fs-wysiwyg-toolbar select,.fs-element-inspector select,.fs-element-inspector input[type=number] { height:26px; padding:2px 22px 2px 6px; border:1px solid #cbd5e1; border-radius:5px; background-color:#fff; color:#10233f; font-size:.72rem; }.fs-element-inspector input[type=number] { width:62px; padding-right:5px; }
.fs-toolbar-separator { width:1px; height:22px; margin:0 3px; background:#dbe3ed; }.fs-toolbar-spacer { flex:1; }.fs-toolbar-hint { color:#64748b; font-size:.7rem; }.fs-validation-pill { display:inline-flex; align-items:center; gap:5px; max-width:280px; height:30px; padding:0 9px; border-radius:999px; background:#f1f5f9; color:#64748b; font-size:.7rem; white-space:nowrap; overflow:hidden; }.fs-validation-pill span { overflow:hidden; text-overflow:ellipsis; }.fs-validation-pill.is-valid { background:#ecfdf5; color:#047857; }.fs-validation-pill.is-invalid { background:#fff7ed; color:#c2410c; }
.fs-element-inspector { position:sticky; top:54px; z-index:25; border-color:#93b4f7; background:#f8fbff; box-shadow:0 7px 22px rgba(37,99,235,.1); }.fs-element-inspector[hidden]{display:none}.fs-inspector-kind { display:inline-flex; align-items:center; height:26px; padding:0 8px; border-radius:5px; background:#2563eb; color:#fff; font-size:.69rem; font-weight:800; }.fs-element-inspector .is-danger { color:#dc2626; }.fs-element-inspector .is-danger:hover { background:#fee2e2; color:#b91c1c; }
.fs-inspector-options { display:flex; align-items:center; gap:4px; max-width:min(38vw,520px); overflow-x:auto; padding:2px 0; }.fs-inspector-options[hidden]{display:none}.fs-inspector-options label { flex:none; height:28px; padding:0 3px 0 6px; border:1px solid #cbd5e1; background:#fff; }.fs-inspector-options input { width:82px; min-width:52px; border:0; outline:0; font-size:.7rem; }.fs-inspector-options label button { width:20px; height:20px; padding:0; color:#94a3b8; }.fs-inspector-options>button { flex:none; height:28px; border:1px dashed #93b4f7; color:#2563eb; }
.fs-inspector-options .fs-option-correct { width:15px; min-width:15px; accent-color:#2563eb; }.fs-inspector-file { display:flex; align-items:center; gap:4px; }.fs-inspector-file[hidden]{display:none}.fs-inspector-file label { padding:0 4px; }.fs-inspector-file input[type=text],.fs-inspector-file input:not([type]) { width:90px; height:26px; padding:2px 5px; border:1px solid #cbd5e1; border-radius:5px; font-size:.7rem; }.fs-inspector-file input[type=number] { width:52px; }
.fs-wysiwyg-workspace { margin-top:10px; padding:24px; border:1px solid #d8e0ea; border-radius:10px; background:radial-gradient(circle at 20% 10%,rgba(255,255,255,.9),transparent 28%),#e8edf4; box-shadow:inset 0 1px 0 #fff; }.fs-wysiwyg-canvas { width:min(100%,1120px); min-height:760px; margin:auto; overflow:hidden; border-radius:8px; background:#fff; box-shadow:0 18px 55px rgba(15,35,65,.16); }.fs-wysiwyg-canvas iframe { display:block; width:100%; min-height:900px; border:0; background:#fff; }
.fs-type-menu { max-height:420px; overflow-y:auto; }
@media(max-width:980px){.fs-wysiwyg-header{position:static;align-items:flex-start;flex-direction:column}.fs-wysiwyg-actions{width:100%;overflow-x:auto}.fs-wysiwyg-title{width:100%}.fs-wysiwyg-title input{width:100%}.fs-wysiwyg-toolbar,.fs-element-inspector{overflow-x:auto}.fs-element-inspector{position:static}.fs-toolbar-hint{display:none}.fs-wysiwyg-workspace{padding:8px}.fs-inspector-options{max-width:none}}
#fsInspectorAnswer { width:120px; height:26px; padding:2px 6px; border:1px solid #cbd5e1; border-radius:5px; font-size:.7rem; }
#fsInspectorLabel { width:150px; height:26px; padding:2px 6px; border:1px solid #cbd5e1; border-radius:5px; font-size:.7rem; }
.fs-inspector-options .fs-option-value-input { width:42px; min-width:42px; padding-left:4px; border-left:1px solid #e2e8f0; color:#64748b; font-family:"Cascadia Code",monospace; }
.fs-device-switch { display:flex; align-items:center; gap:2px; }.fs-device-switch button { width:30px; padding:0; }.fs-device-switch button.is-active { background:#e8f0ff; color:#1d4ed8; }
.fs-canvas-search { width:142px; border:1px solid #dbe3ed!important; background:#f8fafc!important; }.fs-canvas-search input { width:105px; border:0; outline:0; background:transparent; font-size:.7rem; }
.fs-answer-review-reminder { display:inline-flex; align-items:center; gap:5px; height:26px; padding:0 8px; border-radius:5px; background:#fff7ed; color:#c2410c; font-size:.68rem; font-weight:800; white-space:nowrap; }.fs-answer-review-reminder[hidden]{display:none}
.fs-wysiwyg-page .fs-element-inspector { position:fixed; z-index:1060; top:0; left:0; width:max-content; max-width:calc(100vw - 16px); margin:0; overflow-x:auto; border-color:#6f9df5; box-shadow:0 12px 34px rgba(15,35,65,.2); transition:top .12s ease,left .12s ease; }
.fs-wysiwyg-page .fs-element-inspector::after { content:""; position:absolute; width:10px; height:10px; margin-left:24px; transform:rotate(45deg); background:#f8fbff; border-right:1px solid #6f9df5; border-bottom:1px solid #6f9df5; }
.fs-wysiwyg-page .fs-element-inspector[data-placement="above"]::after { bottom:-6px; }.fs-wysiwyg-page .fs-element-inspector[data-placement="below"]::after { top:-6px; transform:rotate(225deg); }
.fs-wysiwyg-page .fs-element-inspector { width:min(820px,calc(100vw - 16px)); min-height:0; padding:5px 7px; flex-direction:column; align-items:stretch; gap:3px; overflow:visible; }
.fs-inspector-row { display:flex; align-items:center; gap:4px; min-width:0; min-height:32px; }.fs-inspector-row-primary { padding-bottom:3px; border-bottom:1px solid #dce7f8; }.fs-inspector-row-secondary { padding-top:1px; }.fs-inspector-row label,.fs-inspector-row button { height:28px; padding:0 6px; }.fs-inspector-row-primary #fsInspectorLabel { width:180px; }.fs-inspector-row .fs-inspector-options { max-width:360px; }.fs-inspector-row .fs-toolbar-spacer { min-width:4px; }
.fs-inspector-image { display:flex; align-items:center; gap:3px; min-width:0; }.fs-inspector-image[hidden]{display:none}.fs-inspector-image label { padding:0 3px; }.fs-inspector-image input { height:25px; padding:2px 5px; border:1px solid #cbd5e1; border-radius:5px; font-size:.68rem; }.fs-inspector-image #fsInspectorImageSrc { width:180px; }.fs-inspector-image #fsInspectorImageAlt { width:100px; }.fs-inspector-image #fsInspectorImageWidth { width:58px; }
@media(max-width:760px){.fs-wysiwyg-page .fs-element-inspector{width:calc(100vw - 12px);overflow-x:auto}.fs-inspector-row{width:max-content}.fs-inspector-row-primary #fsInspectorLabel{width:140px}}
.fs-inspector-template { display:flex; align-items:center; gap:3px; min-width:0; }.fs-inspector-template[hidden]{display:none}.fs-inspector-template label { padding:0 3px; }.fs-inspector-template input { width:92px; height:25px; padding:2px 5px; border:1px solid #cbd5e1; border-radius:5px; font-size:.68rem; }.fs-inspector-template input[type=number] { width:54px; }
.fs-table-columns { display:flex; align-items:center; gap:4px; max-width:520px; overflow-x:auto; }.fs-table-column { display:flex; align-items:center; gap:3px; flex:none; padding:2px 3px; border:1px solid #dbe3ed; border-radius:5px; background:#fff; }.fs-table-column>input { width:82px; }.fs-table-column>select { width:72px; }.fs-table-column>label { padding:0 2px; }.fs-table-column>button { width:22px; padding:0; color:#dc2626; }.fs-table-columns>[data-add-table-column] { flex:none; height:27px; border:1px dashed #2563eb; color:#2563eb; }
.fs-fill-parts { display:flex; align-items:center; gap:4px; max-width:540px; overflow-x:auto; }.fs-fill-part { display:flex; align-items:center; gap:3px; flex:none; padding:2px 3px; border:1px solid #dbe3ed; border-radius:5px; background:#fff; }.fs-fill-part>span { padding:2px 4px; border-radius:4px; background:#eef4ff; color:#1d4ed8; font-size:.64rem; font-weight:800; }.fs-fill-part input { width:84px; }.fs-fill-part select { width:64px; }.fs-fill-part button { width:22px; padding:0; color:#dc2626; }.fs-fill-part-actions { display:flex; gap:3px; flex:none; }.fs-fill-part-actions button { height:27px; padding:0 6px; border:1px dashed #2563eb; color:#2563eb; }
.fs-cascade-settings { display:flex; align-items:center; gap:4px; }.fs-cascade-settings label { padding:0 3px; }.fs-cascade-settings input { height:25px; padding:2px 5px; border:1px solid #cbd5e1; border-radius:5px; font-size:.68rem; }.fs-cascade-settings label:first-child input { width:120px; }.fs-cascade-settings label:last-child input { width:310px; }
.fs-wysiwyg-workspace[data-device="mobile"] .fs-wysiwyg-canvas { width:390px; border-radius:20px; }.fs-wysiwyg-workspace[data-device="mobile"] .fs-wysiwyg-canvas iframe { min-height:844px; }
.fs-wysiwyg-insert-palette { position:sticky; top:103px; z-index:24; margin:6px 0 0; padding:10px; border:1px solid #93b4f7; border-radius:8px; background:#fff; box-shadow:0 12px 35px rgba(37,99,235,.16); }.fs-wysiwyg-insert-palette[hidden]{display:none}.fs-wysiwyg-insert-palette>div { display:flex; align-items:center; justify-content:space-between; margin-bottom:6px; }.fs-wysiwyg-insert-palette>div strong { color:#10233f; font-size:.78rem; }.fs-wysiwyg-insert-palette>div button { border:0; background:transparent; color:#64748b; }.fs-wysiwyg-insert-palette section { display:flex; align-items:center; flex-wrap:wrap; gap:4px; margin-top:5px; }.fs-wysiwyg-insert-palette section>span { margin-right:3px; color:#64748b; font-size:.67rem; font-weight:800; }.fs-wysiwyg-insert-palette section button { padding:4px 7px; border:1px solid #dbe3ed; border-radius:5px; background:#f8fafc; color:#334155; font-size:.68rem; }.fs-wysiwyg-insert-palette section button:hover { border-color:#2563eb; background:#eef4ff; color:#1d4ed8; }
.fs-wysiwyg-actions .is-ai { border-color:#b9ccfb; background:#eef4ff; color:#1d4ed8; }.fs-wysiwyg-actions .is-ai:hover { border-color:#2563eb; background:#dfeaff; color:#173fa4; }
.fs-ai-revise-modal { overflow:hidden; border:0; border-radius:14px; box-shadow:0 28px 90px rgba(15,35,65,.3); }.fs-ai-revise-modal .modal-header { padding:16px 20px; border-bottom:1px solid #dbe3ed; background:linear-gradient(105deg,#f8fbff 0%,#eef5ff 100%); }.fs-ai-revise-modal .modal-header>div { display:grid; gap:2px; }.fs-ai-revise-modal .fs-kicker { color:#2563eb; font-size:.67rem; font-weight:850; letter-spacing:.12em; }.fs-ai-revise-modal h2 { margin:0; color:#10233f; font-size:1.15rem; font-weight:800; }.fs-ai-revise-modal .modal-body { min-height:560px; padding:18px; background:#eef2f7; }
.fs-ai-revise-request { display:grid; gap:9px; max-width:760px; margin:48px auto 0; padding:22px; border:1px solid #d6dfec; border-radius:12px; background:#fff; box-shadow:0 16px 42px rgba(15,35,65,.09); }.fs-ai-revise-request>label { color:#10233f; font-weight:800; }.fs-ai-revise-request textarea { width:100%; min-height:150px; padding:13px 14px; resize:vertical; border:1px solid #bdcadd; border-radius:8px; outline:0; color:#17243b; line-height:1.7; }.fs-ai-revise-request textarea:focus { border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.12); }.fs-ai-revise-note { display:flex; align-items:flex-start; gap:8px; color:#64748b; font-size:.75rem; }.fs-ai-revise-note i { margin-top:2px; color:#047857; }
.fs-ai-revise-progress { align-items:center; justify-content:center; gap:18px; min-height:480px; color:#2563eb; }.fs-ai-revise-progress:not([hidden]) { display:flex; }.fs-ai-revise-progress .spinner-border { width:2.4rem; height:2.4rem; }.fs-ai-revise-progress strong { display:block; color:#10233f; font-size:1rem; }.fs-ai-revise-progress p { margin:4px 0 0; color:#64748b; font-size:.78rem; }
.fs-ai-revise-result { display:grid; grid-template-rows:auto minmax(480px,68vh); overflow:hidden; border:1px solid #d3deeb; border-radius:10px; background:#fff; box-shadow:0 10px 34px rgba(15,35,65,.08); }.fs-ai-revise-resultbar { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:48px; padding:7px 10px 7px 14px; border-bottom:1px solid #dbe3ed; }.fs-ai-revise-resultbar>div:first-child { display:flex; align-items:center; gap:8px; }.fs-ai-revise-resultbar strong { color:#047857; font-size:.78rem; }.fs-ai-revise-resultbar span { color:#64748b; font-size:.7rem; }.fs-ai-revise-tabs { display:flex; gap:2px; padding:3px; border-radius:7px; background:#eef2f7; }.fs-ai-revise-tabs button { padding:5px 9px; border:0; border-radius:5px; background:transparent; color:#64748b; font-size:.72rem; }.fs-ai-revise-tabs button.is-active { background:#fff; color:#1d4ed8; box-shadow:0 1px 4px rgba(15,35,65,.12); }.fs-ai-revise-result iframe,.fs-ai-revise-result textarea { width:100%; height:100%; min-height:480px; border:0; background:#fff; }.fs-ai-revise-result textarea { padding:16px; resize:none; outline:0; color:#26364d; font:12px/1.65 "Cascadia Code",monospace; }
@media(max-width:760px){.fs-ai-revise-modal .modal-body{min-height:480px;padding:8px}.fs-ai-revise-request{margin:12px auto 0;padding:15px}.fs-ai-revise-result{grid-template-rows:auto minmax(420px,65vh)}.fs-ai-revise-resultbar{align-items:flex-start;flex-direction:column}.fs-ai-revise-resultbar>div:first-child{align-items:flex-start;flex-direction:column}.fs-ai-revise-tabs{align-self:stretch}.fs-ai-revise-tabs button{flex:1}}
