/* LuckyShop Production Hub · V2 mobile foundation */
:root {
  --navy: #101f3a;
  --ink: #172033;
  --muted: #69778c;
  --line: #dfe6f0;
  --blue: #356de8;
  --blue-dark: #204fb5;
  --blue-soft: #eaf1ff;
  --green: #18845b;
  --green-soft: #e9f8f1;
}

body.v2-mobile {
  background:
    radial-gradient(circle at 88% 2%, rgba(73, 116, 225, .11), transparent 21%),
    linear-gradient(180deg, #f7f9fc 0, #eff3f8 100%);
  letter-spacing: .004em;
}

.v2-mobile .worker-header {
  min-height: 90px;
  border-bottom: 1px solid rgba(150, 173, 214, .16);
  background:
    radial-gradient(circle at 18% -40%, rgba(92, 138, 238, .42), transparent 44%),
    linear-gradient(135deg, #11213e, #14294c);
  box-shadow: 0 12px 34px rgba(19, 37, 69, .13);
}

.v2-mobile .worker-header p { color: #94b5ff; letter-spacing: .14em; }
.v2-mobile .worker-header h1 { letter-spacing: -.035em; }
.v2-mobile .worker-greeting { color: #dce7ff; }
.v2-mobile .environment-badge { border-color: rgba(204,220,250,.24); background: rgba(255,255,255,.04); }

.v2-mobile .worker-main { margin-top: 116px; }

.v2-mobile .worker-card,
.v2-mobile .claim-success {
  border-color: rgba(204, 215, 231, .9);
  border-radius: 18px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 12px 34px rgba(25, 44, 77, .07);
}

.v2-mobile .worker-card { padding: 21px; }
.v2-mobile .step-label { color: #4776dc; letter-spacing: .11em; }
.v2-mobile h2 { color: #172238; letter-spacing: -.025em; }
.v2-mobile .helper { color: var(--muted); }

.v2-mobile input,
.v2-mobile textarea,
.v2-mobile select {
  border-color: #ccd7e8;
  border-radius: 12px;
  background: #fff;
  transition: border-color .16s ease, box-shadow .16s ease;
}

.v2-mobile input:focus,
.v2-mobile textarea:focus,
.v2-mobile select:focus {
  outline: none;
  border-color: #7198ec;
  box-shadow: 0 0 0 4px rgba(57, 111, 231, .12);
}

.v2-mobile .worker-primary {
  border-radius: 12px;
  background: linear-gradient(135deg, #3974ef, #285fd5);
  box-shadow: 0 9px 20px rgba(45, 99, 217, .2);
}

.v2-mobile .camera-button,
.v2-mobile .small-button,
.v2-mobile .cancel-button,
.v2-mobile .add-evidence-button { border-radius: 12px; }

.v2-mobile .work-filters {
  border: 1px solid #e1e7f0;
  border-radius: 14px;
  background: #f0f3f8;
  padding: 4px;
}

.v2-mobile .work-filters button { border-radius: 10px; }
.v2-mobile .work-filters button.active { background: white; color: var(--blue-dark); box-shadow: 0 4px 12px rgba(27, 50, 91, .08); }

.v2-mobile .task-item,
.v2-mobile .my-work-item,
.v2-mobile .salary-order,
.v2-mobile .quality-notice-list button {
  border-color: #dfe6f0;
  border-radius: 13px;
  background: #fbfcfe;
  transition: border-color .16s ease, background .16s ease, transform .16s ease;
}

.v2-mobile .task-item:not(:disabled):active,
.v2-mobile .my-work-item:active { transform: scale(.992); background: #f5f8ff; }

.v2-mobile .status-pill,
.v2-mobile .task-state,
.v2-mobile .order-list-status { font-weight: 800; }

.v2-mobile .worker-bottom-nav {
  border-color: rgba(198, 210, 228, .88);
  border-radius: 18px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 18px 42px rgba(20, 40, 74, .18);
  padding: 6px;
  backdrop-filter: blur(20px) saturate(140%);
}

.v2-mobile .worker-bottom-nav button { border-radius: 12px; transition: color .16s ease, background .16s ease; }
.v2-mobile .worker-bottom-nav button.active { background: linear-gradient(135deg, #edf3ff, #e4edff); color: #2455bd; }

.v2-mobile .worker-modal-backdrop { background: rgba(14, 28, 52, .48); backdrop-filter: blur(4px); }
.v2-mobile .order-card,
.v2-mobile .evidence-card { box-shadow: 0 26px 70px rgba(14, 30, 58, .2); }

.v2-mobile .artisan-toast {
  border-color: rgba(104, 190, 145, .58);
  background: rgba(236, 250, 243, .9);
  box-shadow: 0 18px 42px rgba(18, 76, 49, .18);
}

.v2-mobile .photo-choice { border-radius: 14px; background: linear-gradient(145deg, #f8faff, #eef4ff); }
.v2-mobile .photo-preview { border-radius: 14px; }

.v2-mobile :focus-visible { outline: 3px solid rgba(73, 123, 231, .42); outline-offset: 2px; }

@media (max-width: 560px) {
  .v2-mobile .worker-header { min-height: 82px; }
  .v2-mobile .worker-main { margin-top: 101px; }
  .v2-mobile .worker-card { padding: 18px; }
  .v2-mobile .worker-card + .worker-card { margin-top: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

