/* TocaYAvanza v2 — Base */

  * { box-sizing: border-box; margin: 0; padding: 0; }
  body { font-family: var(--font); background: var(--bg); color: var(--text); height: 100vh; overflow: hidden; }

  /* MAIN */
  #main { flex: 1; display: flex; flex-direction: column; overflow: hidden; }
  #content { flex: 1; overflow-y: auto; padding: var(--space-6); }

  #app-wrapper { display: flex; width: 100%; height: 100vh; overflow: hidden; }
  #app-wrapper.hidden { display: none; }

  /* PRINT */
  @media print { #sidebar, #topbar { display: none; } #content { padding: 0; } }

  /* HIGHLIGHT */
  .highlight { background: yellow; }

  /* SCROLLBAR */
  ::-webkit-scrollbar { width: 6px; height: 6px; }
  ::-webkit-scrollbar-track { background: transparent; }
  ::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }

  .hidden { display: none; }

  /* LOGIN */
  #login-screen {
    position: fixed; inset: 0; background: var(--sidebar-bg);
    display: flex; align-items: center; justify-content: center;
    z-index: 9999; flex-direction: column; gap: 0;
  }
  #login-screen.hidden { display: none; }
  .login-box {
    background: white; border-radius: 20px; padding: 40px 36px;
    width: 100%; max-width: 380px; box-shadow: 0 32px 80px rgba(0,0,0,0.4);
    text-align: center;
  }
  .login-box .login-logo { font-size: 40px; margin-bottom: var(--space-2); }
  .login-box h2 { font-size: var(--text-lg); font-weight: var(--fw-bold); color: var(--text); margin-bottom: var(--space-1); }
  .login-box p { font-size: var(--text-sm); color: var(--text-muted); margin-bottom: 28px; }
  .login-box input {
    width: 100%; padding: var(--space-3) var(--space-3); border: 1.5px solid var(--border);
    border-radius: var(--radius-md); font-size: var(--text-md); margin-bottom: var(--space-3);
    text-align: center; letter-spacing: 2px;
  }
  .login-box input:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px rgba(109,101,173,0.15); }
  .login-box .login-btn {
    width: 100%; padding: var(--space-3); background: var(--primary); color: white;
    border: none; border-radius: var(--radius-md); font-size: var(--text-md); font-weight: var(--fw-bold);
    cursor: pointer; transition: background 0.15s; margin-top: var(--space-1);
  }
  .login-box .login-btn:hover { background: var(--primary-dark); }
  .login-box .login-error {
    color: var(--danger); font-size: var(--text-sm); margin-top: var(--space-2);
    background: var(--danger-subtle); border-radius: var(--radius-md); padding: var(--space-2) var(--space-3); display: none;
  }
