/* Global Theme Variables */
:root {
	--color-primary: #667eea;
	--color-primary-2: #764ba2;
	--color-accent: #ff7a45;
	--color-success: #16a34a;
	--color-warning: #f59e0b;
	--color-danger: #dc2626;
	--color-text: #2d3748;
	--color-muted: #64748b;
	--color-border: #e5e7eb;
	--color-bg: #ffffff;
	--radius-sm: 8px;
	--radius-md: 12px;
	--radius-lg: 16px;
	--shadow-sm: 0 1px 3px rgba(0,0,0,.08);
	--shadow-md: 0 6px 16px rgba(15,23,42,.08);
	--shadow-lg: 0 18px 36px rgba(99,102,241,.18);
}

/* Base resets kept minimal to avoid overrides */
html { -webkit-text-size-adjust: 100%; }
body { color: var(--color-text); background: #f7f8fb; }

/* Buttons */
.btn { display:inline-flex; align-items:center; justify-content:center; border:1px solid transparent; border-radius: var(--radius-md); padding: 10px 14px; font-weight: 700; cursor: pointer; transition: all .25s ease; text-decoration:none; }
.btn:disabled { opacity:.6; cursor:not-allowed; }
.btn-primary { background: linear-gradient(135deg, var(--color-primary), var(--color-primary-2)); color:#fff; box-shadow: var(--shadow-md); }
.btn-primary:hover { transform: translateY(-1px); box-shadow: var(--shadow-lg); }
.btn-accent { background: linear-gradient(135deg, var(--color-accent), #ff9500); color:#fff; box-shadow: var(--shadow-md); }
.btn-accent:hover { transform: translateY(-1px); box-shadow: var(--shadow-lg); }
.btn-outline { background:#fff; color: var(--color-primary); border-color:#c7d2fe; }
.btn-outline:hover { background:#eef2ff; }

/* Cards */
.card { background:#fff; border:1px solid #eef2ff; border-radius: var(--radius-lg); box-shadow: 0 2px 8px rgba(15,23,42,.06); }
.card-hover:hover { transform: translateY(-2px); box-shadow: var(--shadow-lg); transition: all .25s ease; }

/* Badges */
.badge { display:inline-block; padding: 3px 8px; border-radius:999px; font-size:12px; font-weight:800; }
.badge-primary { background:#eef2ff; color:#4f46e5; border:1px solid #c7d2fe; }
.badge-warn { background:#fef3c7; color:#b45309; border:1px solid #fcd34d; }
.badge-danger { background:#fee2e2; color:#b91c1c; border:1px solid #fecaca; }

/* Bottom nav (unified) */
.bottom-nav { background:#fff; border-top:1px solid #e2e8f0; box-shadow: 0 -4px 16px rgba(0,0,0,.08); }
.bottom-nav .nav-item.active { color: var(--color-primary); background: rgba(102,126,234,.1); }

/* Utility */
.text-muted { color: var(--color-muted); }
.text-danger { color: var(--color-danger); }
.text-success { color: var(--color-success); }
.ring { box-shadow: 0 0 0 3px rgba(102,126,234,.15); }
.shadow-md { box-shadow: var(--shadow-md); }
.rounded { border-radius: var(--radius-md); }
.rounded-lg { border-radius: var(--radius-lg); }

/* Common components alignment with existing pages */
.task-card { border-radius: var(--radius-lg); border:1px solid #eef2ff; background: linear-gradient(180deg,#ffffff,#fbfdff); box-shadow: 0 2px 8px rgba(15,23,42,.06); }
.task-tag { background:#eef2ff; border:1px solid #c7d2fe; color:#4f46e5; border-radius:9999px; padding:2px 8px; font-size:11px; font-weight:800; }
.download-cta { background: linear-gradient(135deg, var(--color-primary), var(--color-primary-2)); color:#fff; box-shadow: 0 8px 20px rgba(102,126,234,.2); border-radius: var(--radius-md); }

/* FontAwesome fallback icons already present in pages; do not override here */


