:root { --primary: #FEDD00; --secondary: #4A4A4A; --background: #FFFFFF; --surface: #F8F9FA; --border: #E5E7EB; --success: #22C55E; --error: #EF4444; --warning: #F59E0B; --text: #1F2937; --muted: #6B7280; --shadow: 0 10px 25px rgba(0, 0, 0, 0.08); --radius: 12px; } * { box-sizing: border-box; } body { margin: 0; font-family: "Sarabun", sans-serif; background: var(--surface); color: var(--text); } header { position: sticky; top: 0; z-index: 50; background: var(--background); border-bottom: 1px solid var(--border); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04); } .header-inner { max-width: 1200px; margin: 0 auto; padding: 16px 20px; display: flex; align-items: center; justify-content: space-between; gap: 16px; } .brand { display: flex; align-items: center; gap: 12px; } .logo { width: 44px; height: 44px; border-radius: 10px; background: var(--primary); display: flex; align-items: center; justify-content: center; font-weight: 700; color: var(--secondary); } .brand-title { font-size: 18px; font-weight: 700; } .brand-subtitle { font-size: 13px; color: var(--muted); } .user-badge { font-size: 14px; color: var(--secondary); background: var(--surface); border: 1px solid var(--border); padding: 8px 12px; border-radius: 999px; display: none; } main { max-width: 1200px; margin: 0 auto; padding: 28px 20px 48px; } .screen { display: none; animation: fadeIn 0.2s ease-in-out; } .screen.active { display: block; } @keyframes fadeIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } } .card { background: var(--background); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); padding: 24px; } .login-card { max-width: 440px; margin: 48px auto; } h1, h2, h3 { margin-top: 0; color: var(--text); } h1 { font-size: 26px; margin-bottom: 8px; } h2 { font-size: 22px; margin-bottom: 8px; } h3 { font-size: 18px; margin-bottom: 14px; } p { color: var(--muted); line-height: 1.6; }