/* Life Aurora theme v5.78 */

:root {
  --bg: #f7f5ff;
  --surface: rgba(255,255,255,.88);
  --surface-soft: #f0edff;
  --text: #28243f;
  --muted: #77728f;
  --line: rgba(102,83,187,.14);
  --primary: #7158e8;
  --primary-dark: #5139c6;
  --primary-soft: #ebe7ff;
  --sand: #fff0c9;
  --blue: #dff5ff;
  --danger: #f05f7f;
  --pink: #ff7fa8;
  --cyan: #32b8c6;
  --amber: #f5b942;
  --shadow: 0 14px 38px rgba(74,55,142,.10);
  --radius: 22px;
}

body {
  background:
    radial-gradient(circle at 8% 4%, rgba(255,127,168,.16), transparent 28%),
    radial-gradient(circle at 78% 8%, rgba(79,195,247,.18), transparent 30%),
    radial-gradient(circle at 55% 90%, rgba(245,185,66,.12), transparent 34%),
    linear-gradient(145deg,#faf8ff 0%,#f3f7ff 48%,#fff9f3 100%);
  background-attachment: fixed;
}

.sidebar {
  background: rgba(255,255,255,.78);
  border-left-color: rgba(113,88,232,.13);
  box-shadow: -12px 0 40px rgba(76,57,198,.07);
  backdrop-filter: blur(22px);
}

.brand-mark {
  background: linear-gradient(135deg,#7158e8,#ff6f9f);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(113,88,232,.28);
  font-family: 'Vazirmatn',sans-serif;
}

.brand strong {
  font-family: 'Vazirmatn',sans-serif;
  font-weight: 900;
  background: linear-gradient(90deg,#5139c6,#e84d88);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}

.nav-item {
  color: #716c87;
  transition: background .2s, color .2s, transform .2s;
}

.nav-item:hover {
  color: #5139c6;
  background: rgba(113,88,232,.08);
  transform: translateX(-3px);
}

.nav-item.active {
  color: #fff;
  background: linear-gradient(135deg,#7158e8,#8f6df2);
  box-shadow: 0 9px 22px rgba(113,88,232,.24);
}

.nav-badge {
  background: linear-gradient(135deg,#ff668f,#ff9b73);
  box-shadow: 0 4px 10px rgba(240,95,127,.22);
}

.topbar {
  background: rgba(247,245,255,.78);
  border-color: rgba(113,88,232,.10);
  backdrop-filter: blur(20px);
}

.page-heading h1 {
  background: linear-gradient(90deg,#3f329b,#7158e8 48%,#e7528a);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}

.eyebrow {
  color: #7158e8;
  font-weight: 900;
  letter-spacing: .04em;
}

.panel,
.objective-card,
.task-page-card,
.shopping-catalog-category,
.shopping-selected-panel,
.shopping-buying-view .shopping-main,
.shopping-history-view .shopping-main {
  background: rgba(255,255,255,.84);
  border-color: rgba(113,88,232,.13);
  box-shadow: var(--shadow);
  backdrop-filter: blur(16px);
}

.panel {
  position: relative;
  overflow: hidden;
}

.panel::before {
  content: "";
  position: absolute;
  width: 90px;
  height: 90px;
  left: -38px;
  top: -42px;
  border-radius: 50%;
  background: linear-gradient(135deg,rgba(113,88,232,.12),rgba(255,127,168,.08));
  pointer-events: none;
}

.primary-button {
  background: linear-gradient(135deg,#7158e8,#8e64ee 55%,#d959a0);
  box-shadow: 0 9px 22px rgba(113,88,232,.24);
  transition: transform .2s, box-shadow .2s, filter .2s;
}

.primary-button:hover {
  background: linear-gradient(135deg,#6148da,#8056e6 55%,#cf478f);
  box-shadow: 0 13px 28px rgba(113,88,232,.32);
  transform: translateY(-2px);
}

.secondary-button {
  color: #5942bd;
  background: linear-gradient(135deg,#eeeaff,#f9eafb);
  border: 1px solid rgba(113,88,232,.13);
}

.secondary-button:hover {
  background: #e6e0ff;
}

.secondary-button.danger {
  color: #d74469;
  background: #fff0f4;
}

input,
select,
textarea {
  background: rgba(255,255,255,.76);
  border-color: rgba(113,88,232,.16);
  transition: border-color .2s, box-shadow .2s, background .2s;
}

input:focus,
select:focus,
textarea:focus {
  outline: none;
  background: #fff;
  border-color: #846cf0;
  box-shadow: 0 0 0 4px rgba(113,88,232,.11);
}

.focus-card {
  color: #30275f;
  background:
    radial-gradient(circle at 12% 15%,rgba(255,255,255,.58),transparent 28%),
    linear-gradient(135deg,#e8e1ff,#dff3ff 52%,#ffe7ef);
  border-color: rgba(113,88,232,.15);
}

.next-card {
  color: #fff;
  background: linear-gradient(145deg,#6148d8,#8568ee 58%,#e15c9b);
  box-shadow: 0 15px 35px rgba(99,72,216,.25);
}

.progress {
  background: rgba(113,88,232,.10);
}

.progress i {
  background: linear-gradient(90deg,#32b8c6,#7158e8,#ff6f9f);
}

.task-page-card,
.objective-card {
  border-right: 4px solid #7158e8;
}

.task-page-card:nth-child(3n+2),
.objective-card:nth-child(3n+2) {
  border-right-color: #32b8c6;
}

.task-page-card:nth-child(3n),
.objective-card:nth-child(3n) {
  border-right-color: #ff6f9f;
}

.shopping-view-tabs {
  padding: 5px;
  border-radius: 15px;
  background: rgba(113,88,232,.07);
}

.shopping-view-tabs button {
  color: #77728f;
  border-radius: 11px;
}

.shopping-view-tabs button.active {
  color: #fff;
  background: linear-gradient(135deg,#7158e8,#db5a9d);
  box-shadow: 0 7px 17px rgba(113,88,232,.22);
}

.shopping-shared-header {
  color: #31285f;
  background:
    radial-gradient(circle at 10% 15%,rgba(255,255,255,.52),transparent 25%),
    linear-gradient(120deg,#e7e1ff,#dff6ff 55%,#fff0cc);
  border-color: rgba(113,88,232,.12);
}

.shopping-catalog-category:nth-child(4n+1) {
  background: linear-gradient(145deg,rgba(239,235,255,.94),rgba(255,255,255,.88));
}

.shopping-catalog-category:nth-child(4n+2) {
  background: linear-gradient(145deg,rgba(222,247,250,.94),rgba(255,255,255,.88));
}

.shopping-catalog-category:nth-child(4n+3) {
  background: linear-gradient(145deg,rgba(255,235,242,.94),rgba(255,255,255,.88));
}

.shopping-catalog-category:nth-child(4n) {
  background: linear-gradient(145deg,rgba(255,243,211,.94),rgba(255,255,255,.88));
}

.shopping-catalog-item {
  background: rgba(255,255,255,.72);
  border-color: rgba(113,88,232,.10);
}

.shopping-catalog-item:hover {
  border-color: rgba(113,88,232,.30);
  box-shadow: 0 8px 18px rgba(74,55,142,.08);
}

.shopping-catalog-item.is-selected {
  background: linear-gradient(135deg,#eeeaff,#ffeaf2);
  border-color: rgba(113,88,232,.35);
}

.shopping-active-item.is-urgent {
  background: linear-gradient(135deg,#fff0f4,#fff8e6);
  border-color: rgba(240,95,127,.30);
}

.shopping-item input,
.shopping-catalog-check input,
.shopping-active-item > input {
  accent-color: #7158e8;
}

.task-calendar-day-header.is-today,
.task-calendar-day-column.is-today {
  background: rgba(113,88,232,.07);
}

.task-calendar-block {
  border-color: rgba(113,88,232,.24);
  color: #493791;
  background: linear-gradient(135deg,#e9e4ff,#dff3ff);
}

.task-calendar-block.status-in_progress {
  color: #176c7a;
  background: linear-gradient(135deg,#d9f6fa,#dff0ff);
}

.task-calendar-block.status-blocked {
  color: #aa3d60;
  background: linear-gradient(135deg,#ffe3ec,#fff0dd);
}

.task-calendar-block.status-done {
  color: #68726d;
  background: linear-gradient(135deg,#edf0ee,#e7f2ec);
}

.capture-modal {
  background:
    radial-gradient(circle at 8% 5%,rgba(255,127,168,.13),transparent 25%),
    rgba(255,255,255,.96);
  border: 1px solid rgba(113,88,232,.13);
  box-shadow: 0 25px 75px rgba(52,38,111,.22);
}

.modal-backdrop {
  background: rgba(37,28,73,.42);
  backdrop-filter: blur(7px);
}

.toast {
  color: #fff;
  background: linear-gradient(135deg,#4433a0,#7158e8,#d94e91);
  box-shadow: 0 13px 35px rgba(58,42,128,.30);
}

::-webkit-scrollbar {
  width: 9px;
  height: 9px;
}

::-webkit-scrollbar-thumb {
  background: linear-gradient(#8b72ef,#ed70a5);
  border: 2px solid transparent;
  border-radius: 20px;
  background-clip: padding-box;
}

/* Colorful dark mode */
body.dark {
  --bg: #151326;
  --surface: rgba(34,30,59,.88);
  --surface-soft: #2c2748;
  --text: #f5f2ff;
  --muted: #aaa4c2;
  --line: rgba(174,155,255,.16);
  --primary: #9c83ff;
  --primary-dark: #c8baff;
  --primary-soft: #392f68;
  --sand: #4a3d2a;
  --blue: #203f51;
  --danger: #ff7896;
  --shadow: 0 14px 38px rgba(0,0,0,.24);
  background:
    radial-gradient(circle at 10% 5%,rgba(208,77,146,.15),transparent 29%),
    radial-gradient(circle at 80% 10%,rgba(73,178,220,.14),transparent 30%),
    linear-gradient(145deg,#171427,#171a30 55%,#231629);
}

body.dark .sidebar,
body.dark .topbar {
  background: rgba(24,21,42,.82);
  border-color: rgba(174,155,255,.14);
}

body.dark .panel,
body.dark .objective-card,
body.dark .task-page-card,
body.dark .shopping-catalog-category,
body.dark .shopping-selected-panel,
body.dark .shopping-buying-view .shopping-main,
body.dark .shopping-history-view .shopping-main,
body.dark .capture-modal {
  background: rgba(34,30,59,.88);
  border-color: rgba(174,155,255,.15);
}

body.dark input,
body.dark select,
body.dark textarea,
body.dark .shopping-catalog-item {
  color: var(--text);
  background: rgba(22,19,41,.72);
}

body.dark .focus-card,
body.dark .shopping-shared-header {
  color: #eee9ff;
  background: linear-gradient(135deg,#382f68,#253d5b 55%,#552d4d);
}

body.dark .shopping-catalog-item.is-selected {
  background: linear-gradient(135deg,#40356f,#512e58);
}

body.dark .shopping-catalog-category:nth-child(4n+1),
body.dark .shopping-catalog-category:nth-child(4n+2),
body.dark .shopping-catalog-category:nth-child(4n+3),
body.dark .shopping-catalog-category:nth-child(4n) {
  background: rgba(34,30,59,.90);
}

/* ENERGY BOOST v5.79 */

:root {
  --bg: #f4f3ff;
  --surface: rgba(255,255,255,.94);
  --surface-soft: #ebe8ff;
  --text: #211b42;
  --muted: #68627f;
  --line: rgba(89,61,220,.20);
  --primary: #643cff;
  --primary-dark: #4321d0;
  --primary-soft: #e5ddff;
  --danger: #ff3d71;
  --pink: #ff3d9a;
  --cyan: #00bcd4;
  --amber: #ffad0a;
  --shadow: 0 16px 42px rgba(74,45,190,.15);
}

body {
  background:
    radial-gradient(circle at 4% 5%,rgba(255,45,139,.30),transparent 24%),
    radial-gradient(circle at 82% 4%,rgba(0,188,212,.30),transparent 26%),
    radial-gradient(circle at 35% 105%,rgba(255,174,0,.27),transparent 30%),
    radial-gradient(circle at 95% 85%,rgba(103,58,255,.22),transparent 29%),
    linear-gradient(135deg,#fff7fc 0%,#eef5ff 42%,#f8f0ff 70%,#fff7df 100%);
  background-attachment: fixed;
}

.sidebar {
  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,.94),
      rgba(242,238,255,.91) 55%,
      rgba(255,240,247,.92)
    );
  border-left: 1px solid rgba(100,60,255,.20);
  box-shadow: -14px 0 45px rgba(74,45,190,.13);
}

.brand-mark {
  background: linear-gradient(135deg,#5535ff 5%,#a52fff 48%,#ff397d);
  box-shadow:
    0 10px 26px rgba(100,60,255,.38),
    0 3px 8px rgba(255,57,125,.22);
}

.brand strong {
  background: linear-gradient(90deg,#4c27e8,#a229ef,#f02677);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}

.nav-item:hover {
  color: #4d24e6;
  background: linear-gradient(
    90deg,
    rgba(100,60,255,.14),
    rgba(255,61,154,.08)
  );
}

.nav-item.active {
  color: #fff;
  background: linear-gradient(120deg,#5334f5,#8f2df0 55%,#f23887);
  box-shadow: 0 10px 25px rgba(103,52,235,.36);
}

.nav-badge {
  background: linear-gradient(135deg,#ff2d79,#ff7b22);
  box-shadow: 0 5px 13px rgba(255,45,121,.34);
}

.topbar {
  background: linear-gradient(
    90deg,
    rgba(255,255,255,.89),
    rgba(244,239,255,.88),
    rgba(255,241,247,.88)
  );
  border-color: rgba(100,60,255,.16);
}

.page-heading h1 {
  background: linear-gradient(90deg,#3f20db,#7836ff 43%,#ed2779);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  font-weight: 950;
}

.eyebrow {
  color: #ed2779;
}

.panel,
.objective-card,
.task-page-card,
.shopping-catalog-category,
.shopping-selected-panel,
.shopping-buying-view .shopping-main,
.shopping-history-view .shopping-main {
  border-color: rgba(100,60,255,.18);
  box-shadow:
    0 16px 40px rgba(74,45,190,.13),
    0 2px 6px rgba(80,45,190,.06);
}

.panel:nth-child(4n+1) {
  border-top: 3px solid #643cff;
}

.panel:nth-child(4n+2) {
  border-top: 3px solid #00bcd4;
}

.panel:nth-child(4n+3) {
  border-top: 3px solid #ff3d8d;
}

.panel:nth-child(4n) {
  border-top: 3px solid #ffad0a;
}

.panel::before {
  width: 120px;
  height: 120px;
  left: -52px;
  top: -57px;
  background: linear-gradient(
    135deg,
    rgba(100,60,255,.22),
    rgba(255,61,154,.15)
  );
}

.panel-title h2 {
  color: #382481;
  font-weight: 900;
}

.primary-button {
  background: linear-gradient(115deg,#5135f5,#8f2df0 50%,#ff367d);
  box-shadow:
    0 10px 24px rgba(100,60,255,.34),
    0 4px 10px rgba(255,54,125,.16);
}

.primary-button:hover {
  background: linear-gradient(115deg,#4324ec,#7e1fe4 50%,#f51f69);
  box-shadow: 0 15px 32px rgba(100,60,255,.42);
  filter: saturate(1.15);
}

.secondary-button {
  color: #4c27d9;
  background: linear-gradient(135deg,#e7e0ff,#ffe1ef);
  border-color: rgba(100,60,255,.22);
}

.secondary-button:hover {
  color: #fff;
  background: linear-gradient(120deg,#6b48ff,#df398f);
}

.focus-card {
  background:
    radial-gradient(circle at 12% 10%,rgba(255,255,255,.75),transparent 25%),
    linear-gradient(125deg,#dcd2ff,#ccefff 52%,#ffd4e3);
  border: 1px solid rgba(100,60,255,.25);
  box-shadow: 0 18px 42px rgba(94,59,205,.18);
}

.next-card {
  background:
    radial-gradient(circle at 8% 10%,rgba(255,255,255,.22),transparent 25%),
    linear-gradient(125deg,#4c2ce8,#7136f5 46%,#ed327f 100%);
  box-shadow: 0 18px 42px rgba(94,45,214,.34);
}

.progress {
  background: rgba(100,60,255,.15);
}

.progress i {
  background: linear-gradient(90deg,#00c4d6,#633cff 48%,#ff2f86 76%,#ffad0a);
  box-shadow: 0 2px 8px rgba(100,60,255,.25);
}

.task-page-card,
.objective-card {
  border-right-width: 5px;
  border-right-color: #643cff;
}

.task-page-card:nth-child(3n+2),
.objective-card:nth-child(3n+2) {
  border-right-color: #00bcd4;
}

.task-page-card:nth-child(3n),
.objective-card:nth-child(3n) {
  border-right-color: #ff397f;
}

.shopping-view-tabs {
  background: linear-gradient(
    90deg,
    rgba(100,60,255,.14),
    rgba(255,61,154,.12)
  );
  border: 1px solid rgba(100,60,255,.13);
}

.shopping-view-tabs button.active {
  background: linear-gradient(120deg,#5634f5,#932beb 52%,#ff347d);
  box-shadow: 0 9px 22px rgba(100,52,225,.34);
}

.shopping-shared-header {
  background:
    radial-gradient(circle at 8% 10%,rgba(255,255,255,.70),transparent 23%),
    linear-gradient(120deg,#d9ceff,#c8f1ff 52%,#ffe0a8);
  border-color: rgba(100,60,255,.24);
  box-shadow: 0 16px 35px rgba(83,55,180,.15);
}

.shopping-catalog-category:nth-child(4n+1) {
  background: linear-gradient(145deg,#e3dcff,#faf8ff 72%);
  border-top: 4px solid #643cff;
}

.shopping-catalog-category:nth-child(4n+2) {
  background: linear-gradient(145deg,#cdf5fa,#f8feff 72%);
  border-top: 4px solid #00bcd4;
}

.shopping-catalog-category:nth-child(4n+3) {
  background: linear-gradient(145deg,#ffd9e7,#fff8fb 72%);
  border-top: 4px solid #ff3d8d;
}

.shopping-catalog-category:nth-child(4n) {
  background: linear-gradient(145deg,#ffe9b9,#fffdf8 72%);
  border-top: 4px solid #ffad0a;
}

.shopping-catalog-item.is-selected {
  color: #3e238e;
  background: linear-gradient(125deg,#ded5ff,#ffd9e9);
  border-color: #815eff;
  box-shadow: 0 7px 18px rgba(100,60,255,.16);
}

.shopping-active-item.is-urgent {
  background: linear-gradient(125deg,#ffd8e5,#ffefbc);
  border-color: #ff3d71;
  box-shadow: 0 8px 20px rgba(255,61,113,.14);
}

input:focus,
select:focus,
textarea:focus {
  border-color: #643cff;
  box-shadow:
    0 0 0 4px rgba(100,60,255,.15),
    0 7px 18px rgba(100,60,255,.08);
}

.task-calendar-block {
  color: #3e2592;
  background: linear-gradient(135deg,#dcd4ff,#c9eeff);
  border-color: #7659ed;
}

.task-calendar-block.status-in_progress {
  color: #006b7c;
  background: linear-gradient(135deg,#bff5fb,#cae8ff);
  border-color: #00a9c0;
}

.task-calendar-block.status-blocked {
  color: #a41c50;
  background: linear-gradient(135deg,#ffcddd,#ffe3b5);
  border-color: #ff527f;
}

.capture-modal {
  background:
    radial-gradient(circle at 5% 4%,rgba(255,61,154,.20),transparent 23%),
    radial-gradient(circle at 95% 5%,rgba(0,188,212,.17),transparent 25%),
    rgba(255,255,255,.97);
  border-color: rgba(100,60,255,.25);
  box-shadow: 0 30px 85px rgba(54,30,145,.30);
}

.toast {
  background: linear-gradient(115deg,#4123c8,#7731ef 48%,#f02c78);
  box-shadow: 0 15px 38px rgba(77,42,202,.40);
}

/* Dark mode energy */
body.dark {
  --primary: #a58cff;
  --primary-dark: #d3c7ff;
  --primary-soft: #44357d;
  background:
    radial-gradient(circle at 5% 5%,rgba(255,37,128,.25),transparent 27%),
    radial-gradient(circle at 85% 6%,rgba(0,196,214,.22),transparent 29%),
    radial-gradient(circle at 50% 105%,rgba(255,174,0,.15),transparent 32%),
    linear-gradient(145deg,#130f28,#171735 55%,#261228);
}

body.dark .sidebar {
  background: linear-gradient(
    180deg,
    rgba(25,20,49,.94),
    rgba(35,23,62,.93),
    rgba(45,20,45,.93)
  );
}

body.dark .panel-title h2 {
  color: #d9d0ff;
}

/* SUNSHINE PALETTE v5.80 */

:root {
  --bg: #f6fbff;
  --surface: rgba(255,255,255,.94);
  --surface-soft: #eaf5ff;
  --text: #16324f;
  --muted: #64788b;
  --line: rgba(22,135,255,.17);
  --primary: #1687ff;
  --primary-dark: #0769ce;
  --primary-soft: #dceeff;
  --danger: #f05a35;
  --yellow: #ffd43b;
  --orange: #ff7a00;
  --green: #20c875;
  --blue: #1687ff;
  --shadow: 0 16px 42px rgba(14,100,170,.14);
}

body {
  background:
    radial-gradient(circle at 3% 5%,rgba(255,212,59,.42),transparent 23%),
    radial-gradient(circle at 88% 3%,rgba(22,135,255,.28),transparent 26%),
    radial-gradient(circle at 12% 95%,rgba(32,200,117,.25),transparent 27%),
    radial-gradient(circle at 94% 90%,rgba(255,122,0,.25),transparent 27%),
    linear-gradient(135deg,#fffdf3 0%,#eef9ff 45%,#f1fff7 72%,#fff7e8 100%);
  background-attachment: fixed;
}

.sidebar {
  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,.96),
      rgba(236,248,255,.94) 48%,
      rgba(239,255,246,.94)
    );
  border-left-color: rgba(22,135,255,.20);
  box-shadow: -14px 0 44px rgba(17,105,173,.12);
}

.brand-mark {
  color: #17324e;
  background: linear-gradient(135deg,#ffd43b,#ff8a00 45%,#20c875 72%,#1687ff);
  box-shadow: 0 10px 26px rgba(255,122,0,.25);
}

.brand strong {
  background: linear-gradient(90deg,#ff7800,#e9aa00 33%,#10aa62 67%,#087bea);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}

.nav-item {
  color: #587084;
}

.nav-item:hover {
  color: #0769ce;
  background: linear-gradient(
    90deg,
    rgba(22,135,255,.13),
    rgba(32,200,117,.11)
  );
}

.nav-item.active {
  color: #fff;
  background: linear-gradient(120deg,#1687ff,#06a9c7 52%,#20c875);
  box-shadow: 0 10px 25px rgba(19,141,198,.30);
}

.nav-badge {
  color: #17324e;
  background: linear-gradient(135deg,#ffd43b,#ff8a00);
  box-shadow: 0 5px 13px rgba(255,122,0,.28);
}

.topbar {
  background: linear-gradient(
    90deg,
    rgba(255,255,255,.91),
    rgba(237,249,255,.90),
    rgba(240,255,247,.90)
  );
  border-color: rgba(22,135,255,.14);
}

.page-heading h1 {
  background: linear-gradient(90deg,#0878de,#00a79d 52%,#16ad65);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}

.eyebrow {
  color: #ef7200;
}

.panel,
.objective-card,
.task-page-card,
.shopping-catalog-category,
.shopping-selected-panel,
.shopping-buying-view .shopping-main,
.shopping-history-view .shopping-main {
  border-color: rgba(22,135,255,.17);
  box-shadow:
    0 16px 40px rgba(14,100,170,.12),
    0 2px 6px rgba(14,100,170,.06);
}

.panel::before {
  background: linear-gradient(
    135deg,
    rgba(255,212,59,.28),
    rgba(32,200,117,.15)
  );
}

.panel:nth-child(4n+1) {
  border-top-color: #ffd43b;
}

.panel:nth-child(4n+2) {
  border-top-color: #ff7a00;
}

.panel:nth-child(4n+3) {
  border-top-color: #20c875;
}

.panel:nth-child(4n) {
  border-top-color: #1687ff;
}

.panel-title h2 {
  color: #174b75;
}

.primary-button {
  color: #fff;
  background: linear-gradient(115deg,#ff7a00,#f6a800 55%,#ffd43b);
  box-shadow:
    0 10px 24px rgba(255,122,0,.28),
    0 4px 10px rgba(255,190,0,.17);
}

.primary-button:hover {
  background: linear-gradient(115deg,#ed6900,#f39800 55%,#ffc928);
  box-shadow: 0 15px 32px rgba(255,122,0,.35);
}

.secondary-button {
  color: #0873d1;
  background: linear-gradient(135deg,#dceeff,#ddf9ea);
  border-color: rgba(22,135,255,.20);
}

.secondary-button:hover {
  color: #fff;
  background: linear-gradient(120deg,#1687ff,#20c875);
}

.secondary-button.danger {
  color: #d84d25;
  background: #fff0e8;
  border-color: rgba(255,122,0,.22);
}

.focus-card {
  color: #173958;
  background:
    radial-gradient(circle at 12% 10%,rgba(255,255,255,.75),transparent 25%),
    linear-gradient(125deg,#fff0a9,#dff6ff 51%,#d9f9e8);
  border-color: rgba(22,135,255,.20);
  box-shadow: 0 18px 42px rgba(14,100,170,.15);
}

.next-card {
  color: #fff;
  background:
    radial-gradient(circle at 8% 10%,rgba(255,255,255,.22),transparent 25%),
    linear-gradient(125deg,#087ceb,#04a8c5 48%,#20c875);
  box-shadow: 0 18px 42px rgba(6,137,175,.30);
}

.progress {
  background: rgba(22,135,255,.13);
}

.progress i {
  background: linear-gradient(90deg,#1687ff,#20c875 42%,#ffd43b 73%,#ff7a00);
  box-shadow: 0 2px 8px rgba(22,135,255,.22);
}

.task-page-card,
.objective-card {
  border-right-color: #ffd43b;
}

.task-page-card:nth-child(4n+2),
.objective-card:nth-child(4n+2) {
  border-right-color: #ff7a00;
}

.task-page-card:nth-child(4n+3),
.objective-card:nth-child(4n+3) {
  border-right-color: #20c875;
}

.task-page-card:nth-child(4n),
.objective-card:nth-child(4n) {
  border-right-color: #1687ff;
}

.shopping-view-tabs {
  background: linear-gradient(
    90deg,
    rgba(255,212,59,.22),
    rgba(32,200,117,.15),
    rgba(22,135,255,.15)
  );
  border-color: rgba(22,135,255,.15);
}

.shopping-view-tabs button.active {
  color: #fff;
  background: linear-gradient(120deg,#1687ff,#08a9b7 52%,#20c875);
  box-shadow: 0 9px 22px rgba(15,145,181,.28);
}

.shopping-shared-header {
  color: #173958;
  background:
    radial-gradient(circle at 8% 10%,rgba(255,255,255,.7),transparent 23%),
    linear-gradient(120deg,#ffe88a,#d8f5ff 48%,#cef6df);
  border-color: rgba(22,135,255,.20);
  box-shadow: 0 16px 35px rgba(14,100,170,.13);
}

.shopping-catalog-category:nth-child(4n+1) {
  background: linear-gradient(145deg,#fff0a8,#fffdf4 72%);
  border-top-color: #ffd43b;
}

.shopping-catalog-category:nth-child(4n+2) {
  background: linear-gradient(145deg,#ffd9b3,#fff9f3 72%);
  border-top-color: #ff7a00;
}

.shopping-catalog-category:nth-child(4n+3) {
  background: linear-gradient(145deg,#cdf5df,#f7fffa 72%);
  border-top-color: #20c875;
}

.shopping-catalog-category:nth-child(4n) {
  background: linear-gradient(145deg,#cfe9ff,#f6fbff 72%);
  border-top-color: #1687ff;
}

.shopping-catalog-item:hover {
  border-color: rgba(22,135,255,.40);
  box-shadow: 0 8px 18px rgba(14,100,170,.11);
}

.shopping-catalog-item.is-selected {
  color: #075f9d;
  background: linear-gradient(125deg,#cfeaff,#d5f8e4);
  border-color: #1687ff;
  box-shadow: 0 7px 18px rgba(22,135,255,.15);
}

.shopping-active-item.is-urgent {
  color: #8d3c00;
  background: linear-gradient(125deg,#ffe0bb,#fff0a5);
  border-color: #ff7a00;
  box-shadow: 0 8px 20px rgba(255,122,0,.15);
}

.shopping-item input,
.shopping-catalog-check input,
.shopping-active-item > input {
  accent-color: #20b86e;
}

input:focus,
select:focus,
textarea:focus {
  border-color: #1687ff;
  box-shadow:
    0 0 0 4px rgba(22,135,255,.14),
    0 7px 18px rgba(22,135,255,.08);
}

.task-calendar-day-header.is-today,
.task-calendar-day-column.is-today {
  background: rgba(255,212,59,.14);
}

.task-calendar-block {
  color: #075eaa;
  background: linear-gradient(135deg,#cbe7ff,#d6f8e5);
  border-color: #1687ff;
}

.task-calendar-block.status-in_progress {
  color: #087842;
  background: linear-gradient(135deg,#c9f6dc,#dff9ef);
  border-color: #20c875;
}

.task-calendar-block.status-blocked {
  color: #a94700;
  background: linear-gradient(135deg,#ffdab6,#fff0a9);
  border-color: #ff7a00;
}

.capture-modal {
  background:
    radial-gradient(circle at 5% 4%,rgba(255,212,59,.25),transparent 23%),
    radial-gradient(circle at 95% 5%,rgba(22,135,255,.20),transparent 25%),
    radial-gradient(circle at 90% 95%,rgba(32,200,117,.14),transparent 25%),
    rgba(255,255,255,.98);
  border-color: rgba(22,135,255,.22);
  box-shadow: 0 30px 85px rgba(12,78,135,.26);
}

.modal-backdrop {
  background: rgba(11,48,77,.43);
}

.toast {
  color: #fff;
  background: linear-gradient(115deg,#1687ff,#08a7ac 48%,#20c875);
  box-shadow: 0 15px 38px rgba(9,125,163,.34);
}

::-webkit-scrollbar-thumb {
  background: linear-gradient(#1687ff,#20c875,#ffd43b,#ff7a00);
  border: 2px solid transparent;
  background-clip: padding-box;
}

/* Dark mode */
body.dark {
  --bg: #102437;
  --surface: rgba(20,48,68,.92);
  --surface-soft: #1a4055;
  --text: #f3fbff;
  --muted: #a5bcc9;
  --line: rgba(86,184,255,.18);
  --primary: #45a5ff;
  --primary-dark: #a7d7ff;
  --primary-soft: #184d70;
  background:
    radial-gradient(circle at 5% 5%,rgba(255,185,0,.20),transparent 27%),
    radial-gradient(circle at 86% 5%,rgba(22,135,255,.25),transparent 29%),
    radial-gradient(circle at 15% 100%,rgba(32,200,117,.16),transparent 30%),
    radial-gradient(circle at 95% 90%,rgba(255,122,0,.14),transparent 29%),
    linear-gradient(145deg,#0d2030,#102b40 55%,#13362c);
}

body.dark .sidebar {
  background: linear-gradient(
    180deg,
    rgba(13,36,54,.96),
    rgba(15,49,65,.95),
    rgba(18,58,47,.95)
  );
}

body.dark .panel-title h2 {
  color: #bce4ff;
}

body.dark .focus-card,
body.dark .shopping-shared-header {
  color: #f5fcff;
  background: linear-gradient(125deg,#6f5f1c,#155779 48%,#176346);
}

body.dark .shopping-catalog-item.is-selected {
  color: #d9f4ff;
  background: linear-gradient(125deg,#174f75,#176044);
}

body.dark .shopping-catalog-category:nth-child(4n+1) {
  background: linear-gradient(145deg,#52491d,#15384c);
}

body.dark .shopping-catalog-category:nth-child(4n+2) {
  background: linear-gradient(145deg,#57361d,#15384c);
}

body.dark .shopping-catalog-category:nth-child(4n+3) {
  background: linear-gradient(145deg,#174f38,#15384c);
}

body.dark .shopping-catalog-category:nth-child(4n) {
  background: linear-gradient(145deg,#164b70,#15384c);
}
