Spaces:
Running on Zero
Running on Zero
| /* ========== CSS VARIABLES ========== */ | |
| :root { | |
| --background: 240 10% 3.9%; | |
| --foreground: 0 0% 98%; | |
| --card: 240 10% 4.5%; | |
| --card-border: 240 3.7% 18%; | |
| --primary: 0 0% 98%; | |
| --primary-foreground: 240 5.9% 10%; | |
| --secondary: 240 3.7% 15.9%; | |
| --secondary-foreground: 0 0% 98%; | |
| --muted: 240 3.7% 15.9%; | |
| --muted-foreground: 240 5% 64.9%; | |
| --accent: 240 3.7% 15.9%; | |
| --accent-foreground: 0 0% 98%; | |
| --border: 240 3.7% 18%; | |
| --input: 240 3.7% 18%; | |
| --ring: 240 5.9% 85%; | |
| --radius: 0.625rem; | |
| } | |
| /* ========== GLOBAL STYLES ========== */ | |
| .gradio-container { | |
| font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; | |
| background: hsl(var(--background)) ; | |
| color: hsl(var(--foreground)); | |
| } | |
| .gradio-container mark { | |
| background: hsl(var(--accent) / 0.6); | |
| color: hsl(var(--accent-foreground)); | |
| padding: 0.15em 0.35em; | |
| border-radius: calc(var(--radius) - 2px); | |
| font-weight: 500; | |
| border: 1px solid hsl(var(--border) / 0.5); | |
| } | |
| footer { display: none ; } | |
| /* ========== MARKDOWN ========== */ | |
| .gradio-markdown { | |
| color: hsl(var(--foreground)) ; | |
| font-size: 0.9375rem ; | |
| line-height: 1.6 ; | |
| } | |
| .gradio-markdown:first-child { | |
| margin-bottom: 2rem; | |
| padding-bottom: 1.5rem; | |
| border-bottom: 1px solid hsl(var(--border)); | |
| } | |
| .gradio-markdown:last-child { | |
| padding-top: 1.5rem; | |
| border-top: 1px solid hsl(var(--border)); | |
| color: hsl(var(--muted-foreground)) ; | |
| } | |
| .gradio-markdown a { | |
| color: hsl(var(--foreground)) ; | |
| text-decoration: none; | |
| border-bottom: 1px solid hsl(var(--border)); | |
| transition: border-color 0.2s ease; | |
| } | |
| .gradio-markdown a:hover { | |
| border-color: hsl(var(--ring)); | |
| } | |
| /* ========== LAYOUT ========== */ | |
| .main-grid { | |
| display: grid; | |
| grid-template-columns: 1fr 1fr; | |
| gap: 2rem; | |
| } | |
| @media (max-width: 768px) { | |
| .main-grid { grid-template-columns: 1fr; } | |
| } | |
| /* ========== CARDS ========== */ | |
| .card { | |
| background: hsl(var(--card)); | |
| border: 1px solid hsl(var(--card-border)); | |
| border-radius: var(--radius); | |
| padding: 1.5rem; | |
| box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.02) inset; | |
| } | |
| /* ========== FORM ELEMENTS ========== */ | |
| .form-label { | |
| font-size: 0.875rem; | |
| font-weight: 500; | |
| margin-bottom: 0.5rem; | |
| display: block; | |
| color: hsl(var(--foreground)); | |
| } | |
| .input-textarea { | |
| width: 100%; | |
| min-height: 140px; | |
| padding: 0.875rem; | |
| font-size: 0.9375rem; | |
| line-height: 1.6; | |
| background: hsl(var(--background)); | |
| border: 1px solid hsl(var(--input)); | |
| border-radius: var(--radius); | |
| color: hsl(var(--foreground)); | |
| transition: all 0.2s ease; | |
| resize: vertical; | |
| box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2); | |
| } | |
| .input-textarea::placeholder { | |
| color: hsl(var(--muted-foreground) / 0.7); | |
| } | |
| .input-textarea:focus { | |
| outline: none; | |
| border-color: hsl(var(--ring)); | |
| box-shadow: 0 0 0 3px hsl(var(--ring) / 0.1), 0 1px 2px rgba(0, 0, 0, 0.2); | |
| background: hsl(var(--background) / 0.8); | |
| } | |
| /* ========== BUTTONS ========== */ | |
| .btn { | |
| display: inline-flex; | |
| align-items: center; | |
| justify-content: center; | |
| gap: 0.5rem; | |
| font-size: 0.9375rem; | |
| font-weight: 500; | |
| padding: 0.625rem 1.25rem; | |
| border-radius: var(--radius); | |
| cursor: pointer; | |
| transition: all 0.2s ease; | |
| border: none; | |
| } | |
| .btn:focus-visible { | |
| outline: none; | |
| box-shadow: 0 0 0 2px hsl(var(--background)), 0 0 0 4px hsl(var(--ring)); | |
| } | |
| .btn-primary { | |
| background: hsl(var(--primary)); | |
| color: hsl(var(--primary-foreground)); | |
| box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(255, 255, 255, 0.05) inset; | |
| } | |
| .btn-primary:hover { | |
| opacity: 0.95; | |
| box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(255, 255, 255, 0.08) inset; | |
| } | |
| .btn-primary:active { | |
| transform: translateY(1px); | |
| } | |
| .btn-primary:disabled { | |
| opacity: 0.5; | |
| cursor: not-allowed; | |
| } | |
| .btn-secondary { | |
| background: hsl(var(--secondary)); | |
| color: hsl(var(--secondary-foreground)); | |
| border: 1px solid hsl(var(--border)); | |
| box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2); | |
| } | |
| .btn-secondary:hover { | |
| background: hsl(var(--secondary) / 0.8); | |
| border-color: hsl(var(--muted-foreground) / 0.5); | |
| } | |
| .btn-secondary:active { | |
| transform: translateY(1px); | |
| } | |
| /* ========== OUTPUT CONTAINER ========== */ | |
| .output-container { | |
| min-height: 140px; | |
| padding: 0.875rem; | |
| border: 1px solid hsl(var(--input)); | |
| border-radius: var(--radius); | |
| background: hsl(var(--background)); | |
| box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(255, 255, 255, 0.02) inset; | |
| } | |
| .output-text { | |
| color: hsl(var(--foreground)); | |
| font-size: 0.9375rem; | |
| line-height: 1.75; | |
| margin: 0; | |
| } | |
| .placeholder-text { | |
| color: hsl(var(--muted-foreground)); | |
| } | |
| .highlight-keyword { | |
| background: hsl(var(--accent) / 0.6); | |
| color: hsl(var(--accent-foreground)); | |
| padding: 0.15em 0.35em; | |
| border-radius: calc(var(--radius) - 2px); | |
| font-weight: 500; | |
| border: 1px solid hsl(var(--border) / 0.5); | |
| } | |
| /* ========== EXAMPLES ========== */ | |
| .examples-section { | |
| padding: 1.5rem; | |
| background: hsl(var(--card)); | |
| border: 1px solid hsl(var(--card-border)); | |
| border-radius: var(--radius); | |
| box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(255, 255, 255, 0.02) inset; | |
| } | |
| /* ========== SPACING UTILITIES ========== */ | |
| .mt-6 { margin-top: 1.5rem; } | |
| .flex { display: flex; } | |
| .gap-2 { gap: 0.5rem; } | |