:root { color-scheme: light; --bg: #f4f5f7; --panel: #ffffff; --text: #1d2530; --muted: #526274; --border: #d6dde5; --accent: #0d6efd; --accent-hover: #0b5ed7; --danger: #c62828; } * { box-sizing: border-box; } body { margin: 0; font-family: "Segoe UI", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", sans-serif; background: linear-gradient(160deg, #f8fafc, #eef2f7 60%, #f8fafc); color: var(--text); } .layout { max-width: 1000px; margin: 0 auto; padding: 24px 16px 40px; display: grid; gap: 16px; } .header h1 { margin: 0; } .header p { margin: 6px 0 0; color: var(--muted); } .header-actions { margin-top: 10px; } .help-link { display: inline-block; text-decoration: none; border: 1px solid var(--border); border-radius: 8px; padding: 8px 12px; color: var(--text); background: #fff; } .help-link:hover { background: #f7f9fc; } .panel { background: var(--panel); border: 1px solid var(--border); border-radius: 12px; padding: 16px; box-shadow: 0 3px 12px rgba(0, 0, 0, 0.04); } .panel h2 { margin-top: 0; } .meta { margin: 0 0 10px; color: var(--muted); font-size: 0.92rem; } .config-toolbar { display: flex; gap: 8px; margin-bottom: 10px; flex-wrap: wrap; } .config-toolbar select { min-width: 280px; flex: 1; border: 1px solid var(--border); border-radius: 8px; padding: 8px 10px; background: #fff; } textarea, pre { width: 100%; border: 1px solid var(--border); border-radius: 8px; padding: 10px; font: 14px/1.5 Consolas, "Courier New", monospace; background: #fbfcfe; } pre { min-height: 280px; max-height: 480px; overflow: auto; margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; } .actions { margin-top: 10px; display: flex; gap: 8px; } .auth-form { display: flex; gap: 8px; align-items: center; } .auth-form input { flex: 1; border: 1px solid var(--border); border-radius: 8px; padding: 8px 10px; } .app-hidden { display: none; } button { border: 1px solid var(--border); border-radius: 8px; padding: 8px 14px; background: #fff; cursor: pointer; } button:hover { background: #f7f9fc; } button.primary { border-color: var(--accent); background: var(--accent); color: #fff; } button.primary:hover { background: var(--accent-hover); } .status { margin: 0; min-height: 1.2em; color: var(--muted); } .status.error { color: var(--danger); }