Spaces:
Build error
Build error
| :root { | |
| --bg: #060b1a; | |
| --bg-2: #071023; | |
| --panel: rgba(11, 18, 36, 0.8); | |
| --border: rgba(255, 255, 255, 0.08); | |
| --text: #eaf2ff; | |
| --muted: #9fb6d7; | |
| --ok: #4ce0b3; | |
| --warn: #ffb547; | |
| --error: #ff5c70; | |
| --accent: #45c4ff; | |
| --accent-2: #5ef0c1; | |
| --shadow: 0 20px 70px rgba(0, 0, 0, 0.45); | |
| } | |
| * { box-sizing: border-box; } | |
| body { | |
| margin: 0; | |
| min-height: 100vh; | |
| font-family: "Space Grotesk", "Inter", "Segoe UI", sans-serif; | |
| background: radial-gradient(circle at 20% 20%, rgba(69, 196, 255, 0.16), transparent 35%), | |
| radial-gradient(circle at 80% 0%, rgba(94, 240, 193, 0.16), transparent 32%), | |
| linear-gradient(135deg, var(--bg), var(--bg-2)); | |
| color: var(--text); | |
| } | |
| .ambient { | |
| position: fixed; | |
| inset: 0; | |
| background: radial-gradient(circle at 30% 60%, rgba(255, 255, 255, 0.05), transparent 35%), | |
| radial-gradient(circle at 75% 30%, rgba(69, 196, 255, 0.08), transparent 32%); | |
| filter: blur(60px); | |
| z-index: 0; | |
| pointer-events: none; | |
| } | |
| /* Loading overlay */ | |
| .loading { | |
| position: fixed; | |
| inset: 0; | |
| background: rgba(5, 10, 24, 0.92); | |
| backdrop-filter: blur(4px); | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| justify-content: center; | |
| z-index: 9999; | |
| } | |
| .loading .spinner { | |
| width: 46px; | |
| height: 46px; | |
| border: 4px solid rgba(255,255,255,0.15); | |
| border-top-color: var(--accent); | |
| border-radius: 50%; | |
| animation: spin 1s linear infinite; | |
| margin-bottom: 12px; | |
| } | |
| .loading p { color: var(--muted); margin: 0; letter-spacing: 0.4px; } | |
| @keyframes spin { to { transform: rotate(360deg); } } | |
| .container { | |
| position: relative; | |
| max-width: 960px; | |
| margin: 7vh auto; | |
| padding: 0 24px 40px; | |
| z-index: 1; | |
| } | |
| .hero { | |
| margin-bottom: 24px; | |
| } | |
| .hero h1 { | |
| margin: 6px 0 6px; | |
| font-size: 32px; | |
| letter-spacing: -0.4px; | |
| } | |
| .subtitle { | |
| margin: 0; | |
| color: var(--muted); | |
| line-height: 1.5; | |
| } | |
| .pill { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 6px; | |
| padding: 6px 12px; | |
| border-radius: 999px; | |
| background: rgba(94, 240, 193, 0.1); | |
| color: var(--accent-2); | |
| font-size: 12px; | |
| letter-spacing: 0.3px; | |
| border: 1px solid rgba(94, 240, 193, 0.25); | |
| } | |
| .panel { | |
| background: var(--panel); | |
| border: 1px solid var(--border); | |
| border-radius: 14px; | |
| padding: 18px 18px 16px; | |
| box-shadow: var(--shadow); | |
| backdrop-filter: blur(10px); | |
| margin-top: 16px; | |
| } | |
| .panel-heading { | |
| display: flex; | |
| align-items: center; | |
| justify-content: space-between; | |
| gap: 12px; | |
| margin-bottom: 8px; | |
| } | |
| .panel-heading h2 { | |
| margin: 2px 0; | |
| font-size: 22px; | |
| } | |
| .eyebrow { | |
| margin: 0; | |
| text-transform: uppercase; | |
| font-size: 11px; | |
| letter-spacing: 0.5px; | |
| color: var(--muted); | |
| } | |
| .muted { color: var(--muted); } | |
| .chip { | |
| display: inline-flex; | |
| align-items: center; | |
| padding: 6px 10px; | |
| border-radius: 999px; | |
| font-size: 12px; | |
| color: var(--text); | |
| background: rgba(255, 255, 255, 0.08); | |
| border: 1px solid var(--border); | |
| } | |
| .chip-ok { | |
| background: rgba(76, 224, 179, 0.15); | |
| color: var(--ok); | |
| border-color: rgba(76, 224, 179, 0.4); | |
| } | |
| .hidden { display: none; } | |
| label { | |
| display: block; | |
| margin: 8px 0 6px; | |
| font-size: 13px; | |
| color: var(--muted); | |
| letter-spacing: 0.2px; | |
| } | |
| input[type="password"], | |
| input[type="text"], | |
| select, | |
| textarea { | |
| width: 100%; | |
| padding: 12px 14px; | |
| border: 1px solid var(--border); | |
| border-radius: 10px; | |
| background: rgba(255, 255, 255, 0.04); | |
| color: var(--text); | |
| transition: border 0.15s ease, box-shadow 0.15s ease; | |
| } | |
| input:focus, | |
| select:focus, | |
| textarea:focus { | |
| border-color: rgba(94, 240, 193, 0.7); | |
| outline: none; | |
| box-shadow: 0 0 0 3px rgba(94, 240, 193, 0.15); | |
| } | |
| input.error { | |
| border-color: var(--error); | |
| box-shadow: 0 0 0 3px rgba(255, 92, 112, 0.15); | |
| } | |
| select option { | |
| background: #0b152a; | |
| color: var(--text); | |
| } | |
| textarea { resize: vertical; } | |
| button { | |
| display: inline-flex; | |
| align-items: center; | |
| justify-content: center; | |
| margin-top: 12px; | |
| padding: 11px 16px; | |
| border: none; | |
| border-radius: 10px; | |
| background: linear-gradient(120deg, var(--accent), var(--accent-2)); | |
| color: #031022; | |
| cursor: pointer; | |
| font-weight: 600; | |
| letter-spacing: 0.2px; | |
| box-shadow: 0 14px 40px rgba(69, 196, 255, 0.25); | |
| transition: transform 0.12s ease, filter 0.12s ease, box-shadow 0.12s ease; | |
| } | |
| button:hover { filter: brightness(1.06); transform: translateY(-1px); } | |
| button:active { transform: translateY(0); } | |
| button.ghost { | |
| background: rgba(255, 255, 255, 0.05); | |
| color: var(--text); | |
| box-shadow: none; | |
| border: 1px solid var(--border); | |
| } | |
| button.ghost:hover { border-color: rgba(94, 240, 193, 0.4); } | |
| .actions { | |
| display: flex; | |
| align-items: center; | |
| gap: 12px; | |
| flex-wrap: wrap; | |
| } | |
| .status { | |
| margin: 0; | |
| color: var(--muted); | |
| font-size: 13px; | |
| } | |
| .status.ok { color: var(--ok); } | |
| .status.warn { color: var(--warn); } | |
| .status.error { color: var(--error); } | |
| /* Personality layout */ | |
| .row { | |
| display: grid; | |
| grid-template-columns: 160px 1fr; | |
| gap: 12px 18px; | |
| align-items: center; | |
| margin-top: 12px; | |
| } | |
| .row > label { margin: 0; } | |
| .row > button { margin: 0; } | |
| /* First row: controls inline */ | |
| #personality-panel .row-top { | |
| grid-template-columns: 160px 1fr auto auto auto; | |
| } | |
| #tools-available { | |
| max-height: 240px; | |
| overflow: auto; | |
| padding: 10px; | |
| border: 1px solid var(--border); | |
| border-radius: 10px; | |
| background: rgba(255, 255, 255, 0.03); | |
| } | |
| /* Checkbox grid for tools */ | |
| .checkbox-grid { | |
| display: grid; | |
| grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); | |
| gap: 10px 14px; | |
| } | |
| .startup-row { | |
| display: flex; | |
| align-items: center; | |
| gap: 10px; | |
| flex-wrap: wrap; | |
| } | |
| .row-save .actions { | |
| justify-content: flex-start; | |
| } | |
| .input-field { | |
| width: 100%; | |
| padding: 12px 14px; | |
| border: 1px solid var(--border); | |
| border-radius: 10px; | |
| background: rgba(255, 255, 255, 0.05); | |
| color: var(--text); | |
| transition: border 0.15s ease, box-shadow 0.15s ease; | |
| } | |
| .input-field:focus { | |
| border-color: rgba(94, 240, 193, 0.7); | |
| outline: none; | |
| box-shadow: 0 0 0 3px rgba(94, 240, 193, 0.15); | |
| } | |
| .section { | |
| border: 1px solid var(--border); | |
| border-radius: 12px; | |
| padding: 12px 14px; | |
| margin-top: 14px; | |
| background: rgba(255, 255, 255, 0.02); | |
| } | |
| .section-heading { | |
| display: flex; | |
| align-items: baseline; | |
| gap: 10px; | |
| justify-content: space-between; | |
| } | |
| .section-heading h3 { | |
| margin: 6px 0; | |
| font-size: 16px; | |
| letter-spacing: -0.1px; | |
| } | |
| .section-heading .small { | |
| margin: 0; | |
| font-size: 12px; | |
| } | |
| .checkbox-grid .chk { | |
| display: flex; | |
| align-items: center; | |
| gap: 8px; | |
| padding: 8px 10px; | |
| border-radius: 10px; | |
| background: rgba(255, 255, 255, 0.02); | |
| border: 1px solid transparent; | |
| transition: border 0.12s ease, background 0.12s ease; | |
| } | |
| .checkbox-grid .chk:hover { border-color: rgba(94, 240, 193, 0.3); background: rgba(255, 255, 255, 0.04); } | |
| .checkbox-grid input[type="checkbox"] { | |
| width: 16px; height: 16px; | |
| accent-color: var(--accent); | |
| } | |
| .checkbox-grid label { | |
| margin: 0; font-size: 13px; color: var(--text); | |
| } | |
| @media (max-width: 760px) { | |
| .hero h1 { font-size: 26px; } | |
| .row { grid-template-columns: 1fr; } | |
| #personality-panel .row:first-of-type { grid-template-columns: 1fr; } | |
| button { width: 100%; justify-content: center; } | |
| .actions { flex-direction: column; align-items: flex-start; } | |
| } | |