@import "@fontsource-variable/geist"; @import "@uppy/core/css/style.min.css"; @import "@uppy/dashboard/css/style.min.css"; @import "tw-animate-css"; @import "tailwindcss"; @custom-variant dark (&:is(.dark *)); @theme inline { --color-background: var(--background); --color-foreground: var(--foreground); --color-card: var(--card); --color-card-foreground: var(--card-foreground); --color-popover: var(--popover); --color-popover-foreground: var(--popover-foreground); --color-primary: var(--primary); --color-primary-foreground: var(--primary-foreground); --color-secondary: var(--secondary); --color-secondary-foreground: var(--secondary-foreground); --color-muted: var(--muted); --color-muted-foreground: var(--muted-foreground); --color-accent: var(--accent); --color-accent-foreground: var(--accent-foreground); --color-destructive: var(--destructive); --color-destructive-foreground: var(--destructive-foreground); --color-border: var(--border); --color-input: var(--input); --color-ring: var(--ring); --radius-sm: calc(var(--radius) - 4px); --radius-md: calc(var(--radius) - 2px); --radius-lg: var(--radius); --radius-xl: calc(var(--radius) + 4px); } :root { --background: oklch(1 0 0); --foreground: oklch(0.145 0 0); --card: oklch(1 0 0); --card-foreground: oklch(0.145 0 0); --popover: oklch(1 0 0); --popover-foreground: oklch(0.145 0 0); --primary: oklch(0.205 0 0); --primary-foreground: oklch(0.985 0 0); --secondary: oklch(0.97 0 0); --secondary-foreground: oklch(0.205 0 0); --muted: oklch(0.97 0 0); --muted-foreground: oklch(0.556 0 0); --accent: oklch(0.97 0 0); --accent-foreground: oklch(0.205 0 0); --destructive: oklch(0.577 0.245 27.325); --destructive-foreground: oklch(0.985 0 0); --border: oklch(0.922 0 0); --input: oklch(0.922 0 0); --ring: oklch(0.708 0 0); --radius: 0.625rem; } .dark { --background: oklch(0.145 0 0); --foreground: oklch(0.985 0 0); --card: oklch(0.205 0 0); --card-foreground: oklch(0.985 0 0); --popover: oklch(0.205 0 0); --popover-foreground: oklch(0.985 0 0); --primary: oklch(0.922 0 0); --primary-foreground: oklch(0.205 0 0); --secondary: oklch(0.269 0 0); --secondary-foreground: oklch(0.985 0 0); --muted: oklch(0.269 0 0); --muted-foreground: oklch(0.708 0 0); --accent: oklch(0.269 0 0); --accent-foreground: oklch(0.985 0 0); --destructive: oklch(0.704 0.191 22.216); --destructive-foreground: oklch(0.985 0 0); --border: oklch(1 0 0 / 14%); --input: oklch(1 0 0 / 18%); --ring: oklch(0.556 0 0); } html, body, #root { min-height: 100%; } body { margin: 0; font-family: "Geist Variable", "PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", sans-serif; background-color: var(--background); color: var(--foreground); text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } @layer base { * { @apply border-border; } body { @apply bg-background text-foreground; } } .upload-browser-panel .uppy-Dashboard-inner { border-color: var(--border); border-radius: calc(var(--radius) + 2px); background-color: var(--background); } .upload-browser-panel .uppy-Dashboard-AddFiles-title { margin-top: 0.5rem; margin-bottom: 0.25rem; font-size: 1rem; } .upload-browser-panel .uppy-Dashboard-note { max-width: 24rem; font-size: 0.75rem; } .upload-browser-panel .uppy-DashboardContent-back, .upload-browser-panel .uppy-DashboardContent-addMore, .upload-browser-panel .uppy-c-btn-link { border: 1px solid transparent; border-radius: var(--radius); padding: 0.5rem 0.75rem; min-height: 2rem; font-family: "Geist Variable", "PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", sans-serif; font-size: 0.875rem; font-weight: 500; color: var(--foreground); background-color: transparent; transition: background-color 150ms ease, color 150ms ease, border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease; } .upload-browser-panel .uppy-DashboardContent-back:hover, .upload-browser-panel .uppy-DashboardContent-addMore:hover, .upload-browser-panel .uppy-c-btn-link:hover { background-color: var(--accent); color: var(--accent-foreground); } .upload-browser-panel .uppy-DashboardContent-back:focus-visible, .upload-browser-panel .uppy-DashboardContent-addMore:focus-visible, .upload-browser-panel .uppy-c-btn-link:focus-visible { outline: none; border-color: var(--ring); box-shadow: 0 0 0 3px color-mix(in oklab, var(--ring) 40%, transparent); } .upload-browser-panel .uppy-c-btn-primary { border: 1px solid transparent; border-radius: var(--radius); min-height: 2rem; padding: 0.5rem 0.75rem; font-family: "Geist Variable", "PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", sans-serif; font-size: 0.875rem; font-weight: 500; color: var(--primary-foreground); background-color: var(--primary); transition: background-color 150ms ease, color 150ms ease, border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease; } .upload-browser-panel .uppy-c-btn-primary:hover:not(:disabled) { background-color: color-mix(in oklab, var(--primary) 90%, transparent); } .upload-browser-panel .uppy-c-btn-primary:active:not(:disabled) { transform: translateY(1px); } .upload-browser-panel .uppy-c-btn-primary:focus-visible { outline: none; border-color: var(--ring); box-shadow: 0 0 0 3px color-mix(in oklab, var(--ring) 40%, transparent); } .upload-browser-panel .uppy-c-btn-primary:disabled { opacity: 0.5; } .upload-browser-panel .uppy-StatusBar-actionBtn, .upload-browser-panel .uppy-StatusBar-actionCircleBtn { font-family: "Geist Variable", "PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", sans-serif; transition: background-color 150ms ease, color 150ms ease, border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease; } .upload-browser-panel .uppy-StatusBar-actionBtn { display: inline-flex; align-items: center; justify-content: center; gap: 0.375rem; border: 1px solid transparent; border-radius: var(--radius); min-height: 2rem; padding: 0.5rem 0.75rem; font-size: 0.875rem; font-weight: 500; line-height: 1; } .upload-browser-panel .uppy-StatusBar-actionBtn:not(.uppy-c-btn-primary) { color: var(--foreground); background-color: transparent; } .upload-browser-panel .uppy-StatusBar-actionBtn:not(.uppy-c-btn-primary):hover:not(:disabled) { background-color: var(--accent); color: var(--accent-foreground); } .upload-browser-panel .uppy-StatusBar-actionBtn--retry { position: relative; min-height: 2rem; padding: 0.5rem 0.75rem 0.5rem 1.9rem; color: var(--destructive-foreground); background-color: var(--destructive); } .upload-browser-panel .uppy-StatusBar-actionBtn--retry:hover:not(:disabled) { background-color: color-mix(in oklab, var(--destructive) 90%, transparent); color: var(--destructive-foreground); } .upload-browser-panel .uppy-StatusBar-actionBtn--retry svg { position: absolute; top: 50%; inset-inline-start: 0.7rem; transform: translateY(-50%); } .upload-browser-panel .uppy-StatusBar-actionBtn--retry svg path { fill: currentColor; } .upload-browser-panel .uppy-StatusBar-actionBtn--done { border-color: var(--border); color: var(--secondary-foreground); background-color: var(--secondary); } .upload-browser-panel .uppy-StatusBar-actionBtn--done:hover:not(:disabled) { background-color: color-mix(in oklab, var(--secondary) 80%, transparent); color: var(--secondary-foreground); } .upload-browser-panel .uppy-StatusBar.is-waiting .uppy-StatusBar-actionBtn--upload { width: 100%; min-height: 2.25rem; padding: 0.625rem 0.875rem; color: var(--primary-foreground); background-color: var(--primary); } .upload-browser-panel .uppy-StatusBar.is-waiting .uppy-StatusBar-actionBtn--upload:hover:not(:disabled) { background-color: color-mix(in oklab, var(--primary) 90%, transparent); } .upload-browser-panel .uppy-StatusBar:not(.is-waiting) .uppy-StatusBar-actionBtn--upload { color: var(--foreground); background-color: transparent; } .upload-browser-panel .uppy-StatusBar-actionBtn--disabled { opacity: 0.5; } .upload-browser-panel .uppy-StatusBar-actionBtn:active:not(:disabled), .upload-browser-panel .uppy-StatusBar-actionCircleBtn:active:not(:disabled) { transform: translateY(1px); } .upload-browser-panel .uppy-StatusBar-actionBtn:focus-visible, .upload-browser-panel .uppy-StatusBar-actionCircleBtn:focus-visible { outline: none; border-color: var(--ring); box-shadow: 0 0 0 3px color-mix(in oklab, var(--ring) 40%, transparent); } .upload-browser-panel .uppy-StatusBar-actionCircleBtn { display: inline-flex; align-items: center; justify-content: center; width: 2rem; height: 2rem; margin: 3px; border: 1px solid var(--border); border-radius: 9999px; background-color: var(--secondary); opacity: 1; cursor: pointer; } .upload-browser-panel .uppy-StatusBar-actionCircleBtn:hover { background-color: color-mix(in oklab, var(--secondary) 80%, transparent); } .upload-browser-panel .uppy-StatusBar-actionCircleBtn svg { vertical-align: bottom; } .upload-browser-panel .uppy-StatusBar-actionCircleBtn svg circle { fill: transparent; } .upload-browser-panel .uppy-StatusBar-actionCircleBtn svg path { fill: var(--secondary-foreground); }