:root { --ease-spring: cubic-bezier(.2,.85,.25,1); }

.home-extra-status {
  margin: 0 0 20px;
  overflow: hidden;
  border: 1px solid rgba(199,108,255,.22);
  border-radius: 20px;
  background: linear-gradient(135deg,rgba(199,108,255,.08),rgba(17,19,22,.94));
}
.home-extra-status > summary {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto 18px;
  align-items: center;
  gap: 10px;
  padding: 15px;
  list-style: none;
  cursor: pointer;
}
.home-extra-status > summary::-webkit-details-marker { display:none; }
.home-extra-status > summary span { display:grid; gap:3px; }
.home-extra-status > summary small { color:var(--purple-soft); font-size:9px; font-weight:900; letter-spacing:.12em; }
.home-extra-status > summary strong { font-size:14px; }
.home-extra-status > summary b { color:var(--muted); font-size:10px; }
.home-extra-status > summary i { color:var(--purple-soft); font-style:normal; transition:transform .3s var(--ease-spring); }
.home-extra-status[open] > summary i { transform:rotate(180deg); }
.home-extra-status-list { display:grid; gap:8px; padding:0 12px 12px; }
.home-extra-status-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; padding:12px; border:1px solid rgba(255,255,255,.08); border-radius:15px; background:rgba(6,7,9,.55); }
.home-extra-status-row div { display:grid; gap:4px; }
.home-extra-status-row strong { font-size:12px; }
.home-extra-status-row small { color:var(--muted); font-size:10px; line-height:1.45; }
.home-extra-status-row b { align-self:start; border-radius:999px; padding:6px 8px; color:var(--purple-soft); background:rgba(199,108,255,.12); font-size:9px; }

.focus-backdrop {
  position:fixed; inset:0; z-index:120;
  background:rgba(3,4,6,.58); backdrop-filter:blur(13px) saturate(.8); -webkit-backdrop-filter:blur(13px) saturate(.8);
  opacity:0; transition:opacity .28s ease;
}
.focus-backdrop.is-visible { opacity:1; }
.focus-cloud {
  position:fixed; z-index:121; left:50%; top:50%; width:min(92vw,520px); max-height:min(78vh,720px); overflow:auto;
  transform:translate(-50%,-46%) scale(.94); opacity:0;
  border:1px solid rgba(199,108,255,.36); border-radius:28px; padding:24px;
  background:radial-gradient(circle at 20% 0%,rgba(199,108,255,.2),transparent 38%),linear-gradient(145deg,#19151f,#0b0d10 58%);
  box-shadow:0 30px 90px rgba(0,0,0,.6),0 0 60px rgba(160,40,255,.12);
  transition:opacity .28s ease,transform .34s var(--ease-spring);
}
.focus-cloud.is-visible { opacity:1; transform:translate(-50%,-50%) scale(1); }
.focus-close { position:absolute; top:14px; right:14px; width:38px; height:38px; border:1px solid rgba(255,255,255,.1); border-radius:50%; background:rgba(255,255,255,.06); color:#fff; font-size:22px; }
.notification-entry { overflow:hidden; border-radius:17px; transform-origin:center; will-change:transform,opacity,height; }
.notification-item { transition:transform .22s var(--ease-spring),border-color .22s ease,background .22s ease,border-radius .22s ease; }
.notification-item:active { transform:scale(.985); }
.notification-item > b { transition:transform .28s var(--ease-spring),color .22s ease; }
.notification-entry.is-expanded .notification-item { border-color:rgba(199,108,255,.42); border-radius:17px 17px 8px 8px; background:linear-gradient(135deg,rgba(199,108,255,.12),#1a191d 48%); }
.notification-entry.is-expanded .notification-item > b { color:var(--purple-soft); transform:rotate(180deg); }
.notification-inline-actions {
  display:grid; grid-template-columns:1fr 1fr; gap:8px;
  max-height:0; padding:0 8px; opacity:0; transform:translateY(-6px); pointer-events:none;
  border:1px solid transparent; border-top:0; border-radius:0 0 17px 17px;
  background:rgba(13,14,17,.96);
  transition:max-height .32s var(--ease-spring),padding .26s ease,opacity .22s ease,transform .3s var(--ease-spring),border-color .22s ease;
}
.notification-entry.is-expanded .notification-inline-actions { max-height:72px; padding:9px; opacity:1; transform:translateY(0); pointer-events:auto; border-color:rgba(199,108,255,.3); }
.notification-inline-actions button { border:1px solid rgba(199,108,255,.34); border-radius:12px; padding:10px 12px; background:rgba(199,108,255,.1); color:#fff; font-size:10px; font-weight:850; }
.notification-inline-actions button:last-child { border-color:rgba(255,133,133,.25); background:rgba(255,133,133,.08); color:#ffadad; }
.notification-entry.is-removing { pointer-events:none; }

body.notification-open { overflow:hidden; overscroll-behavior:none; }
#notificationBackdrop { opacity:0; transition:opacity .32s ease; }
#notificationBackdrop.is-visible { opacity:1; }
.notification-sheet {
  opacity:0;
  transform:translate(-50%,calc(100% + 24px)) scale(.985);
  transform-origin:center bottom;
  overscroll-behavior:contain;
  touch-action:pan-y;
  transition:transform .42s cubic-bezier(.18,.86,.25,1),opacity .24s ease;
  box-shadow:0 -26px 80px rgba(0,0,0,.48);
}
.notification-sheet.open { opacity:1; transform:translate(-50%,0) scale(1); }
.notification-sheet.is-dragging { transition:none; }
.notification-sheet .sheet-handle { width:52px; height:6px; background:#4d515a; cursor:grab; }
.notification-sheet.open .notification-entry { animation:notificationRowIn .38s cubic-bezier(.18,.86,.25,1) both; }
.notification-sheet.open .notification-entry:nth-child(2) { animation-delay:.035s; }
.notification-sheet.open .notification-entry:nth-child(3) { animation-delay:.07s; }
.notification-sheet.open .notification-entry:nth-child(4) { animation-delay:.105s; }
.notification-sheet.open .notification-entry:nth-child(n+5) { animation-delay:.13s; }
@keyframes notificationRowIn { from { opacity:0; transform:translateY(12px) scale(.985); } to { opacity:1; transform:none; } }

.admin-extra-work-alert {
  display:grid; grid-template-columns:44px minmax(0,1fr) auto 18px; align-items:center; gap:11px;
  width:100%; margin:20px 0 4px; padding:13px; border:1px solid rgba(199,108,255,.42); border-radius:20px;
  color:#fff; background:radial-gradient(circle at 12% 0%,rgba(199,108,255,.22),transparent 48%),linear-gradient(135deg,#211528,#121318 68%);
  box-shadow:0 14px 36px rgba(85,0,128,.16); text-align:left; cursor:pointer;
  animation:extraAlertIn .42s var(--ease-spring) both;
}
.admin-extra-work-alert-icon { display:grid; place-items:center; width:44px; height:44px; border-radius:15px; background:linear-gradient(145deg,#c76cff,#7900e9); font-size:22px; font-weight:850; }
.admin-extra-work-alert > span:nth-child(2) { display:grid; min-width:0; gap:3px; }
.admin-extra-work-alert small { color:var(--purple-soft); font-size:8px; font-weight:900; letter-spacing:.12em; }
.admin-extra-work-alert strong { overflow:hidden; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.admin-extra-work-alert b { display:grid; place-items:center; min-width:28px; height:28px; border-radius:10px; color:#171019; background:var(--purple-soft); font-size:11px; }
.admin-extra-work-alert i { color:var(--purple-soft); font-style:normal; font-size:22px; transition:transform .22s ease; }
.admin-extra-work-alert:active i { transform:translateX(3px); }
@keyframes extraAlertIn { from { opacity:0; transform:translateY(10px) scale(.985); } to { opacity:1; transform:none; } }

.admin-action-cloud h2 { margin:8px 32px 6px 0; }
.admin-action-cloud > p { margin:0 0 16px; color:var(--muted); line-height:1.5; }
.admin-action-cloud-body { display:grid; gap:10px; }
.cloud-business-group { display:grid; gap:8px; padding:13px; border:1px solid rgba(255,255,255,.09); border-radius:18px; background:rgba(5,6,8,.5); animation:cloudGroupIn .34s var(--ease-spring) both; }
.cloud-business-group:nth-child(2) { animation-delay:.035s; }
.cloud-business-group:nth-child(3) { animation-delay:.07s; }
.cloud-business-group:nth-child(n+4) { animation-delay:.1s; }
@keyframes cloudGroupIn { from { opacity:0; transform:translateY(10px) scale(.985); } to { opacity:1; transform:none; } }
.cloud-business-head { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.cloud-business-head strong { font-size:13px; }
.cloud-business-head small { color:var(--muted); font-size:10px; }
.cloud-action-row { display:grid; gap:8px; padding:10px; border-radius:14px; background:#0d0f12; }
.cloud-action-row > span { color:#d8dbe0; font-size:11px; line-height:1.45; }
.cloud-action-buttons { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.cloud-action-buttons button,.cloud-single-action { border:1px solid rgba(199,108,255,.34); border-radius:12px; padding:10px; background:rgba(199,108,255,.1); color:#fff; font-size:10px; font-weight:850; }
.cloud-action-buttons button:last-child { border-color:rgba(78,218,145,.35); background:rgba(78,218,145,.1); color:#8ff0bb; }
.cloud-meeting-row { display:grid; grid-template-columns:42px minmax(0,1fr); gap:10px; align-items:center; padding:12px; border:1px solid rgba(255,255,255,.08); border-radius:16px; background:rgba(7,8,10,.55); }
.cloud-meeting-row i { display:grid; place-items:center; width:42px; height:42px; border-radius:15px; background:rgba(199,108,255,.14); color:var(--purple-soft); font-style:normal; }
.cloud-meeting-row div { display:grid; gap:4px; }
.cloud-meeting-row strong { font-size:12px; }
.cloud-meeting-row small { color:var(--muted); font-size:10px; }

.admin-payment-disclosure { margin-top:12px; }
.admin-payment-disclosure .admin-payment-board { margin:0; }
.admin-finance-grid { grid-template-columns:1fr !important; }
.admin-finance-grid .admin-workspace-section { border-color:rgba(199,108,255,.2); transition:border-color .25s ease,box-shadow .25s ease,background .25s ease; }
.admin-finance-grid .admin-workspace-section[open] { border-color:rgba(199,108,255,.5); background:linear-gradient(145deg,rgba(199,108,255,.09),rgba(13,15,18,.98)); box-shadow:0 18px 46px rgba(0,0,0,.25); }
.admin-finance-grid .admin-workspace-body { padding:0 16px 16px; }
.admin-finance-grid .admin-tool-card { padding:14px; border-radius:18px; background:rgba(5,6,8,.38); }
.admin-queue-inline-actions { overflow:hidden; transform-origin:top; }
.admin-queue-job { transition:border-color .24s ease,box-shadow .24s ease,transform .24s var(--ease-spring); }
.admin-queue-job:has(.admin-today-job.expanded) { border-color:rgba(199,108,255,.42); box-shadow:0 14px 34px rgba(0,0,0,.24); transform:translateY(-1px); }

.page[data-page="extra-work"].active { animation:extraWorkPageIn .36s cubic-bezier(.18,.86,.25,1) both; }
@keyframes extraWorkPageIn { from { opacity:0; transform:translateY(14px) scale(.992); } to { opacity:1; transform:none; } }

@media (max-width:430px) {
  .focus-cloud { width:calc(100vw - 24px); max-height:82vh; padding:20px 16px; border-radius:24px; }
  .home-extra-status > summary { grid-template-columns:minmax(0,1fr) 18px; }
  .home-extra-status > summary b { display:none; }
}
@media (prefers-reduced-motion:reduce) {
  .focus-backdrop,.focus-cloud,.notification-sheet,#notificationBackdrop,.notification-entry,.notification-item,.notification-inline-actions,.admin-queue-job { transition:none !important; animation:none !important; }
}
