init studio admin frontend

This commit is contained in:
2026-07-01 17:34:15 +09:00
commit c50bd2b941
64 changed files with 22452 additions and 0 deletions
+206
View File
@@ -0,0 +1,206 @@
@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%);
}