:root { --bg-main: #020a1e; --bg-secondary: #041634; --panel: rgba(7, 26, 58, 0.72); --panel-strong: rgba(10, 34, 73, 0.85); --line: rgba(106, 183, 255, 0.24); --text: #e9f4ff; --muted: #9ebbd8; --accent: #23c3ff; --accent-strong: #005eff; --success: #26e2c2; --radius: 22px; --shadow: 0 24px 60px rgba(0, 0, 0, 0.45); } * { box-sizing: border-box; } html, body { margin: 0; min-height: 100%; } body { color: var(--text); font-family: "Manrope", "Segoe UI", sans-serif; background: radial-gradient(circle at 20% -10%, rgba(35, 195, 255, 0.25), transparent 38%), radial-gradient(circle at 95% 4%, rgba(0, 94, 255, 0.28), transparent 34%), linear-gradient(150deg, var(--bg-main) 0%, var(--bg-secondary) 100%); position: relative; overflow-x: hidden; } body::before, body::after { content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 0; } body::before { background: linear-gradient(120deg, transparent 0%, rgba(35, 195, 255, 0.08) 35%, transparent 70%), repeating-linear-gradient( 0deg, rgba(90, 152, 211, 0.05) 0, rgba(90, 152, 211, 0.05) 1px, transparent 1px, transparent 28px ); } body::after { background: radial-gradient(circle at 50% 100%, rgba(80, 172, 255, 0.18), transparent 45%); } .shell { width: min(1200px, calc(100% - 30px)); margin: 0 auto; padding: 28px 0 56px; position: relative; z-index: 1; } .hero { margin-bottom: 24px; } .brand-banner { position: relative; border-radius: 24px; overflow: hidden; border: 1px solid rgba(126, 202, 255, 0.32); box-shadow: var(--shadow); min-height: 240px; } .brand-art { width: 100%; display: block; min-height: 250px; object-fit: cover; object-position: center; filter: saturate(1.08) contrast(1.05); } .brand-overlay { position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(1, 10, 28, 0.06), rgba(1, 10, 28, 0.52)), radial-gradient(circle at 50% 34%, rgba(216, 243, 255, 0.14), transparent 42%); } .brand-dna { position: absolute; top: 18px; right: 18px; z-index: 2; font-family: "Orbitron", "Manrope", sans-serif; font-size: 0.75rem; letter-spacing: 0.14em; text-transform: uppercase; color: #cfefff; padding: 8px 12px; border-radius: 999px; border: 1px solid rgba(164, 221, 255, 0.4); background: rgba(5, 32, 66, 0.46); backdrop-filter: blur(5px); } .hero-copy { margin-top: 18px; max-width: 760px; } .eyebrow, .panel-kicker { margin: 0 0 10px; text-transform: uppercase; letter-spacing: 0.18em; color: #9fd8ff; font-size: 0.74rem; font-weight: 700; } .hero h1, .panel-head h2, .lower-panel h3 { margin: 0; font-family: "Orbitron", "Manrope", sans-serif; } .hero h1 { font-size: clamp(2rem, 5.2vw, 3.6rem); line-height: 1.07; letter-spacing: 0.02em; text-transform: uppercase; text-shadow: 0 0 20px rgba(35, 195, 255, 0.4); } .intro { margin: 14px 0 0; color: var(--muted); font-size: 1rem; line-height: 1.76; } code { padding: 0.14rem 0.42rem; border-radius: 7px; background: rgba(116, 180, 255, 0.16); border: 1px solid rgba(116, 180, 255, 0.2); } .workspace { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 20px; align-items: start; } .panel { border: 1px solid var(--line); border-radius: var(--radius); background: var(--panel); box-shadow: var(--shadow); padding: 22px; backdrop-filter: blur(9px); } .lower-panel { margin-top: 20px; background: var(--panel-strong); } .panel-head { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; margin-bottom: 16px; } .panel-head h2 { font-size: 1.2rem; letter-spacing: 0.02em; text-transform: uppercase; } .status-pill, .summary-badge { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border-radius: 999px; font-size: 0.84rem; font-weight: 700; } .status-pill { color: #002539; background: linear-gradient(120deg, var(--success), #8dfff1); } .summary-badge { color: #d0e9ff; background: rgba(35, 195, 255, 0.18); border: 1px solid rgba(142, 215, 255, 0.3); } .field { display: grid; gap: 9px; margin-bottom: 16px; } .field span { font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.1em; font-weight: 700; color: #a9d9ff; } .field-grid { display: grid; gap: 12px; } .field-grid-meta { grid-template-columns: 1.1fr 1fr 1fr; } .field-grid-voices { grid-template-columns: 0.84fr 1.16fr; } .field-grid-controls { grid-template-columns: repeat(3, minmax(0, 1fr)); } .checkbox-field { align-content: end; grid-auto-flow: column; justify-content: start; align-items: center; gap: 9px; } .checkbox-field input { width: 18px; height: 18px; margin: 0; accent-color: var(--accent); } .checkbox-field span { text-transform: none; letter-spacing: 0; font-size: 0.94rem; font-weight: 600; color: #d7edff; } textarea, select, input[type="text"] { width: 100%; border: 1px solid rgba(128, 195, 255, 0.36); border-radius: 14px; background: rgba(4, 20, 48, 0.74); color: var(--text); padding: 12px 13px; font: inherit; transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease; } textarea::placeholder, input[type="text"]::placeholder { color: #82a8cf; } textarea:focus, select:focus, input[type="text"]:focus { outline: none; border-color: rgba(93, 200, 255, 0.86); box-shadow: 0 0 0 3px rgba(35, 195, 255, 0.2); background: rgba(5, 27, 62, 0.92); } textarea { min-height: 112px; resize: vertical; line-height: 1.62; } button, .button-link { appearance: none; border: none; cursor: pointer; transition: transform 150ms ease, box-shadow 150ms ease, opacity 150ms ease; } button:hover, .button-link:hover { transform: translateY(-1px); } button:active, .button-link:active { transform: translateY(0); } .action-row { display: flex; flex-wrap: wrap; gap: 10px; } .action-row button, .button-link { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 20px; border-radius: 999px; font: inherit; font-weight: 800; text-decoration: none; color: #041227; background: linear-gradient(130deg, #97ecff, #1ac8ff 45%, #0f7eff); box-shadow: 0 12px 24px rgba(20, 152, 255, 0.35); } .action-row button.secondary { color: #cce7ff; background: rgba(58, 129, 194, 0.22); border: 1px solid rgba(137, 205, 255, 0.26); box-shadow: none; } .compact-actions { margin-bottom: 16px; } .microcopy, .message-box, .warnings-box, .guide-summary, .guide-copy, .guide-note { color: var(--muted); line-height: 1.7; } .microcopy { margin: 16px 0 0; } .message-box { min-height: 24px; margin: 0 0 14px; } .warnings-box .warning { padding: 10px 13px; border-radius: 14px; background: rgba(9, 31, 67, 0.84); border: 1px solid rgba(126, 200, 255, 0.3); } .warnings-box .warning + .warning { margin-top: 10px; } #player { width: 100%; margin-top: 6px; } .player-actions { margin-top: 14px; margin-bottom: 14px; } .lower-grid { display: grid; grid-template-columns: 0.95fr 1.05fr; gap: 20px; } .guide-card { padding: 16px; border-radius: 18px; background: rgba(10, 35, 75, 0.74); border: 1px solid rgba(128, 199, 255, 0.26); } .guide-card + .guide-card, .guide-card + h3 { margin-top: 14px; } .guide-label { margin: 12px 0 8px; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.1em; color: #95d6ff; font-weight: 700; } .guide-steps, .guide-response { margin: 8px 0 0; padding-left: 20px; } .guide-steps li, .guide-response li { line-height: 1.6; margin-bottom: 8px; } .provider-panel.hidden, .hidden { display: none; } @media (max-width: 980px) { .workspace, .lower-grid, .field-grid-meta, .field-grid-voices, .field-grid-controls { grid-template-columns: 1fr; } .shell { width: min(100% - 14px, 1200px); padding-top: 14px; } .brand-banner { min-height: 170px; } .brand-art { min-height: 170px; object-position: center; } .brand-dna { font-size: 0.68rem; letter-spacing: 0.1em; } .hero h1 { font-size: clamp(1.7rem, 8vw, 2.5rem); } }