@import 'tailwindcss'; @font-face { font-family: 'NanumSquare'; src: url('/assets/fonts/NanumSquareL.woff2') format('woff2'); font-weight: 300; font-style: normal; font-display: swap; } @font-face { font-family: 'NanumSquare'; src: url('/assets/fonts/NanumSquare.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; } @font-face { font-family: 'NanumSquare'; src: url('/assets/fonts/NanumSquareB.woff2') format('woff2'); font-weight: 700; font-style: normal; font-display: swap; } @font-face { font-family: 'NanumSquare'; src: url('/assets/fonts/NanumSquareEB.woff2') format('woff2'); font-weight: 800 900; font-style: normal; font-display: swap; } @theme { --font-sans: 'NanumSquare', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; --color-background: hsl(224 22% 7%); --color-foreground: hsl(210 24% 94%); --color-card: hsl(224 20% 10%); --color-card-foreground: hsl(210 24% 94%); --color-popover: hsl(224 20% 10%); --color-popover-foreground: hsl(210 24% 94%); --color-primary: hsl(217 86% 58%); --color-primary-foreground: hsl(0 0% 100%); --color-secondary: hsl(222 16% 16%); --color-secondary-foreground: hsl(210 24% 92%); --color-muted: hsl(222 15% 18%); --color-muted-foreground: hsl(218 11% 64%); --color-accent: hsl(222 15% 18%); --color-accent-foreground: hsl(210 24% 94%); --color-border: hsl(222 15% 20%); --color-input: hsl(222 15% 22%); --color-ring: hsl(217 86% 58%); --color-sidebar: hsl(224 24% 8%); --color-sidebar-accent: hsl(222 15% 16%); } * { box-sizing: border-box; } html { color-scheme: dark; background: hsl(224 22% 7%); font-size: 15px; font-synthesis: none; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } body { margin: 0; min-width: 320px; min-height: 100vh; color: hsl(210 24% 94%); font-family: var(--font-sans); background: radial-gradient(circle at 20% -10%, hsl(217 86% 22% / 0.22), transparent 34rem), linear-gradient(180deg, hsl(224 22% 7%), hsl(224 24% 6%)); } button, input { font-family: inherit; } button { cursor: pointer; } input, textarea, select { color: hsl(210 24% 94%); } input:not(.login-light-field):-webkit-autofill, input:not(.login-light-field):-webkit-autofill:hover, input:not(.login-light-field):-webkit-autofill:focus { -webkit-text-fill-color: hsl(210 24% 94%); caret-color: hsl(210 24% 94%); box-shadow: 0 0 0 1000px hsl(224 22% 7%) inset; transition: background-color 9999s ease-out; } .secure-field:-webkit-autofill, .secure-field:-webkit-autofill:hover, .secure-field:-webkit-autofill:focus, .secure-field:-webkit-autofill:active { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; caret-color: #ffffff !important; background-color: #111827 !important; box-shadow: 0 0 0 1000px #111827 inset !important; -webkit-box-shadow: 0 0 0 1000px #111827 inset !important; transition: background-color 9999s ease-in-out 0s; } .login-submit, .login-submit:hover, .login-submit:focus { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; } .login-light-field, .login-light-field:hover, .login-light-field:focus { color: #ffffff !important; caret-color: #ffffff !important; background-color: #111827 !important; color-scheme: dark; } .login-light-field:-webkit-autofill, .login-light-field:-webkit-autofill:hover, .login-light-field:-webkit-autofill:focus, .login-light-field:-webkit-autofill:active { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; caret-color: #ffffff !important; background-color: #111827 !important; color-scheme: dark; box-shadow: 0 0 0 1000px #111827 inset !important; -webkit-box-shadow: 0 0 0 1000px #111827 inset !important; } .login-password-input { font-family: Arial, Helvetica, sans-serif !important; letter-spacing: 0.08em; } ::selection { background: hsl(217 86% 58% / 0.35); } .scrollbar-stable { scrollbar-gutter: stable; } .toast-enter { animation: toast-enter 180ms ease-out both; } .log-modal-shell { width: min(1200px, calc(100vw - 48px)); max-width: none; } .viewer-readonly .ui-button { display: none !important; } @keyframes skeleton-shimmer { 100% { transform: translateX(100%); } } @keyframes toast-enter { from { opacity: 0; transform: translateY(-18px); } to { opacity: 1; transform: translateY(0); } } ::-webkit-scrollbar { width: 10px; height: 10px; } ::-webkit-scrollbar-track { background: hsl(224 22% 7%); } ::-webkit-scrollbar-thumb { background: hsl(222 15% 24%); border-radius: 999px; border: 2px solid hsl(224 22% 7%); }