@font-face { font-family: "Geist Mono"; src: url("file=_res/assets/webfonts/GeistMono-Thin.woff2") format("woff2"); font-weight: 100; font-style: normal; } @font-face { font-family: "Geist Mono"; src: url("file=_res/assets/webfonts/GeistMono-Light.woff2") format("woff2"); font-weight: 300; font-style: normal; } @font-face { font-family: "Geist Mono"; src: url("file=_res/assets/webfonts/GeistMono-Regular.woff2") format("woff2"); font-weight: 400; font-style: normal; } @font-face { font-family: "Geist Mono"; src: url("file=_res/assets/webfonts/GeistMono-SemiBold.woff2") format("woff2"); font-weight: 600; font-style: normal; } @font-face { font-family: "Geist Mono"; src: url("file=_res/assets/webfonts/GeistMono-Bold.woff2") format("woff2"); font-weight: 700; font-style: normal; } /* width */ ::-webkit-scrollbar { width: 0px; } body::-webkit-scrollbar { width: 8px; } /* Track */ ::-webkit-scrollbar-track { background: var(--neutral-900); } /* Handle */ ::-webkit-scrollbar-thumb { background: var(--primary-600); border-radius: 3px; } /* Handle on hover */ ::-webkit-scrollbar-thumb:hover { background: var(--primary-800); } body { /* min-height: 101vh; */ gradio-app { /* background: var(--primary-950); background-image: linear-gradient(180deg, color-mix(in srgb, var(--primary-950), transparent 50%) 0%, color-mix(in srgb, var(--primary-950), transparent 50%) 28%, var(--neutral-950) 28%, var(--neutral-950) 100%) !important; */ padding-top: 120px; /* min-width: 900px; */ transition: opacity 0.4s linear; position: relative; & #alertModal { position: absolute; top: 250px; left: 50%; width: 400px; max-width: 80vw !important; min-height: 140px; transform: translate(-50%, -50%); padding: var(--size-4) var(--size-8); background-color: var(--neutral-900) !important; border-top-width: 8px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: var(--primary-600); border-right-color: var(--primary-600); border-bottom-color: var(--primary-600); border-left-color: var(--primary-600); border-radius: var(--container-radius); & #alertModalP { display: flex; justify-content: center; & span { color: var(--neutral-50); margin-top: 0rem; line-height: 1.4; } & svg { font-size: 4rem; margin-right: 1rem; color: var(--cat-red); fill: var(--cat-red); } } & button { color: var(--text-color-by-luminance) !important; } } .md-header { padding: var(--size-2) var(--size-1); & h1 { color: var(--primary-950) !important; text-shadow: var(--primary-600) 1px 1px 0px, var(--primary-600) 1px -1px 0px, var(--primary-600) -1px 1px 0px, var(--primary-600) -1px -1px 0px, var(--primary-600) 1px 0px 0px, var(--primary-600) 0px 1px 0px, var(--primary-600) -1px 0px 0px, var(--primary-600) 0px -1px 0px; } & p, span { color: var(--neutral-800) !important; line-height: 1.5 !important; font-size: 1.1rem !important; text-shadow: var(--primary-600) 1px 1px 0px, var(--primary-600) 1px -1px 0px, var(--primary-600) -1px 1px 0px, var(--primary-600) -1px -1px 0px, var(--primary-600) 1px 0px 0px, var(--primary-600) 0px 1px 0px, var(--primary-600) -1px 0px 0px, var(--primary-600) 0px -1px 0px; & i { display: inline-flex; align-items: center; justify-content: center; & svg { font-size: inherit !important; width: 16px !important; height: 16px !important; } } } } } } body>gradio-app::before { position: absolute; content: ""; background: var(--primary-800); width: 100%; height: 355px; top: 0; z-index: 0; transition: filter 0.4s ease-out; filter: blur(var(--blur-value)); } body>gradio-app.has-bg-image::before { /* --bg-image-path: none; */ /* --bg-image-path: url("https://image.pollinations.ai/prompt/A%20midnight%20blue%20stallion%20gallops%20across%20a%20misty%2C%20moonlit%20meadow%2C%20its%20mane%20and%20tail%20flowing%20in%20the%20wind%20like%20a%20celestial%20river%2C%20as%20stars%20twinkle%20in%20the%20sky%20above%20-%20Expressionist%20Watercolor%20Painting?model=flux&width=1024&height=683&nologo=true&enhance=false&nofeed=true&seed=42"); */ background-image: var(--bg-image-path); background-size: cover; background-position: center; background-repeat: no-repeat; filter: blur(12px); } div.gradio-container { font-family: "Geist Mono", sans-serif !important; font-weight: 400; } @media screen and (min-width: 980px) { div.gradio-container { max-width: 80% !important; } } div.tabs>div.tab-nav>button.selected { border-width: 0 !important; background: var(--primary-600) !important; font-weight: 600; } div.tabs>div.tab-nav { border-bottom: none !important; padding: 0 0.25rem 0 0.25rem !important; } div.tabs div.tabitem { background-color: var(--neutral-900) !important; border-width: 0 !important; border-top: 8px solid var(--primary-600) !important; border-radius: var(--container-radius) !important; } .top-description h1 { color: var(--neutral-400); font-size: 2rem; } .prompt-input textarea { resize: none; } .ratio_buttons_wrapper { display: flex !important; flex-grow: 0 !important; min-width: min(48px, 30%) !important; flex: 1 1 0%; flex-wrap: nowrap; } .image_size_selctor_wrapper { flex-grow: 2 !important; min-width: min(120px, 10%) !important; } .info-text-wrapper { padding: calc(var(--spacing-xl) / 2) calc(var(--spacing-xl) + 2px); } span.info-text { margin-bottom: var(--spacing-lg); color: var(--block-info-text-color); font-weight: var(--block-info-text-weight); font-size: var(--block-info-text-size); line-height: var(--line-sm); } .image-input-read-exfi { max-height: 120px; } .image-input-read-exfi>button { transform: scale(.8); } .image-ratio-buttons { height: 120px; & label { width: calc(25% - calc(var(--spacing-xl) + 2px) * 2 / 4); justify-content: center; align-items: end; & input { display: none; } } & label span { margin-left: 0; } } span.has-info+div { margin-top: var(--spacing-lg); margin-bottom: var(--spacing-lg); } .switch-ratio-btn { /* max-width: 38px; min-width: 38px !important; height: 33px; */ --icon-ratio: 3/2; aspect-ratio: 1; min-width: 120px; max-width: 120px; display: flex; justify-content: center; align-items: center; /* & div#switch_width_height_inner { fill: var(--text-color-by-luminance); width: 70%; transition: transform 0.2s ease-in-out; } & div#switch_width_height_inner.portrait { transform: rotate(90deg) rotateX(180deg); } */ & #switch_width_height_inner { width: 100px; height: 100px; transition: transform 0.2s ease-in-out, width 0.3s ease-in-out, height 0.38s ease-in-out 0.1s, background-image 0.3s ease-in-out; border-radius: 0.4rem; border: 4px solid var(--text-color-by-luminance); /*background: transparent;*/ background-position: center; & div { width: calc(100% + 20px); height: calc(100% + 20px); margin-top: -10px; margin-left: -10px; transition: background-image 0.3s ease-in-out; background-position: center; } } [data-aspect-ratio="16-9"] { width: 90px !important; height: 51px !important; background-image: url("file=_res/assets/ratio_preview_bgs/90x51px_16zu9.png"); } [data-aspect-ratio="9-16"] { width: 51px !important; height: 90px !important; background-image: url("file=_res/assets/ratio_preview_bgs/51x90px_9zu16.png"); } [data-aspect-ratio="4-3"] { width: 90px !important; height: 60px !important; background-image: url("file=_res/assets/ratio_preview_bgs/90x60px_4zu3.png"); } [data-aspect-ratio="3-4"] { width: 60px !important; height: 90px !important; background-image: url("file=_res/assets/ratio_preview_bgs/60x90px_3zu4.png"); } [data-aspect-ratio="3-2"] { width: 90px !important; height: 67px !important; background-image: url("file=_res/assets/ratio_preview_bgs/90x67px_3zu2.png"); } [data-aspect-ratio="2-3"] { width: 67px !important; height: 90px !important; background-image: url("file=_res/assets/ratio_preview_bgs/67x90px_2zu3.png"); } [data-aspect-ratio="1-1"] { width: 70px !important; height: 70px !important; background-image: url("file=_res/assets/ratio_preview_bgs/70x70px_1zu1.png"); } } .switch-ratio-btn:hover { & #switch_width_height_inner.querformat { transform: rotate(20deg); } & #switch_width_height_inner.hochformat { transform: rotate(-20deg) !important; } } .output-dominant-image-color { display: none; } .image-info-wrapper { transition: opacity 0.4s linear; } .tb-img-width input[type=text], .tb-img-height input[type=text], .tb-img-seed input[type=text] { display: block; position: relative; outline: none !important; box-shadow: var(--input-shadow); border: var(--input-border-width) solid var(--input-border-color); border-radius: var(--input-radius); background: var(--input-background-fill); padding: var(--size-2) var(--size-2); height: var(--size-6); color: var(--body-text-color); font-size: var(--input-text-size); line-height: var(--line-sm); text-align: center; } #output_image { min-height: 400px; &>div.image-container>div.icon-buttons { /* display: flex; position: absolute; top: var(--block-label-margin); right: var(--block-label-margin); align-items: center; */ & button, a button { display: inline-block; position: relative; z-index: var(--layer-4); border: solid var(--block-title-border-width) var(--block-title-border-color); border-radius: var(--block-title-radius); background: var(--block-title-background-fill); padding: var(--block-title-padding); color: var(--block-title-text-color); font-weight: var(--block-title-text-weight); font-size: var(--block-title-text-size); line-height: var(--line-sm); } } } .random-prompt-btn, .enhance-prompt-btn, .run-btn { min-width: 110px; transition: background 0.2s ease-in-out; & svg { fill: var(--text-color-by-luminance); width: 1.8rem; } } button.secondary { min-width: 110px; transition: background 0.2s ease-in-out; & svg { transition: fill 0.2s ease-in-out; fill: var(--primary-600); } } button.secondary:hover { min-width: 110px; & svg { fill: var(--text-color-by-luminance); } } .image-height-selector>label, .image-width-selector>label { display: flex; justify-content: space-between; & input { min-width: 100px; width: 50%; height: var(--size-9); } } div.gradio-container.blur-container { filter: blur(12px); pointer-events: none; } #image_seed:has(input[disabled].svelte-pc1gm4) { position: relative; } #image_seed:has(input[disabled].svelte-pc1gm4)::after { position: absolute; content: ''; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; height: 100%; border-radius: var(--block-radius); background: var(--block-background-fill); opacity: 0.5; cursor: not-allowed; z-index: var(--layer-5); } /* MARK: Toggle Button Checkbox */ /* INFO: gr.Checkbox elem_classes".toggle-btn" */ .toggle-btn { display: flex; flex-direction: column-reverse; &>div.wrap { display: none; } &>div:not(.wrap) { margin-top: var(--spacing-lg); margin-bottom: 0; } &>label { position: relative; width: 57px; height: 27px; display: inline-block; border-radius: 13px; background: var(--neutral-700); box-shadow: var(--shadow-inset); transition: background-color 0.3s, cursor 0.3s; border: solid 0.4px var(--border-color-primary); cursor: pointer; &>input[type="checkbox"] { width: 0; height: 0; opacity: 0; } &>span { position: absolute; left: 60px; height: 27px; min-width: 140px; line-height: 27px; } } &>label:has(input[type="checkbox"])::after { content: ""; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: var(--neutral-900); box-shadow: var(--shadow-inset); transition: left 0.2s ease-in-out, background 0.2s ease-in-out; } &>label:has(input[type="checkbox"]:checked)::after { content: ""; position: absolute; background: var(--neutral-900); opacity: 0.8; left: 32px; } &>label:has(input[type="checkbox"]:checked) { background: var(--primary-600); } } /* MARK: Range Input */ input[type=range].svelte-pc1gm4 { accent-color: var(--slider-color); background: var(--neutral-700) !important; background-image: linear-gradient(var(--slider-color), var(--slider-color)) !important; background-size: 0% 100%; } input[type=range].svelte-pc1gm4::-webkit-slider-thumb { background-color: var(--primary-600); border-width: 0; } input[type=range].svelte-pc1gm4::-webkit-slider-thumb:hover { background-color: var(--primary-500); } /* MARK: Text-Color Override */ label.svelte-1b6s6s, label.svelte-9gxdi0, span.svelte-1gfkn6j, span.svelte-1gfkn6j, .primary.svelte-cmf5ev, label.selected.svelte-1k4wjf2, label.selected.svelte-1mhtq7j, label.svelte-1mhtq7j:hover, div.tabs>div.tab-nav>button, .md-header h1, .md-header p, .md-header span { color: var(--text-color-by-luminance) !important; } /* MARK: Hide Progress */ .hide-progress:has(.wrap.default.full) { pointer-events: none; } .hide-progress:has(.wrap.default.full.hide) { pointer-events: initial; } .hide-progress .wrap.default.full:not(.hide) { display: none; } #run_btn { svg, dotlottie-player { height: 28.8px; } }