glb-studio / src /index.css
GLB Studio Deploy
redesign: complete modern UI overhaul + new features
fd8bcfa
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;700&family=Syne:wght@700;800&display=swap');
:root {
--bg0: #0c0c10;
--bg1: #111116;
--bg2: #17171e;
--bg3: #1e1e28;
--bg4: #252532;
--border: rgba(255,255,255,0.07);
--border-hi: rgba(255,255,255,0.14);
--accent: #4f8eff;
--accent2: #7c3aed;
--accent3: #06d6a0;
--warn: #f59e0b;
--danger: #ef4444;
--text0: #f0f0f8;
--text1: #a0a0b8;
--text2: #606078;
--text3: #383848;
--radius-sm: 4px;
--radius: 8px;
--radius-lg: 12px;
--font-ui: 'Inter', system-ui, sans-serif;
--font-mono: 'JetBrains Mono', monospace;
--font-brand: 'Syne', sans-serif;
--shadow-sm: 0 1px 3px rgba(0,0,0,0.4);
--shadow: 0 4px 16px rgba(0,0,0,0.5);
--shadow-lg: 0 8px 32px rgba(0,0,0,0.7);
--glow: 0 0 20px rgba(79,142,255,0.25);
--glow-green: 0 0 20px rgba(6,214,160,0.25);
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html, body, #root {
width: 100%; height: 100%;
overflow: hidden;
background: var(--bg0);
color: var(--text0);
font-family: var(--font-ui);
font-size: 13px;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* ── Scrollbar ─────────────────────────────────────────────────────── */
::-webkit-scrollbar { width: 4px; height: 4px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--bg4); border-radius: 2px; }
::-webkit-scrollbar-thumb:hover { background: var(--text3); }
/* ── Global inputs ─────────────────────────────────────────────────── */
input[type=range] {
-webkit-appearance: none;
height: 3px;
background: var(--bg4);
border-radius: 2px;
cursor: pointer;
width: 100%;
}
input[type=range]::-webkit-slider-thumb {
-webkit-appearance: none;
width: 13px; height: 13px;
background: var(--accent);
border-radius: 50%;
box-shadow: 0 0 0 3px rgba(79,142,255,0.2);
transition: transform 0.15s;
}
input[type=range]::-webkit-slider-thumb:hover { transform: scale(1.2); }
input[type=range]:focus { outline: none; }
input[type=number], input[type=text], select, textarea {
background: var(--bg1);
border: 1px solid var(--border);
border-radius: var(--radius-sm);
color: var(--text0);
font-family: var(--font-mono);
font-size: 11px;
padding: 5px 7px;
outline: none;
transition: border-color 0.15s, box-shadow 0.15s;
width: 100%;
}
input[type=number]:focus,
input[type=text]:focus,
select:focus { border-color: var(--accent); box-shadow: 0 0 0 2px rgba(79,142,255,0.15); }
button { font-family: var(--font-ui); cursor: pointer; outline: none; border: none; }
* { -webkit-tap-highlight-color: transparent; }
/* ── Animations ────────────────────────────────────────────────────── */
@keyframes spin { to { transform: rotate(360deg); } }
@keyframes pulse { 0%,100%{opacity:1} 50%{opacity:.4} }
@keyframes fadeUp { from{opacity:0;transform:translateY(6px)} to{opacity:1;transform:none} }
@keyframes shimmer {
0% { background-position: -200% 0; }
100% { background-position: 200% 0; }
}