Spaces:
No application file
No application file
| :root { | |
| --bg: #f2f4f7; | |
| --surface: #ffffff; | |
| --surface-soft: #f8fafc; | |
| --surface-strong: #eef4ff; | |
| --text: #1f2937; | |
| --muted: #667085; | |
| --border: #d0d5dd; | |
| --accent: #2563eb; | |
| --accent-strong: #1d4ed8; | |
| --success: #027a48; | |
| --success-soft: #ecfdf3; | |
| --danger: #b42318; | |
| --danger-soft: #fef3f2; | |
| --info: #175cd3; | |
| --info-soft: #eff8ff; | |
| --shadow: 0 1px 2px rgba(16, 24, 40, 0.06), 0 10px 20px rgba(16, 24, 40, 0.06); | |
| } | |
| * { | |
| box-sizing: border-box; | |
| } | |
| body { | |
| margin: 0; | |
| min-height: 100vh; | |
| background: var(--bg); | |
| color: var(--text); | |
| font-family: "Segoe UI", Tahoma, Arial, sans-serif; | |
| } | |
| .page-shell { | |
| width: min(1180px, calc(100% - 28px)); | |
| margin: 0 auto; | |
| padding: 24px 0 40px; | |
| } | |
| .hero, | |
| .panel { | |
| border: 1px solid var(--border); | |
| border-radius: 12px; | |
| background: var(--surface); | |
| box-shadow: var(--shadow); | |
| } | |
| .hero { | |
| margin-bottom: 18px; | |
| padding: 20px 22px; | |
| background: var(--surface); | |
| } | |
| .eyebrow, | |
| .section-label { | |
| margin: 0 0 8px; | |
| color: var(--accent); | |
| font-size: 0.78rem; | |
| font-weight: 700; | |
| letter-spacing: 0.08em; | |
| text-transform: uppercase; | |
| } | |
| .hero h1 { | |
| margin: 0; | |
| font-size: 1.9rem; | |
| font-weight: 700; | |
| } | |
| .hero-copy { | |
| margin: 10px 0 0; | |
| color: var(--muted); | |
| line-height: 1.6; | |
| max-width: 780px; | |
| } | |
| .panel { | |
| margin-top: 18px; | |
| padding: 20px; | |
| } | |
| .section-heading { | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: flex-start; | |
| gap: 16px; | |
| margin-bottom: 16px; | |
| } | |
| .section-heading h2, | |
| .download-panel h2 { | |
| margin: 0; | |
| font-size: 1.35rem; | |
| font-weight: 600; | |
| } | |
| .section-note { | |
| margin: 0; | |
| color: var(--muted); | |
| font-size: 0.92rem; | |
| line-height: 1.5; | |
| } | |
| .field-label { | |
| display: block; | |
| margin-bottom: 8px; | |
| font-size: 0.95rem; | |
| font-weight: 600; | |
| } | |
| textarea, | |
| select, | |
| .question-input { | |
| width: 100%; | |
| border: 1px solid var(--border); | |
| border-radius: 10px; | |
| background: #fff; | |
| color: var(--text); | |
| font: 0.96rem/1.5 "Segoe UI", Tahoma, Arial, sans-serif; | |
| } | |
| textarea { | |
| min-height: 190px; | |
| resize: vertical; | |
| padding: 14px 16px; | |
| } | |
| select, | |
| .question-input { | |
| padding: 11px 12px; | |
| } | |
| textarea:focus, | |
| select:focus, | |
| .question-input:focus, | |
| details summary:focus { | |
| outline: none; | |
| border-color: var(--accent); | |
| box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12); | |
| } | |
| .compose-grid, | |
| .stack-grid, | |
| .preview-grid, | |
| .agent-grid { | |
| display: grid; | |
| gap: 14px; | |
| } | |
| .compose-grid { | |
| grid-template-columns: minmax(0, 280px); | |
| } | |
| .stack-grid { | |
| grid-template-columns: repeat(3, minmax(0, 1fr)); | |
| } | |
| .preview-grid, | |
| .agent-grid { | |
| grid-template-columns: repeat(2, minmax(0, 1fr)); | |
| gap: 16px; | |
| } | |
| .select-field { | |
| display: grid; | |
| gap: 6px; | |
| } | |
| .select-field span { | |
| font-size: 0.9rem; | |
| font-weight: 600; | |
| } | |
| .action-row, | |
| .question-actions { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: 10px; | |
| } | |
| .action-row { | |
| margin-top: 16px; | |
| } | |
| button { | |
| border: 1px solid transparent; | |
| border-radius: 10px; | |
| padding: 10px 16px; | |
| font: 600 0.94rem/1 "Segoe UI", Tahoma, Arial, sans-serif; | |
| cursor: pointer; | |
| } | |
| button:disabled { | |
| cursor: not-allowed; | |
| opacity: 0.6; | |
| } | |
| .primary-button { | |
| background: var(--accent); | |
| color: #fff; | |
| } | |
| .primary-button:hover:not(:disabled) { | |
| background: var(--accent-strong); | |
| } | |
| .secondary-button { | |
| background: #344054; | |
| color: #fff; | |
| } | |
| .success-button { | |
| background: #039855; | |
| color: #fff; | |
| } | |
| .ghost-button { | |
| background: #fff; | |
| color: var(--text); | |
| border-color: var(--border); | |
| } | |
| .status-message { | |
| margin-top: 14px; | |
| padding: 12px 14px; | |
| border: 1px solid transparent; | |
| border-radius: 10px; | |
| font-size: 0.93rem; | |
| line-height: 1.5; | |
| } | |
| .status-message.loading, | |
| .status-message.info { | |
| background: var(--info-soft); | |
| border-color: #b2ddff; | |
| color: var(--info); | |
| } | |
| .status-message.success { | |
| background: var(--success-soft); | |
| border-color: #abefc6; | |
| color: var(--success); | |
| } | |
| .status-message.error { | |
| background: var(--danger-soft); | |
| border-color: #fecdca; | |
| color: var(--danger); | |
| } | |
| .agent-panel { | |
| background: var(--surface); | |
| } | |
| .agent-bubble { | |
| display: flex; | |
| gap: 14px; | |
| align-items: flex-start; | |
| padding: 16px; | |
| border: 1px solid #dbe7ff; | |
| border-radius: 14px; | |
| background: #f8fbff; | |
| margin-bottom: 16px; | |
| } | |
| .agent-avatar { | |
| width: 42px; | |
| height: 42px; | |
| border-radius: 999px; | |
| background: var(--accent); | |
| color: #fff; | |
| display: grid; | |
| place-items: center; | |
| font-weight: 700; | |
| flex: 0 0 auto; | |
| } | |
| .agent-copy { | |
| min-width: 0; | |
| } | |
| .agent-name { | |
| margin: 0 0 6px; | |
| font-weight: 700; | |
| } | |
| .agent-inline-heading { | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: flex-start; | |
| gap: 16px; | |
| margin-bottom: 14px; | |
| } | |
| .question-cards { | |
| display: grid; | |
| gap: 12px; | |
| } | |
| .question-card { | |
| padding: 14px 16px; | |
| border: 1px solid #dbe7ff; | |
| border-radius: 12px; | |
| background: #fff; | |
| } | |
| .question-card h4 { | |
| margin: 0 0 8px; | |
| font-size: 1rem; | |
| } | |
| .question-position { | |
| margin: 0 0 10px; | |
| color: var(--accent); | |
| font-size: 0.84rem; | |
| font-weight: 700; | |
| text-transform: uppercase; | |
| letter-spacing: 0.04em; | |
| } | |
| .question-reason { | |
| margin: 0 0 12px; | |
| color: var(--muted); | |
| line-height: 1.55; | |
| } | |
| .question-hint { | |
| margin: 10px 0 0; | |
| color: var(--muted); | |
| font-size: 0.88rem; | |
| line-height: 1.5; | |
| } | |
| .question-control { | |
| display: grid; | |
| gap: 8px; | |
| } | |
| .suggestion-block { | |
| margin-top: 14px; | |
| padding: 14px; | |
| border: 1px solid #bfd4fe; | |
| border-radius: 12px; | |
| background: #eff8ff; | |
| } | |
| .suggestion-title { | |
| margin: 0 0 8px; | |
| color: var(--accent); | |
| font-weight: 700; | |
| } | |
| .suggestion-reason { | |
| margin: 0 0 12px; | |
| color: var(--text); | |
| line-height: 1.55; | |
| } | |
| .final-requirements-block { | |
| margin: 0 0 14px; | |
| white-space: pre-wrap; | |
| padding: 14px; | |
| border: 1px solid #d0d5dd; | |
| border-radius: 10px; | |
| background: #101828; | |
| color: #f8fafc; | |
| font: 0.92rem/1.6 Consolas, "Courier New", monospace; | |
| } | |
| .advanced-stack { | |
| margin-top: 18px; | |
| border: 1px solid var(--border); | |
| border-radius: 12px; | |
| background: #fff; | |
| } | |
| .advanced-stack summary { | |
| padding: 14px 16px; | |
| cursor: pointer; | |
| font-weight: 600; | |
| } | |
| .advanced-stack .section-note, | |
| .advanced-stack .stack-grid { | |
| margin: 0 16px 16px; | |
| } | |
| .stack-chip-row { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: 8px; | |
| margin-bottom: 16px; | |
| } | |
| .stack-chip { | |
| display: inline-flex; | |
| gap: 6px; | |
| align-items: center; | |
| padding: 6px 10px; | |
| border: 1px solid #bfd4fe; | |
| border-radius: 999px; | |
| background: #eff8ff; | |
| color: var(--info); | |
| font-size: 0.85rem; | |
| } | |
| .card { | |
| padding: 16px; | |
| border: 1px solid var(--border); | |
| border-radius: 12px; | |
| background: var(--surface-soft); | |
| } | |
| .card.wide { | |
| grid-column: 1 / -1; | |
| } | |
| .card h3 { | |
| margin: 0 0 10px; | |
| font-size: 1rem; | |
| font-weight: 600; | |
| } | |
| .list-block, | |
| .modules-list, | |
| .files-list { | |
| margin: 0; | |
| padding: 0; | |
| } | |
| .list-block { | |
| list-style: none; | |
| display: grid; | |
| gap: 8px; | |
| } | |
| .list-block li { | |
| padding: 10px 12px; | |
| border: 1px solid #eaecf0; | |
| border-radius: 8px; | |
| background: #fff; | |
| line-height: 1.5; | |
| } | |
| .command-list li { | |
| font-family: Consolas, "Courier New", monospace; | |
| } | |
| .text-block { | |
| margin: 0; | |
| line-height: 1.65; | |
| } | |
| .required-inputs-copy { | |
| margin: 0 0 12px; | |
| color: var(--muted); | |
| line-height: 1.6; | |
| } | |
| .required-inputs-table-wrap { | |
| overflow-x: auto; | |
| border: 1px solid #eaecf0; | |
| border-radius: 10px; | |
| background: #fff; | |
| } | |
| .required-inputs-table { | |
| width: 100%; | |
| border-collapse: collapse; | |
| min-width: 720px; | |
| } | |
| .required-inputs-table th, | |
| .required-inputs-table td { | |
| padding: 10px 12px; | |
| border-bottom: 1px solid #eaecf0; | |
| text-align: left; | |
| vertical-align: top; | |
| line-height: 1.5; | |
| } | |
| .required-inputs-table th { | |
| background: #f9fafb; | |
| font-size: 0.84rem; | |
| font-weight: 700; | |
| color: var(--muted); | |
| text-transform: uppercase; | |
| letter-spacing: 0.03em; | |
| } | |
| .required-inputs-table tr:last-child td { | |
| border-bottom: 0; | |
| } | |
| .required-inputs-table code { | |
| font-family: Consolas, "Courier New", monospace; | |
| } | |
| .module-card { | |
| padding: 12px 14px; | |
| border: 1px solid #eaecf0; | |
| border-radius: 10px; | |
| background: #fff; | |
| } | |
| .module-card + .module-card, | |
| .file-entry + .file-entry { | |
| margin-top: 10px; | |
| } | |
| .module-card h4 { | |
| margin: 0; | |
| font-size: 0.98rem; | |
| } | |
| .module-card p { | |
| margin: 8px 0 10px; | |
| color: var(--muted); | |
| line-height: 1.6; | |
| } | |
| .key-files { | |
| margin: 0; | |
| color: var(--muted); | |
| font-size: 0.88rem; | |
| } | |
| .code-block { | |
| margin: 0; | |
| overflow-x: auto; | |
| padding: 14px; | |
| border: 1px solid #d0d5dd; | |
| border-radius: 10px; | |
| background: #101828; | |
| color: #f8fafc; | |
| font: 0.92rem/1.6 Consolas, "Courier New", monospace; | |
| } | |
| .file-entry { | |
| border: 1px solid #d0d5dd; | |
| border-radius: 10px; | |
| overflow: hidden; | |
| background: #fff; | |
| } | |
| .file-entry summary { | |
| padding: 12px 14px; | |
| cursor: pointer; | |
| list-style: none; | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: center; | |
| gap: 10px; | |
| background: #f9fafb; | |
| } | |
| .file-entry summary::-webkit-details-marker { | |
| display: none; | |
| } | |
| .file-entry-header { | |
| display: flex; | |
| align-items: center; | |
| gap: 8px; | |
| min-width: 0; | |
| } | |
| .file-entry-dots { | |
| display: inline-flex; | |
| gap: 4px; | |
| } | |
| .file-entry-dots span { | |
| width: 7px; | |
| height: 7px; | |
| border-radius: 999px; | |
| background: #98a2b3; | |
| } | |
| .file-entry-path { | |
| font: 0.9rem/1.4 Consolas, "Courier New", monospace; | |
| word-break: break-all; | |
| } | |
| .file-entry-tag { | |
| color: var(--muted); | |
| font-size: 0.76rem; | |
| font-weight: 700; | |
| text-transform: uppercase; | |
| } | |
| .download-copy { | |
| margin: 0; | |
| line-height: 1.6; | |
| } | |
| .download-link { | |
| display: inline-block; | |
| margin-top: 12px; | |
| padding: 10px 16px; | |
| border-radius: 10px; | |
| background: var(--accent); | |
| color: #fff; | |
| text-decoration: none; | |
| font-weight: 600; | |
| } | |
| @media (max-width: 960px) { | |
| .section-heading, | |
| .agent-inline-heading { | |
| flex-direction: column; | |
| } | |
| .stack-grid, | |
| .preview-grid, | |
| .agent-grid { | |
| grid-template-columns: 1fr; | |
| } | |
| .card, | |
| .card.wide { | |
| grid-column: 1 / -1; | |
| } | |
| } | |
| @media (max-width: 640px) { | |
| .page-shell { | |
| width: min(100% - 16px, 1180px); | |
| padding: 16px 0 28px; | |
| } | |
| .panel, | |
| .hero { | |
| padding: 16px; | |
| } | |
| .action-row, | |
| .question-actions { | |
| flex-direction: column; | |
| } | |
| button, | |
| .download-link { | |
| width: 100%; | |
| } | |
| .compose-grid { | |
| grid-template-columns: 1fr; | |
| } | |
| } | |