Update app.py
Browse files
app.py
CHANGED
@@ -528,7 +528,7 @@ self.addEventListener('fetch', event => {
|
|
528 |
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
529 |
<title>디지털 굿판</title>
|
530 |
<link rel="manifest" href="/manifest.json">
|
531 |
-
<meta name="theme-color" content="#
|
532 |
<meta name="apple-mobile-web-app-capable" content="yes">
|
533 |
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
534 |
<meta name="apple-mobile-web-app-title" content="디지털 굿판">
|
@@ -537,6 +537,8 @@ self.addEventListener('fetch', event => {
|
|
537 |
/* iOS 상태바 영역 보호 */
|
538 |
body {
|
539 |
padding-top: env(safe-area-inset-top);
|
|
|
|
|
540 |
}
|
541 |
.status-bar {
|
542 |
position: fixed;
|
@@ -547,6 +549,8 @@ self.addEventListener('fetch', event => {
|
|
547 |
background: black;
|
548 |
z-index: 1000;
|
549 |
}
|
|
|
|
|
550 |
</style>
|
551 |
<script>
|
552 |
// 페이지 로드 시 상단으로 스크롤
|
@@ -577,18 +581,11 @@ self.addEventListener('fetch', event => {
|
|
577 |
|
578 |
// PWA 설치 관련
|
579 |
if ('serviceWorker' in navigator) {
|
580 |
-
window.addEventListener('load',
|
581 |
-
|
582 |
-
|
583 |
-
|
584 |
-
await preventSleep();
|
585 |
-
} catch (err) {
|
586 |
-
console.log('ServiceWorker 등록 실패:', err);
|
587 |
-
}
|
588 |
});
|
589 |
-
}
|
590 |
-
</script>
|
591 |
-
<script>
|
592 |
// 화면 꺼짐 방지
|
593 |
async function preventSleep() {
|
594 |
try {
|
@@ -869,19 +866,20 @@ def create_interface():
|
|
869 |
color: #4a90e2 !important;
|
870 |
}
|
871 |
}
|
872 |
-
|
873 |
div.gr-header {
|
874 |
display: none !important;
|
875 |
}
|
876 |
|
877 |
-
/*
|
878 |
body {
|
879 |
margin: 0;
|
880 |
padding: 0;
|
881 |
-
background: #
|
882 |
overflow-x: hidden;
|
883 |
position: relative;
|
884 |
min-height: 100vh;
|
|
|
885 |
}
|
886 |
|
887 |
/* 메인 컨테이너 스타일링 */
|
@@ -889,9 +887,9 @@ def create_interface():
|
|
889 |
margin: 0 auto !important;
|
890 |
padding: 0 !important;
|
891 |
max-width: 800px !important;
|
892 |
-
background:
|
893 |
min-height: 100vh;
|
894 |
-
box-shadow: 0 0 10px rgba(0,0,0,0.
|
895 |
position: relative;
|
896 |
}
|
897 |
|
@@ -902,14 +900,14 @@ def create_interface():
|
|
902 |
left: 0;
|
903 |
right: 0;
|
904 |
height: env(safe-area-inset-top);
|
905 |
-
background:
|
906 |
z-index: 1000;
|
907 |
}
|
908 |
|
909 |
/* 하단 여백 조정 */
|
910 |
.footer-spacing {
|
911 |
height: env(safe-area-inset-bottom);
|
912 |
-
background:
|
913 |
}
|
914 |
|
915 |
/* 앱 스크롤 동작 */
|
@@ -918,10 +916,47 @@ def create_interface():
|
|
918 |
scroll-behavior: smooth;
|
919 |
}
|
920 |
|
921 |
-
/*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
922 |
@supports (-webkit-touch-callout: none) {
|
923 |
.status-bar {
|
924 |
height: max(env(safe-area-inset-top), 20px);
|
|
|
925 |
}
|
926 |
}
|
927 |
"""
|
|
|
528 |
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
529 |
<title>디지털 굿판</title>
|
530 |
<link rel="manifest" href="/manifest.json">
|
531 |
+
<meta name="theme-color" content="#0b0f19">
|
532 |
<meta name="apple-mobile-web-app-capable" content="yes">
|
533 |
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
534 |
<meta name="apple-mobile-web-app-title" content="디지털 굿판">
|
|
|
537 |
/* iOS 상태바 영역 보호 */
|
538 |
body {
|
539 |
padding-top: env(safe-area-inset-top);
|
540 |
+
background: #0b0f19 !important;
|
541 |
+
color: #ffffff;
|
542 |
}
|
543 |
.status-bar {
|
544 |
position: fixed;
|
|
|
549 |
background: black;
|
550 |
z-index: 1000;
|
551 |
}
|
552 |
+
#gradio-app {
|
553 |
+
background: #0b0f19 !important;
|
554 |
</style>
|
555 |
<script>
|
556 |
// 페이지 로드 시 상단으로 스크롤
|
|
|
581 |
|
582 |
// PWA 설치 관련
|
583 |
if ('serviceWorker' in navigator) {
|
584 |
+
window.addEventListener('load', function() {
|
585 |
+
setTimeout(() => {
|
586 |
+
window.scrollTo(0, 0);
|
587 |
+
}, 100);
|
|
|
|
|
|
|
|
|
588 |
});
|
|
|
|
|
|
|
589 |
// 화면 꺼짐 방지
|
590 |
async function preventSleep() {
|
591 |
try {
|
|
|
866 |
color: #4a90e2 !important;
|
867 |
}
|
868 |
}
|
869 |
+
/* Hugging Face 로고 숨기기 */
|
870 |
div.gr-header {
|
871 |
display: none !important;
|
872 |
}
|
873 |
|
874 |
+
/* 다크 테마 기본 스타일 */
|
875 |
body {
|
876 |
margin: 0;
|
877 |
padding: 0;
|
878 |
+
background: #0b0f19 !important;
|
879 |
overflow-x: hidden;
|
880 |
position: relative;
|
881 |
min-height: 100vh;
|
882 |
+
color: #ffffff;
|
883 |
}
|
884 |
|
885 |
/* 메인 컨테이너 스타일링 */
|
|
|
887 |
margin: 0 auto !important;
|
888 |
padding: 0 !important;
|
889 |
max-width: 800px !important;
|
890 |
+
background: #0b0f19 !important;
|
891 |
min-height: 100vh;
|
892 |
+
box-shadow: 0 0 10px rgba(0,0,0,0.3);
|
893 |
position: relative;
|
894 |
}
|
895 |
|
|
|
900 |
left: 0;
|
901 |
right: 0;
|
902 |
height: env(safe-area-inset-top);
|
903 |
+
background: #000000;
|
904 |
z-index: 1000;
|
905 |
}
|
906 |
|
907 |
/* 하단 여백 조정 */
|
908 |
.footer-spacing {
|
909 |
height: env(safe-area-inset-bottom);
|
910 |
+
background: #0b0f19;
|
911 |
}
|
912 |
|
913 |
/* 앱 스크롤 동작 */
|
|
|
916 |
scroll-behavior: smooth;
|
917 |
}
|
918 |
|
919 |
+
/* 모든 탭 컨텐츠 배경색 */
|
920 |
+
.tabs > div {
|
921 |
+
background: #0b0f19 !important;
|
922 |
+
}
|
923 |
+
|
924 |
+
/* 입력 필드 스타일링 */
|
925 |
+
.gradio-textbox input,
|
926 |
+
.gradio-textbox textarea {
|
927 |
+
background: #1a1f2e !important;
|
928 |
+
color: #ffffff !important;
|
929 |
+
border: 1px solid #2a2f3e !important;
|
930 |
+
}
|
931 |
+
|
932 |
+
/* 버튼 스타일링 유지 */
|
933 |
+
.gradio-button {
|
934 |
+
background: #2a2f3e !important;
|
935 |
+
color: #ffffff !important;
|
936 |
+
border: none !important;
|
937 |
+
}
|
938 |
+
|
939 |
+
.gradio-button:hover {
|
940 |
+
background: #3a3f4e !important;
|
941 |
+
}
|
942 |
+
|
943 |
+
/* 데이터프레임/테이블 스타일링 */
|
944 |
+
.gradio-dataframe {
|
945 |
+
background: #1a1f2e !important;
|
946 |
+
color: #ffffff !important;
|
947 |
+
}
|
948 |
+
|
949 |
+
/* 모달과 팝업의 배경색 */
|
950 |
+
.modal-content {
|
951 |
+
background: #0b0f19 !important;
|
952 |
+
color: #ffffff !important;
|
953 |
+
}
|
954 |
+
|
955 |
+
/* iOS 상태바용 메타 태그 색상 */
|
956 |
@supports (-webkit-touch-callout: none) {
|
957 |
.status-bar {
|
958 |
height: max(env(safe-area-inset-top), 20px);
|
959 |
+
background: #000000;
|
960 |
}
|
961 |
}
|
962 |
"""
|