/* Custom DaisyUI Theme Override */
/* University of Auckland Color Scheme */

:root[data-theme="uoa"] {
  /* Primary colors - Waitematā Blue */
  --p: #00467F; /* UoA Waitematā Blue */
  --pc: #ffffff; /* Primary content (white text on blue) */

  /* Secondary colors - Māhina Blue */
  --s: #6BACD0; /* UoA Māhina Blue */
  --sc: #001F3F; /* Secondary content (dark text on light blue) */

  /* Accent colors - Azure Blue */
  --a: #0073CF; /* UoA Azure Blue */
  --ac: #ffffff; /* Accent content (white text on azure) */

  /* Neutral colors - Grays */
  --n: #3D4451; /* Neutral */
  --nc: #ffffff; /* Neutral content */

  /* Base colors - Light theme */
  --b1: #ffffff; /* Base 100 - White background */
  --b2: #F5F5F5; /* Base 200 - Very light gray */
  --b3: #E0E0E0; /* Base 300 - Light gray */
  --bc: #1A1A1A; /* Base content - Dark text */

  /* Info colors */
  --in: #1E88E5; /* Info */
  --inc: #ffffff; /* Info content */

  /* Success colors */
  --su: #00A651; /* Success */
  --suc: #ffffff; /* Success content */

  /* Warning colors */
  --wa: #FFA726; /* Warning */
  --wac: #1A1A1A; /* Warning content */

  /* Error colors */
  --er: #D32F2F; /* Error */
  --erc: #ffffff; /* Error content */

  /* Border radius */
  --rounded-box: 0.5rem;
  --rounded-btn: 0.5rem;
  --rounded-badge: 1.9rem;

  /* Animation */
  --animation-btn: 0.25s;
  --animation-input: 0.2s;

  /* Blur */
  --glass-blur: 16px;
  --glass-opacity: 0.1;

  /* Size */
  --tab-radius: 0.5rem;
}

/* Dark theme override */
:root[data-theme="uoa-dark"] {
  /* Primary colors - Brighter blue for dark theme */
  --p: #1E88E5; /* Lighter blue for dark theme */
  --pc: #ffffff; /* Primary content */

  /* Secondary colors - Māhina Blue */
  --s: #6BACD0; /* Māhina Blue */
  --sc: #1A1A1A; /* Secondary content */

  /* Accent colors - Lighter Azure */
  --a: #42A5F5; /* Lighter azure for dark theme */
  --ac: #1A1A1A; /* Accent content */

  /* Neutral colors */
  --n: #2A2E37; /* Neutral */
  --nc: #f9fafb; /* Neutral content */

  /* Base colors - Dark theme */
  --b1: #1A1D24; /* Base 100 - Dark background */
  --b2: #252933; /* Base 200 - Darker gray */
  --b3: #2F3541; /* Base 300 - Medium gray */
  --bc: #E5E7EB; /* Base content - Light text */

  /* Info colors */
  --in: #29B6F6; /* Info */
  --inc: #1A1A1A; /* Info content */

  /* Success colors */
  --su: #66BB6A; /* Success */
  --suc: #1A1A1A; /* Success content */

  /* Warning colors */
  --wa: #FFA726; /* Warning */
  --wac: #1A1A1A; /* Warning content */

  /* Error colors */
  --er: #EF5350; /* Error */
  --erc: #1A1A1A; /* Error content */
}

/* Custom component overrides */
.btn-primary {
  background-color: var(--p);
  border-color: var(--p);
  color: var(--pc);
}

.btn-primary:hover {
  background-color: #003766; /* Darker Waitematā blue on hover */
  border-color: #003766;
}

.btn-secondary {
  background-color: var(--s);
  border-color: var(--s);
  color: var(--sc);
}

.btn-secondary:hover {
  background-color: #5A9ABE; /* Darker Māhina blue on hover */
  border-color: #5A9ABE;
}

.btn-accent {
  background-color: var(--a);
  border-color: var(--a);
  color: var(--ac);
}

.btn-accent:hover {
  background-color: #0062B3; /* Darker Azure blue on hover */
  border-color: #0062B3;
}

.btn-info {
  background-color: var(--in);
  border-color: var(--in);
  color: var(--inc);
}

.btn-info:hover {
  background-color: #1976D2;
  border-color: #1976D2;
}

.btn-success {
  background-color: var(--su);
  border-color: var(--su);
  color: var(--suc);
}

.btn-success:hover {
  background-color: #008F47;
  border-color: #008F47;
}

.btn-warning {
  background-color: var(--wa);
  border-color: var(--wa);
  color: var(--wac);
}

.btn-warning:hover {
  background-color: #FB8C00;
  border-color: #FB8C00;
}

.btn-error {
  background-color: var(--er);
  border-color: var(--er);
  color: var(--erc);
}

.btn-error:hover {
  background-color: #C62828;
  border-color: #C62828;
}

/* Card styling */
.card {
  border-radius: var(--rounded-box);
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

/* Form styling */
.input, .textarea, .select {
  border-radius: var(--rounded-btn);
  border: 1px solid var(--b3);
}

.input:focus, .textarea:focus, .select:focus {
  border-color: var(--p);
  box-shadow: 0 0 0 1px var(--p);
  outline: none;
}

.input-primary {
  border-color: var(--p);
}

.input-primary:focus {
  border-color: var(--p);
  box-shadow: 0 0 0 2px rgba(0, 70, 127, 0.2);
}

.select-primary {
  border-color: var(--p);
}

.select-primary:focus {
  border-color: var(--p);
  box-shadow: 0 0 0 2px rgba(0, 70, 127, 0.2);
}

/* Checkbox and Radio styling */
.checkbox-primary:checked {
  background-color: var(--p);
  border-color: var(--p);
}

.radio-primary:checked {
  background-color: var(--p);
  border-color: var(--p);
}

/* Alert styling */
.alert {
  border-radius: var(--rounded-box);
}

.alert-info {
  background-color: rgba(30, 136, 229, 0.1);
  border-left: 4px solid var(--in);
  color: var(--in);
}

.alert-success {
  background-color: rgba(0, 166, 81, 0.1);
  border-left: 4px solid var(--su);
  color: var(--su);
}

.alert-warning {
  background-color: rgba(255, 167, 38, 0.1);
  border-left: 4px solid var(--wa);
  color: var(--wa);
}

.alert-error {
  background-color: rgba(211, 47, 47, 0.1);
  border-left: 4px solid var(--er);
  color: var(--er);
}

/* Badge styling */
.badge {
  border-radius: var(--rounded-badge);
}

.badge-primary {
  background-color: var(--p);
  color: var(--pc);
  border-color: var(--p);
}

.badge-secondary {
  background-color: var(--s);
  color: var(--sc);
  border-color: var(--s);
}

.badge-accent {
  background-color: var(--a);
  color: var(--ac);
  border-color: var(--a);
}

.badge-info {
  background-color: var(--in);
  color: var(--inc);
  border-color: var(--in);
}

.badge-success {
  background-color: var(--su);
  color: var(--suc);
  border-color: var(--su);
}

.badge-warning {
  background-color: var(--wa);
  color: var(--wac);
  border-color: var(--wa);
}

.badge-error {
  background-color: var(--er);
  color: var(--erc);
  border-color: var(--er);
}

/* Link styling */
.link-primary {
  color: var(--p);
}

.link-primary:hover {
  color: #003766;
}

.link-accent {
  color: var(--a);
}

.link-accent:hover {
  color: #0062B3;
}

/* Progress bar styling */
.progress-primary {
  background-color: var(--p);
}

/* Toggle styling */
.toggle-primary:checked {
  background-color: var(--p);
  border-color: var(--p);
}

/* Optional: Custom UoA branding enhancements */
.uoa-gradient {
  background: linear-gradient(135deg, var(--p) 0%, var(--a) 100%);
  color: var(--pc);
}

.uoa-border-left {
  border-left: 4px solid var(--p);
}

.uoa-shadow {
  box-shadow: 0 4px 6px -1px rgba(0, 70, 127, 0.1),
              0 2px 4px -1px rgba(0, 70, 127, 0.06);
}

/* Navbar with UoA primary color */
.navbar-uoa {
  background-color: var(--p);
  color: var(--pc);
}
