/* base.css */

/* ===== CSS VARIABLES ===== */
:root {
    --bg: #f5f5f7;
    --surface: rgba(255,255,255,0.68);
    --surface-solid: #ffffff;
    --surface2: rgba(244,246,250,0.64);
    --surface3: rgba(232,235,241,0.72);
    --glass: rgba(255,255,255,0.52);
    --glass-strong: rgba(255,255,255,0.70);
    --glass-border: rgba(255,255,255,0.72);
    --text: #1d1d1f;
    --text2: #6e6e73;
    --text3: #9a9aa0;
    --accent: #0071e3;
    --accent2: #147ce5;
    --success: #30d158;
    --warning: #ff9f0a;
    --danger: #ff453a;
    --border: rgba(0,0,0,0.08);
    --hairline: rgba(0,0,0,0.055);
    --shadow: 0 1px 2px rgba(0,0,0,0.04), 0 8px 24px rgba(0,0,0,0.06);
    --shadow-md: 0 2px 10px rgba(0,0,0,0.05), 0 18px 44px rgba(0,0,0,0.08);
    --shadow-lg: 0 6px 20px rgba(0,0,0,0.08), 0 28px 68px rgba(0,0,0,0.12);
    --radius: 22px;
    --radius-sm: 14px;
    --blur: blur(24px) saturate(180%);
  }

/* ===== BASE / RESET ===== */
  * { margin: 0; padding: 0; box-sizing: border-box; }

  html,
  body {
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    overscroll-behavior: none;
    touch-action: none;
  }

/* ===== BASE / BODY ===== */
  body {
    font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'SF Pro Text', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif;
    background:
      radial-gradient(circle at 16% 12%, rgba(0,113,227,0.13), transparent 30%),
      radial-gradient(circle at 84% 16%, rgba(175,82,222,0.12), transparent 28%),
      radial-gradient(circle at 58% 92%, rgba(90,200,250,0.12), transparent 34%),
      linear-gradient(180deg, #fbfbfd 0%, #f2f3f7 48%, #e9ebf1 100%);
    color: var(--text);
    height: 100vh;
    overflow: hidden;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
  }

/* ===== BASE / FORM ELEMENTS ===== */
  button, select, textarea, input { font: inherit; }

  input,
  textarea,
  [contenteditable="true"],
  .allow-text-select {
    -webkit-user-select: text;
    user-select: text;
  }

  img,
  svg,
  button,
  a {
    -webkit-user-drag: none;
  }

/* ===== ANIMATIONS ===== */
  @keyframes dash { to { stroke-dashoffset: -13; } }

/* ===== UTILITIES ===== */
  #fileInput { display: none; }

/* ===== SCROLLBAR ===== */
  ::-webkit-scrollbar { width: 6px; }
  ::-webkit-scrollbar-track { background: transparent; }
  ::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.16); border-radius: 999px; }
