@keyframes dash-page-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes dash-reveal{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes dash-row-out{to{opacity:0;transform:translate(28px)}}@keyframes dash-toast-in{0%{opacity:0;transform:translate(36px)scale(.96)}to{opacity:1;transform:none}}@keyframes dash-toast-bar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes dash-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes dash-progress-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.dash-page{--ink:#0e141b;--steel-900:#131b24;--steel-800:#1b2631;--steel-700:#243040;--steel-500:#4a5c6b;--steel-400:#6e8091;--steel-300:#9aabb8;--steel-100:#e2e8ed;--concrete:#edf1f4;--paper:#f7f9fb;--white:#fff;--hivis:#ffc93c;--hivis-soft:#fff3d0;--hivis-deep:#e5a900;--signal:#12b886;--sky:#3d8fe0;--violet:#7c6bff;--flare:#ff5a3c;--crimson:#b02d14;--ease:cubic-bezier(.22, .68, .32, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--font-display:var(--font-dispatch-display), sans-serif;--font-sans:var(--font-dispatch-sans), sans-serif;--font-mono:var(--font-hivis-mono), monospace;background:var(--paper);color:var(--ink);font-family:var(--font-sans);animation:dash-page-in .45s var(--ease-out) both;min-height:100dvh}.dash-drawer-portal{--ink:#0e141b;--steel-900:#131b24;--steel-800:#1b2631;--steel-700:#243040;--steel-500:#4a5c6b;--steel-400:#6e8091;--steel-300:#9aabb8;--steel-100:#e2e8ed;--concrete:#edf1f4;--paper:#f7f9fb;--white:#fff;--hivis:#ffc93c;--hivis-soft:#fff3d0;--hivis-deep:#e5a900;--signal:#12b886;--sky:#3d8fe0;--violet:#7c6bff;--flare:#ff5a3c;--crimson:#b02d14;--ease:cubic-bezier(.22, .68, .32, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--font-display:var(--font-dispatch-display), sans-serif;--font-sans:var(--font-dispatch-sans), sans-serif;--font-mono:var(--font-hivis-mono), monospace;z-index:110;pointer-events:none;font-family:var(--font-sans);color:var(--ink);position:fixed;inset:0}.dash-drawer-portal .dash-backdrop,.dash-drawer-portal .dash-side{pointer-events:auto}.dash-drawer-portal .dash-backdrop:not(.is-open){pointer-events:none}.dash{min-width:0;min-height:100dvh}@media (min-width:901px){.dash-page{grid-template-columns:244px minmax(0,1fr);min-height:100dvh;display:grid}.dash-side{grid-area:1/1;width:100%;max-width:100%;transform:none}.dash{grid-area:1/2}}.dash-side{background:var(--steel-900);z-index:40;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex-direction:column;align-self:start;gap:4px;height:100dvh;max-height:100dvh;padding:24px 16px;display:flex;position:sticky;top:0;overflow:hidden auto}.dash-side__group{flex-direction:column;gap:4px;min-width:0;display:flex}.dash-user{background:#ffffff0d;border-radius:10px;align-items:center;gap:12px;min-width:0;margin-bottom:8px;padding:12px;display:flex}.dash-user__face{flex-shrink:0;width:clamp(2rem,2.1vw + 1.6rem,2.5rem);height:clamp(2rem,2.1vw + 1.6rem,2.5rem);position:relative}.dash-user__face .dash-avatar-sm{border:2px solid #ffffff8c;border-radius:50%;width:100%;height:100%;box-shadow:0 0 0 1px #00000059}.dash-user__meta{flex:1;min-width:0}.dash-avatar,.dash-avatar-sm{background:var(--hivis);color:var(--ink);font-family:var(--font-display);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-weight:400;display:inline-flex;overflow:hidden}.dash-avatar .profile-face__img,.dash-avatar-sm .profile-face__img{object-fit:cover;width:100%;height:100%;display:block}.dash-avatar{width:40px;height:40px;font-size:.85rem}.dash-avatar-sm{width:34px;height:34px;font-size:.72rem}.dash-user__name{font-family:var(--font-display);color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;line-height:1.2;overflow:hidden}.dash-user__role{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--hivis);margin-top:3px;font-size:.64rem}.dash-user__online{background:var(--signal);border:2px solid var(--steel-900);box-sizing:border-box;pointer-events:none;border-radius:50%;width:28%;min-width:8px;max-width:12px;height:28%;min-height:8px;max-height:12px;position:absolute;bottom:0;right:0;transform:translate(15%,15%)}.dash-sec{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--steel-500);margin:20px 0 8px;padding:0 12px;font-size:.64rem}.dash-nav{flex-direction:column;gap:2px;display:flex}.dash-link{color:var(--steel-300);transition:background .18s var(--ease), color .18s var(--ease);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:11px;width:100%;padding:10px 12px;font-family:inherit;font-size:.92rem;font-weight:600;text-decoration:none;display:flex}.dash-link svg{flex-shrink:0;width:17px;height:17px}.dash-link:hover{color:#fff;background:#ffffff0f}.dash-link.is-active{background:var(--hivis);color:var(--ink)}.dash-link__pill{font-family:var(--font-mono);background:#ffffff1a;border-radius:999px;margin-left:auto;padding:2px 7px;font-size:.68rem}.dash-link.is-active .dash-link__pill{background:#0e141b29}.dash-link--logout{color:#ffb4a4;background:#ff5a3c2e;margin-top:4px}.dash-link--logout:hover{color:#fff;background:#ff5a3c52}.dash-main{background:var(--paper);min-width:0;padding:30px 30px 60px}.dash-topbar,.dash-backdrop,.dash-side__close{display:none}.dash-side__head{display:contents}.dash-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:26px;display:flex}.dash-eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--steel-400);margin:0 0 8px;font-size:.72rem}.dash-title{font-family:var(--font-display);color:var(--ink);margin:0 0 8px;font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.05}.dash-sub{color:var(--steel-400);max-width:42rem;margin:0;font-size:.98rem}.dash-head__actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dash-btn{letter-spacing:.01em;cursor:pointer;white-space:nowrap;height:40px;transition:transform .15s var(--ease), background .15s var(--ease), border-color .15s var(--ease), box-shadow .15s var(--ease), filter .15s var(--ease);box-sizing:border-box;border:1.5px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-family:inherit;font-size:.84rem;font-weight:700;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.dash-btn:active{transform:scale(.98)}@keyframes dash-ripple{0%{opacity:.45;transform:scale(0)}to{opacity:0;transform:scale(1)}}.dash-ripple{pointer-events:none;animation:dash-ripple .52s var(--ease-out) forwards;background:#0e141b38;border-radius:999px;position:absolute}.dash-btn--primary{background:var(--hivis);color:var(--ink);border-color:var(--hivis-deep)}.dash-btn--primary:hover{background:#ffd45c}.dash-btn--primary:disabled{opacity:.65;cursor:not-allowed}.dash-btn--secondary{background:var(--concrete);border-color:var(--steel-300);color:var(--ink)}.dash-btn--secondary:hover{background:var(--steel-100);border-color:var(--steel-500)}.dash-btn--secondary:disabled{opacity:.65;cursor:not-allowed}.dash-btn--ghost{border-color:var(--steel-100);color:var(--ink);background:#fff}.dash-btn--ghost:hover{border-color:var(--steel-300);background:var(--concrete)}.dash-btn--danger{background:var(--flare);color:#fff;border-color:#e0452a}.dash-btn--danger:hover{background:#ff6f52}.dash-btn--signal{color:#07785a;background:#12b88629;border-color:#12b88659}.dash-btn--signal:hover{background:#12b88647}.dash-btn--sm{height:34px;padding:0 14px;font-size:.8rem}.dash-btn--review,.dash-btn-review{color:#5c3d00;border-color:var(--hivis-deep);background:linear-gradient(135deg,#ffd45a 0%,#ffc93c 45%,#f0a800 100%);box-shadow:inset 0 1px #ffffff73,0 4px 10px #e5a90038}.dash-btn--review:hover,.dash-btn-review:hover{filter:brightness(1.03)}.dash-btn--review svg,.dash-btn-review svg{fill:currentColor;flex-shrink:0}@keyframes dash-completed-pulse{0%,to{box-shadow:0 0 #12b88659,inset 0 1px #ffffff73,0 4px 10px #12b88633}50%{box-shadow:0 0 0 7px #12b88600,inset 0 1px #ffffff73,0 4px 12px #12b88647}}.dash-btn--completed,.dash-btn-completed{color:#065f46;background:linear-gradient(135deg,#d8f8ec 0%,#a7f0d2 55%,#7ee2bb 100%);border-color:#0a9a6c;animation:1.8s ease-in-out infinite dash-completed-pulse;box-shadow:inset 0 1px #ffffff73,0 4px 10px #12b88633}.dash-btn--completed:hover,.dash-btn-completed:hover{color:#044c38;filter:brightness(1.03)}.dash-btn-review,.dash-btn-completed{letter-spacing:.01em;white-space:nowrap;cursor:pointer;box-sizing:border-box;border-style:solid;border-width:1.5px;border-radius:999px;justify-content:center;align-items:center;gap:6px;height:40px;padding:0 16px;font-family:inherit;font-size:.84rem;font-weight:700;text-decoration:none;display:inline-flex}.dash-btn-review.dash-btn--sm,.dash-btn-completed.dash-btn--sm,.dash-btn--sm.dash-btn--review,.dash-btn--sm.dash-btn--completed{height:34px;padding:0 14px;font-size:.8rem}.dash-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.paid-job-row{border-top:1px solid var(--steel-100);color:inherit;transition:background .16s var(--ease), border-color .16s var(--ease);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin:0 -10px;padding:12px 10px;display:flex}.paid-job-row:first-of-type{border-top-color:#0000;margin-top:8px}.paid-job-row:hover{background:linear-gradient(90deg,#ffc93c2e 0%,#fff3d08c 100%);border-top-color:#0000}.paid-job-row:hover+.paid-job-row{border-top-color:#0000}.paid-job-row__main{min-width:0;color:inherit;flex:1;text-decoration:none}.paid-job-row__main:hover strong{text-underline-offset:2px;text-decoration:underline}.paid-job-row__aside{flex-shrink:0;align-items:center;gap:8px;display:flex}.paid-job-row__meta{color:var(--steel-400);margin-top:2px;font-size:.82rem}.stat-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.stat-card{background:#fff;border:1px solid #e2e8edcc;border-radius:12px;padding:20px;box-shadow:0 1px 2px #0e141b0a}.stat-card--clickable{cursor:pointer;transition:transform .18s var(--ease), box-shadow .18s var(--ease), border-color .18s var(--ease)}.stat-card--clickable:hover{border-color:#12b88659;transform:translateY(-2px);box-shadow:0 8px 20px #0e141b14}.stat-card--clickable:focus-visible{outline-offset:2px;outline:2px solid #12b886}.stat-card[data-reveal]{opacity:0;transform:translateY(14px)}.stat-card[data-reveal].is-in{animation:dash-reveal .5s var(--ease-out) both}.stat-card__icon{background:var(--hivis-soft);width:42px;height:42px;color:var(--hivis-deep);border-radius:11px;place-items:center;margin-bottom:14px;display:grid}.stat-card__icon svg{color:inherit;stroke:currentColor}.stat-card__icon--sky{color:#2b78c9;background:#3d8fe029}.stat-card__icon--violet{color:#6254e8;background:#7c6bff29}.stat-card__icon--signal{color:#0d9b70;background:#12b88629}.stat-card__icon--flare{color:#e04428;background:#ff5a3c29}.stat-card__icon--hivis{color:#c48f00;background:#ffc93c47}.stat-card__value{font-family:var(--font-display);margin:0 0 6px;font-size:1.85rem;line-height:1}.stat-card__label{color:var(--steel-400);margin:0 0 8px;font-size:.82rem}.stat-card__delta{font-family:var(--font-mono);font-size:.72rem}.stat-card__delta.up{color:#07785a}.stat-card__delta.down{color:#b02d14}.dash-tabs{background:var(--concrete);border-radius:999px;flex-wrap:wrap;gap:4px;margin-bottom:20px;padding:4px;display:inline-flex}.dash-tabs-scroll{max-width:100%;margin-bottom:20px}.dash-tabs-scroll .dash-tabs{margin-bottom:0}.dash-tab{color:var(--steel-500);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:9px 16px;font-family:inherit;font-size:.88rem;font-weight:600}.dash-tab.is-active{color:var(--ink);background:#fff;box-shadow:0 2px 8px #0e141b14}.chip-row{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.dash-chip{border:1.5px solid var(--steel-100);color:var(--steel-500);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:7px 12px;font-family:inherit;font-size:.82rem;font-weight:600;display:inline-flex}.dash-chip.is-active{background:var(--ink);border-color:var(--ink);color:#fff}.dash-chip__count{min-width:1.35rem;height:1.35rem;font-family:var(--font-mono);background:var(--concrete);color:var(--steel-500);border-radius:999px;place-items:center;padding:0 5px;font-size:.68rem;font-weight:600;display:inline-grid}.dash-chip.is-active .dash-chip__count{color:#fff;background:#ffffff2e}.status-badge{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:4px 9px;font-size:.68rem;font-weight:600;display:inline-flex}.status-badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.status-badge--requested{color:#9a6b00;background:#fff3d0}.status-badge--accepted{color:#1f5f9e;background:#3d8fe026}.status-badge--declined{color:#b02d14;background:#ff5a3c26}.status-badge--paid{color:#4a3db8;background:#7c6bff26}.status-badge--success{color:#07785a;background:#12b88626}.status-badge--pending,.status-badge--initiated{color:#9a6b00;background:#ffc93c38}.status-badge--failed{color:#b02d14;background:#ff5a3c26}.status-badge--refunded{color:#5546d6;background:#7c6bff24}.status-badge--in_progress{color:#07785a;background:#12b88626}.status-badge--completed{background:var(--steel-100);color:var(--steel-500)}.status-badge--cancelled{color:#b02d14;background:#b02d141f}.status-badge--active{color:#07785a;background:#12b88626}.status-badge--inactive{color:#5c6f7e;background:#9aabb82e}.status-badge--suspended{color:#9a6b00;background:#fff3d0}.status-badge--banned{color:#b02d14;background:#b02d141f}.table-wrap{background:#fff;border:1px solid #e2e8ede6;border-radius:12px;overflow:hidden;box-shadow:0 4px 18px #0e141b0d}.dash-table{border-collapse:collapse;width:100%}.dash-table th{background:var(--concrete);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--steel-500);text-align:left;padding:12px 14px;font-size:.68rem;font-weight:600}.dash-table td{border-top:1px solid var(--steel-100);vertical-align:middle;padding:14px;font-size:.9rem}.dash-table tbody tr{transition:background .15s var(--ease)}.dash-table tbody tr:hover{background:var(--paper)}.dash-table tr.is-leaving{animation:dash-row-out .35s var(--ease) forwards}.table-foot{border-top:1px solid var(--steel-100);font-family:var(--font-mono);color:var(--steel-400);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:.72rem;display:flex}.pager{gap:6px;display:flex}.pager button{border:1.5px solid var(--steel-100);cursor:pointer;background:#fff;border-radius:7px;min-width:32px;height:32px;font-family:inherit;font-weight:600}.pager button:disabled{opacity:.45;cursor:not-allowed}.cell-stack{flex-direction:column;gap:2px;display:flex}.cell-stack small{color:var(--steel-400);font-size:.78rem}.cell-person{align-items:center;gap:10px;display:flex}.dash-empty{text-align:center;color:var(--steel-400);padding:48px 20px}.dash-empty__icon{background:var(--concrete);width:52px;height:52px;color:var(--steel-500);border-radius:12px;place-items:center;margin:0 auto 14px;display:grid}.dash-card{background:#fff;border:1px solid #e2e8ede6;border-radius:12px;padding:20px;box-shadow:0 1px 2px #0e141b0a}.dash-card__head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.dash-card__title{font-family:var(--font-display);margin:0;font-size:1.15rem}.dash-card__link{color:var(--steel-500);font-size:.85rem;font-weight:600;text-decoration:none}.dash-card__link:hover{color:var(--ink)}.dash-grid-2{grid-template-columns:1.2fr 1fr;gap:14px;display:grid}.dash-grid-split{grid-template-columns:1.4fr 1fr;gap:14px;margin-bottom:14px;display:grid}.req-row{border-top:1px solid var(--steel-100);align-items:center;gap:12px;padding:12px 0;display:flex}.req-row.is-leaving{animation:dash-row-out .35s var(--ease) forwards}.req-row:first-of-type{border-top:0;padding-top:0}.req-row__meta{flex:1;min-width:0}.req-row__actions{flex-shrink:0;gap:8px;display:flex}.job-strip{flex-direction:column;gap:10px;display:flex}.job-mini{border:1.5px solid var(--steel-100);border-radius:10px;flex-direction:column;padding:12px;display:flex}.job-mini__top{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.job-mini__top-end{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.job-mini__details{color:var(--steel-400);text-underline-offset:2px;font-size:.74rem;font-weight:600;text-decoration:underline}.job-mini__details:hover{color:var(--ink)}.progress-list{flex-direction:column;gap:14px;display:flex}.progress-item__label{justify-content:space-between;margin-bottom:6px;font-size:.85rem;display:flex}.progress-track{background:var(--concrete);border-radius:999px;height:8px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--hivis);width:0;height:100%;transition:width 1s var(--ease-out)}.progress-fill.is-on{width:var(--w)}.progress-fill--signal{background:var(--signal)}.progress-fill--sky{background:var(--sky)}.tip-box{background:var(--hivis-soft);color:var(--ink);border-radius:10px;margin-top:16px;padding:12px 14px;font-size:.85rem}.sched{grid-template-columns:72px repeat(7,1fr);gap:4px;display:grid;overflow-x:auto}.sched__head,.sched__time{font-family:var(--font-mono);color:var(--steel-400);text-align:center;padding:6px 2px;font-size:.68rem}.sched__cell{cursor:pointer;background:var(--concrete);min-height:28px;transition:transform .12s var(--ease), background .12s var(--ease);border:0;border-radius:5px}.sched__cell.is-open{background:var(--hivis)}.sched__cell.is-booked{background:var(--steel-700);cursor:default}.sched__cell.is-off{border:1px dashed var(--steel-100);cursor:not-allowed;background:0 0}.sched__cell:not(.is-booked):not(.is-off):hover{transform:scale(1.07)}.sched-legend{color:var(--steel-400);gap:14px;margin-top:12px;font-size:.8rem;display:flex}.sched-legend i{vertical-align:middle;border-radius:3px;width:12px;height:12px;margin-right:6px;display:inline-block}.chart{flex-shrink:0;align-items:stretch;gap:10px;width:100%;height:148px;min-height:148px;display:flex}.chart--sm{height:120px}.chart--dense{gap:2px}.chart--dense .chart__bar{border-radius:3px 3px 1px 1px;max-width:12px}.chart--dense .chart__label{font-size:.58rem;transform:scale(.92)}.chart__col{flex-direction:column;flex:1;align-items:center;gap:8px;min-width:0;min-height:0;display:flex}.chart__plot{border-bottom:1px solid var(--steel-100);flex:1;justify-content:center;align-items:flex-end;width:100%;min-height:0;display:flex}.chart__bar{background:var(--hivis);width:100%;max-width:36px;height:0;transition:height .9s var(--ease-out);cursor:default;border-radius:6px 6px 2px 2px;flex-shrink:0;position:relative}.chart__bar.is-on{height:var(--h);max-height:100%}.chart__bar:hover:after{content:attr(data-tip);background:var(--ink);color:#fff;font-family:var(--font-mono);white-space:nowrap;z-index:2;border-radius:6px;padding:4px 7px;font-size:.68rem;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.chart__label{font-family:var(--font-mono);color:var(--steel-400);flex-shrink:0;font-size:.68rem;line-height:1}.mb-earn-overview{margin-bottom:14px}.earn-chart__head{flex-wrap:wrap;align-items:flex-start;gap:12px}.earn-chart-card{flex-direction:column;display:flex}.dash-grid-2 .earn-chart-card{min-height:100%}.dash-grid-2 .earn-chart-card .chart,.dash-grid-2 .earn-chart-card .chart-area{width:100%;margin-top:auto}.earn-chart__tools{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.earn-seg{background:var(--concrete);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.earn-seg__btn{color:var(--steel-500);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:4px;min-width:32px;min-height:30px;padding:6px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.earn-seg__btn.is-active{color:var(--ink);background:#fff;box-shadow:0 1px 4px #0e141b14}.chart-area{flex-direction:column;flex-shrink:0;gap:8px;height:148px;min-height:148px;display:flex}.chart-area__plot{border-bottom:1px solid var(--steel-100);flex:1;align-items:flex-end;width:100%;min-height:0;display:flex}.chart-area__svg{width:100%;height:100%;display:block;overflow:visible}.chart-area__labels{font-family:var(--font-mono);color:var(--steel-400);flex-shrink:0;justify-content:space-between;gap:2px;min-height:1em;font-size:.64rem;display:flex}.chart-area__labels span{text-align:center;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.rank-list{flex-direction:column;gap:12px;display:flex}.rank-row{grid-template-columns:28px 1fr auto;align-items:center;gap:10px;display:grid}.rank-row__n{font-family:var(--font-mono);color:var(--steel-400);font-size:.72rem}.rank-row__body{flex-direction:column;gap:6px;min-width:0;display:flex}.rank-row__body strong{font-size:.9rem;font-weight:600}.rank-row__bar{background:var(--concrete);border-radius:999px;height:8px;overflow:hidden}.rank-row__fill,.rank-row__bar i{height:100%;width:var(--w,0%);border-radius:inherit;transform-origin:0;will-change:transform;background:linear-gradient(90deg,#0d9b70,#12b886);display:block;transform:scaleX(0)}.rank-row__fill.is-on,.rank-row__bar i.is-on{animation:.95s cubic-bezier(.22,1,.36,1) both dash-progress-grow;animation-delay:var(--delay,0s)}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.status-mix{flex-direction:column;gap:12px;display:flex}.status-mix__row{grid-template-columns:minmax(7.5rem,9.5rem) 1fr auto;align-items:center;gap:10px;font-size:.84rem;display:grid}.status-mix__label{text-transform:capitalize;color:var(--steel-600,#4a5a68);align-items:center;gap:8px;min-width:0;font-weight:500;display:inline-flex}.status-mix__dot{width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, currentColor 18%, transparent);background:currentColor;border-radius:50%;flex-shrink:0}.status-mix__track{background:var(--concrete);border-radius:999px;height:8px;overflow:hidden}.status-mix__fill{height:100%;width:var(--w,0%);border-radius:inherit;transform-origin:0;will-change:transform;background:#3b82f6;display:block;transform:scaleX(0)}.status-mix__fill.is-on{animation:.95s cubic-bezier(.22,1,.36,1) both dash-progress-grow;animation-delay:var(--delay,0s)}.status-mix__row em{font-style:normal;font-family:var(--font-mono);color:var(--steel-500);text-align:right;min-width:1.5ch;font-size:.78rem}.status-mix__row--requested{--mix:#d97706}.status-mix__row--accepted{--mix:#2563eb}.status-mix__row--declined{--mix:#dc2626}.status-mix__row--paid{--mix:#7c6bff}.status-mix__row--en_route{--mix:#0891b2}.status-mix__row--on_site{--mix:#0d9488}.status-mix__row--in_progress{--mix:#12b886}.status-mix__row--completed{--mix:#059669}.status-mix__row--cancelled{--mix:#b02d14}.status-mix__row--default{--mix:#64748b}.status-mix__row .status-mix__label{color:var(--mix)}.status-mix__row .status-mix__fill{background:linear-gradient(90deg, color-mix(in srgb, var(--mix) 78%, #fff), var(--mix))}@media (prefers-reduced-motion:reduce){.status-mix__fill.is-on,.rank-row__fill.is-on{animation:none;transform:scaleX(1)}}.queue-list{flex-direction:column;display:flex}.queue-row{border:1.5px solid var(--steel-100);border-radius:10px;justify-content:space-between;gap:12px;margin-bottom:8px;padding:12px;display:flex}.queue-row__title{margin:0 0 4px;font-weight:600}.queue-row__detail{color:var(--steel-400);margin:0;font-size:.82rem}.urgency{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;border-radius:999px;flex-shrink:0;height:fit-content;padding:4px 8px;font-size:.68rem}.urgency--urgent{color:var(--flare);background:#ff5a3c26}.urgency--pending{color:#9a6b00;background:#fff3d0}.urgency--new{color:var(--sky);background:#3d8fe026}.urgency--review{color:var(--violet);background:#7c6bff26}.urgency--warm{color:#9a6b00;background:#fff3d0}.timeline{padding-left:28px;position:relative}.timeline:before{content:"";background:var(--steel-100);width:2px;position:absolute;top:6px;bottom:6px;left:7px}.timeline__step{padding:0 0 22px;position:relative}.timeline__dot{background:var(--concrete);width:16px;height:16px;box-shadow:0 0 0 1px var(--steel-100);border:2px solid #fff;border-radius:50%;position:absolute;top:2px;left:-28px}.timeline__step.is-done .timeline__dot{background:var(--signal);box-shadow:none}.timeline__step.is-current .timeline__dot{background:var(--hivis);box-shadow:0 0 0 4px #ffc93c59}.timeline__title{margin:0 0 4px;font-weight:600}.timeline__body{color:var(--steel-400);margin:0;font-size:.85rem}.switch{background:var(--steel-100);cursor:pointer;border:0;border-radius:999px;width:46px;height:26px;padding:0;position:relative}.switch i{width:20px;height:20px;transition:transform .2s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.switch.is-on{background:var(--signal)}.switch.is-on i{transform:translate(20px)}.switch-wrap{align-items:center;gap:10px;font-size:.88rem;font-weight:600;display:flex}.skel{background:linear-gradient(90deg,#edf1f4 25%,#f7f9fb 50%,#edf1f4 75%) 0 0/200% 100%;border-radius:8px;animation:1.2s linear infinite dash-shimmer}.skel-row{height:52px;margin:10px 14px}.skel-card{border-radius:16px;height:180px}.dash-modal{--ink:#0e141b;--steel-900:#131b24;--steel-800:#1b2631;--steel-700:#243040;--steel-500:#4a5c6b;--steel-400:#6e8091;--steel-300:#9aabb8;--steel-100:#e2e8ed;--concrete:#edf1f4;--paper:#f7f9fb;--white:#fff;--hivis:#ffc93c;--hivis-soft:#fff3d0;--hivis-deep:#e5a900;--signal:#12b886;--sky:#3d8fe0;--violet:#7c6bff;--flare:#ff5a3c;--crimson:#b02d14;--ease:cubic-bezier(.22, .68, .32, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--font-display:var(--font-dispatch-display), sans-serif;--font-sans:var(--font-dispatch-sans), sans-serif;--font-mono:var(--font-hivis-mono), monospace;z-index:1000;box-sizing:border-box;font-family:var(--font-sans);color:var(--ink);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.dash-modal__backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0e141b73;position:absolute;inset:0}.dash-modal__panel{z-index:1;width:min(520px,100%);max-height:min(90vh,90dvh);animation:dash-page-in .28s var(--ease-out);pointer-events:auto;background:#fff;border-radius:14px;margin:auto;padding:22px;position:relative;overflow-y:auto;box-shadow:0 24px 60px #0e141b40}.dash-modal:has(.pay-receipt) .dash-modal__panel{width:min(640px,100%)}.dash-modal__title{font-family:var(--font-display);margin:0 0 8px;font-size:1.3rem}.dash-modal__body{color:var(--steel-400);margin:0 0 18px;font-size:.94rem}.dash-modal__actions{justify-content:flex-end;gap:8px;display:flex}.star-row{gap:6px;margin:12px 0;display:flex}.star-row button{cursor:pointer;color:var(--steel-100);transition:transform .12s var(--ease);background:0 0;border:0;padding:0}.star-row button.is-on{color:var(--hivis-deep)}.star-row button:hover{transform:scale(1.12)}.dash-textarea{border:1.5px solid var(--steel-100);width:100%;min-height:96px;font:inherit;resize:vertical;box-sizing:border-box;background:#fff;border-radius:10px;margin-top:6px;margin-bottom:14px;padding:14px 12px 12px}.dash-textarea:focus{border-color:var(--hivis);outline:none}.dash-input{border:1.5px solid var(--steel-100);width:100%;height:40px;font:inherit;background:#fff;border-radius:9px;padding:0 12px}.dash-input:focus{border-color:var(--hivis);outline:none}.dash-toasts{--ink:#0e141b;--steel-300:#9aabb8;--hivis:#ffc93c;--flare:#ff5a3c;--ease-out:cubic-bezier(.16, 1, .3, 1);z-index:1100;pointer-events:none;flex-direction:column;gap:10px;width:min(340px,100vw - 32px);display:flex;position:fixed;bottom:18px;right:18px}.dash-toast{background:var(--ink);color:#fff;animation:dash-toast-in .35s var(--ease-out);pointer-events:auto;border-radius:12px;padding:14px 16px 12px;position:relative;overflow:hidden;box-shadow:0 16px 40px #00000047}.dash-toast strong{margin-bottom:4px;display:block}.dash-toast span{color:var(--steel-300);font-size:.85rem}.dash-toast__bar{background:var(--hivis);transform-origin:0;width:100%;height:3px;animation:3.6s linear forwards dash-toast-bar;position:absolute;bottom:0;left:0}.review-card{border:1px solid var(--steel-100);background:#fff;border-radius:12px;margin-bottom:10px;padding:16px}.review-card__top{align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.review-card__for{color:var(--steel-400);margin:2px 0 4px;font-size:.82rem}.review-card__tech{color:#2b78c9;font-weight:600;text-decoration:none}.review-card__tech:hover{text-decoration:underline}.review-card__post{color:#2b78c9;transition:background .18s var(--ease), border-color .18s var(--ease);background:#3d8fe014;border:1px solid #3d8fe02e;border-radius:10px;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;text-decoration:none;display:flex}.review-card__post:hover{background:#3d8fe024;border-color:#3d8fe052}.review-card__post-title{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.88rem;font-weight:600;overflow:hidden}.review-card__post-kicker{font-style:normal;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#2b78c9;font-size:.72rem;font-weight:700}.review-card__post-go{color:#2b78c9;flex-shrink:0;font-weight:700}.review-card__actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.badge-soft{font-family:var(--font-mono);color:#07785a;background:#12b88626;border-radius:999px;padding:3px 8px;font-size:.68rem;display:inline-flex}.badge-soft--progress{color:#07785a;background:#12b88626}.badge-soft--refund{color:var(--flare);background:#ff5a3c26}.badge-soft--warn{color:#9a6208;background:#f098192e}.tech-verify-banner{color:var(--ink);background:#fff3d0;border:1px solid #e5a90066;border-radius:10px;align-items:flex-start;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex}.tech-verify-banner strong{margin-bottom:4px;font-size:.95rem;display:block}.tech-verify-banner p{color:var(--steel-500);margin:0;font-size:.88rem;line-height:1.45}.tech-manage-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:14px;display:grid}.tech-manage-tile{border:1px solid var(--steel-100);background:var(--paper);text-align:left;color:inherit;cursor:pointer;border-radius:10px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 14px 12px;text-decoration:none;transition:border-color .18s,background .18s,transform .18s;display:flex}.tech-manage-tile:hover{border-color:var(--steel-300);background:var(--white);transform:translateY(-1px)}.tech-manage-tile__icon{width:32px;height:32px;color:var(--ink);background:#ffc93c38;border-radius:8px;justify-content:center;align-items:center;margin-bottom:4px;display:inline-flex}.tech-manage-tile strong{font-size:.92rem}.tech-manage-tile>span:last-child{color:var(--steel-400);font-size:.78rem}.dash-card__sub{color:var(--steel-400);margin:6px 0 0;font-size:.85rem}.admin-filters{grid-template-columns:1.5fr 1fr 1fr;gap:10px;margin-bottom:14px;display:grid}.dash-search{display:block;position:relative}.dash-search>svg{color:var(--steel-400);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.dash-search .dash-input{width:100%;padding-left:38px}.skill-tag{background:var(--concrete);color:var(--steel-500);border-radius:999px;padding:4px 9px;font-size:.75rem;font-weight:600;display:inline-flex}.mono-muted{font-family:var(--font-mono);color:var(--steel-400);font-size:.78rem}.mono-count{font-family:var(--font-mono);font-size:.85rem}.row-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.pay-detail{flex-direction:column;gap:0;display:flex}.pay-detail__row{border-bottom:1px solid var(--steel-100);justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 0;font-size:.92rem;display:flex}.pay-detail__row:last-child{border-bottom:none;padding-bottom:0}.pay-detail__row>span:first-child{color:var(--steel-400);flex-shrink:0}.pay-detail__row>span:last-child,.pay-detail__row>strong{text-align:right;word-break:break-word}.pay-detail__mono{font-family:var(--font-mono,ui-monospace, monospace);font-size:.8rem}.pay-receipt{flex-direction:column;gap:14px;display:flex}.pay-receipt__brand{background:var(--ink);color:#fff;border-radius:14px;align-items:center;gap:12px;padding:14px 16px;display:flex}.pay-receipt__mark{width:36px;height:36px;color:var(--hivis);background:#131b24;border:1px solid #2a3642;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.pay-receipt__logo{letter-spacing:-.02em;margin:0;font-size:1.15rem;font-weight:800;line-height:1.1}.pay-receipt__logo span{color:var(--hivis)}.pay-receipt__tag{color:#6b7f8c;letter-spacing:.04em;text-transform:uppercase;margin:2px 0 0;font-size:.72rem}.pay-receipt__code{text-align:right;flex-direction:column;align-items:flex-end;gap:6px;margin-left:auto;display:flex}.pay-receipt__code strong{letter-spacing:.02em;font-size:.85rem}.pay-receipt__hero{background:var(--hivis-soft);border-radius:12px;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 16px;display:flex}.pay-receipt__hero span{color:var(--steel-400);font-size:.82rem}.pay-receipt__hero strong{color:var(--ink);font-size:1.35rem}.pay-receipt__grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.pay-receipt__card{border:1px solid var(--steel-100);background:#fff;border-radius:12px;padding:12px 14px}.pay-receipt__card--wide{grid-column:1/-1}.pay-receipt__card h4{letter-spacing:.08em;text-transform:uppercase;color:var(--steel-400);border-left:3px solid var(--hivis);margin:0 0 10px;padding-left:8px;font-size:.72rem}.pay-receipt__card dl{grid-template-columns:1fr 1fr;gap:10px 14px;margin:0;display:grid}.pay-receipt__card dt{color:var(--steel-400);margin:0;font-size:.72rem}.pay-receipt__card dd{color:var(--ink);word-break:break-word;margin:2px 0 0;font-size:.9rem;font-weight:650}.pay-receipt__notes{grid-column:1/-1}@media (max-width:560px){.pay-receipt__grid,.pay-receipt__card dl{grid-template-columns:1fr}.pay-receipt__brand{flex-wrap:wrap}.pay-receipt__code{align-items:flex-start;width:100%;margin-left:0}}.dash-table--payments .row-actions{flex-wrap:wrap;justify-content:flex-start}.dash-icon-btn{border:1.5px solid var(--steel-100);width:34px;height:34px;color:var(--steel-500);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.dash-icon-btn:hover{border-color:var(--steel-300);color:var(--ink)}.pager--nums button.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}.progress-track--thin{height:6px}.rank-row__jobs{font-family:var(--font-mono);font-size:.78rem}.modal-stack{flex-direction:column;gap:14px;display:flex}.modal-stack.is-shake{animation:dash-shake .4s var(--ease)}@keyframes dash-shake{0%,to{transform:none}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.field{flex-direction:column;gap:6px;font-size:.88rem;display:flex}.field>span{font-weight:600}.field--row{flex-direction:row;justify-content:space-between;align-items:center;gap:12px}.field-error{color:var(--flare);font-size:.8rem;font-style:normal}.field-hint{color:var(--steel-400);font-size:.78rem}.mono-input{font-family:var(--font-mono)}.dash-input.is-error{border-color:var(--flare)}.warn-box{color:#b02d14;background:#ff5a3c1a;border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.88rem;display:flex}.tip-box{border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.88rem;display:flex}.tip-box--amber{color:#8a5a0a;background:#f0981924}.account-detail__hero{align-items:center;gap:14px;margin-bottom:16px;display:flex}.account-detail__hero h4{font-family:var(--font-display);margin:0 0 4px;font-size:1.25rem}.account-detail__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.account-detail__grid>div{background:var(--paper);border-radius:10px;flex-direction:column;gap:4px;padding:12px;display:flex}.account-detail__grid span{color:var(--steel-400);font-size:.75rem}.account-detail__grid strong{font-size:.95rem}.user-avatar{background:var(--hivis);width:40px;height:40px;color:var(--ink);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:visible}.user-avatar__img{object-fit:cover;border-radius:10px;width:100%;height:100%;display:block}.user-avatar__fallback{font-family:var(--font-display);font-size:.78rem;font-weight:400;line-height:1}.user-avatar__verified{border:2px solid var(--white,#fff);background:#12b886;border-radius:50%;width:12px;height:12px;position:absolute;bottom:-3px;right:-3px;box-shadow:0 0 0 3px #12b88647}.user-name-verified{color:#12b886;flex-shrink:0}.user-status-cell{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.user-verified-signal{color:#0a7a58;height:26px;font-family:var(--font-mono);letter-spacing:.02em;background:#12b88629;border-radius:999px;align-items:center;gap:5px;padding:0 10px;font-size:.72rem;font-weight:700;display:inline-flex}.user-verified-signal svg{color:#12b886;flex-shrink:0}.user-verified-signal--off{color:#9a6208;background:#f0981929}.user-role{letter-spacing:.02em;border-radius:999px;align-items:center;height:26px;padding:0 10px;font-size:.75rem;font-weight:700;display:inline-flex}.user-role--customer{color:#1f6bb5;background:#3d8fe024}.user-role--tech{color:#0a7a58;background:#12b88624}.user-role--admin{color:#4f3fd6;background:#7c6bff29}.user-role-select{align-items:center;min-width:148px;display:inline-flex;position:relative}.user-role-select__input{cursor:pointer;height:36px;padding-right:28px;font-size:.86rem}.user-role-select__input:disabled{opacity:.7;cursor:wait}.user-role-select__spin{color:var(--steel-400);pointer-events:none;position:absolute;right:10px}.users-table .cell-person{gap:12px}.table-wrap--scroll{box-shadow:none;background:0 0;border:0;overflow:visible}.table-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#6e809173 transparent;background:#fff;border:1px solid #e2e8ede6;border-radius:12px;width:100%;max-width:100%;overflow:auto hidden}.table-scroll::-webkit-scrollbar{height:8px}.table-scroll::-webkit-scrollbar-thumb{background:#6e809166;border-radius:999px}.users-table{width:100%;min-width:760px}.dash-table--bookings{width:100%;min-width:820px}.dash-table--payments{width:100%;min-width:640px}@media (max-width:700px){.table-scroll--stack{background:0 0;border:0;border-radius:0;overflow:visible}.table-wrap--scroll:has(.table-scroll--stack){box-shadow:none;background:0 0;border:0}.table-wrap--scroll:has(.table-scroll--stack) .table-foot{background:#fff;border:1px solid #e2e8ede6;border-radius:12px;margin-top:4px;box-shadow:0 1px 2px #0e141b0a}.dash-table--payments{min-width:0;display:block}.dash-table--payments thead{display:none}.dash-table--payments tbody{display:block}.dash-table--payments tbody tr{background:#fff;border:1px solid #e2e8ede6;border-radius:12px;margin-bottom:10px;padding:14px;display:block;box-shadow:0 1px 2px #0e141b0a}.dash-table--payments tbody tr:hover{background:#fff}.dash-table--payments tbody tr:last-child{margin-bottom:0}.dash-table--payments td{border-top:0;border-bottom:1px solid var(--steel-100);text-align:left;word-break:break-word;grid-template-columns:minmax(84px,34%) 1fr;align-items:start;gap:6px 12px;padding:10px 0;display:grid}.dash-table--payments td:before{content:attr(data-label);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--steel-400);padding-top:2px;font-size:.66rem;font-weight:600;line-height:1.35}.dash-table--payments td:last-child{border-bottom:0;padding-bottom:0}.dash-table--payments td[data-label=Payment] strong{font-family:var(--font-mono);word-break:break-all;font-size:.84rem}.dash-table--payments td[data-label=Actions]{grid-template-columns:1fr;gap:8px}.dash-table--payments td[data-label=Actions]:before{padding-top:0}.dash-table--payments .row-actions{flex-wrap:wrap;justify-content:stretch;width:100%}.dash-table--payments .row-actions .dash-btn{white-space:nowrap;flex:calc(50% - 4px);min-width:0}}.table-scroll .dash-table{display:table;overflow:visible}.users-table th,.users-table td{white-space:nowrap}.users-table .cell-stack{min-width:0}.users-table .cell-stack strong{align-items:center;gap:6px;min-width:0;max-width:220px;display:inline-flex}.users-table .cell-stack strong>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.users-table .cell-stack small{text-overflow:ellipsis;white-space:nowrap;max-width:220px;display:block;overflow:hidden}.admin-filters--users{grid-template-columns:minmax(0,1fr) minmax(150px,200px) minmax(150px,200px)}.admin-filters--bookings{grid-template-columns:minmax(180px,1.1fr) minmax(150px,1fr) minmax(140px,.9fr) minmax(140px,.9fr);align-items:start}.admin-filters--services{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;margin-bottom:16px}.admin-filters--services .dash-search{grid-column:1/-1}.admin-filters--services .dash-btn{grid-column:1/-1;width:fit-content}@media (max-width:1100px){.admin-filters--services{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.admin-filters--services{grid-template-columns:1fr}}.admin-tech-search{position:relative}.admin-tech-search .dash-search>svg{color:var(--steel-400)}.admin-tech-search__clear{width:28px;height:28px;color:var(--steel-400);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.admin-tech-search__clear:hover{background:var(--steel-100);color:var(--ink)}.admin-tech-search .dash-input{padding-right:40px}.admin-tech-search__menu{z-index:30;border:1.5px solid var(--steel-100);background:#fff;border-radius:12px;max-height:280px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 16px 40px #0e141b24}.admin-tech-search__empty{color:var(--steel-400);margin:0;padding:12px 10px;font-size:.86rem}.admin-tech-search__option{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.admin-tech-search__option:hover,.admin-tech-search__option.is-active{background:var(--hivis-soft)}.admin-tech-search__option-main{flex-direction:column;gap:2px;min-width:0;display:flex}.admin-tech-search__option-main strong{font-size:.9rem}.admin-tech-search__option-main small{color:var(--steel-400);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.admin-tech-search__option-meta{color:var(--steel-400);flex-shrink:0;font-size:.75rem}.admin-tech-link{font:inherit;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.admin-tech-link:hover{color:var(--hivis-deep);text-underline-offset:2px;text-decoration:underline}@media (max-width:900px){.admin-filters--bookings{grid-template-columns:1fr}}.table-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 4px 4px;display:flex}.pager--nums button{justify-content:center;align-items:center;min-width:36px;display:inline-flex}@media (max-width:700px){.admin-filters--users{grid-template-columns:1fr}.table-foot{flex-direction:column;align-items:stretch}.table-foot .pager{justify-content:center}.users-table{min-width:680px}}.dash-avatar--lg{width:64px;height:64px;font-size:1.1rem}.receipt-list{background:var(--concrete);border-radius:12px;flex-direction:column;gap:0;display:flex;overflow:hidden}.receipt-list>div{border-bottom:1px solid #0e141b0f;justify-content:space-between;gap:12px;padding:12px 14px;font-size:.9rem;display:flex}.receipt-list>div:last-child{border-bottom:0}.receipt-list span{color:var(--steel-400)}.dash-breadcrumb{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--steel-400);align-items:center;gap:8px;margin-bottom:10px;font-size:.72rem;display:flex}.dash-breadcrumb a{color:var(--steel-500);text-decoration:none}.dash-breadcrumb a:hover{color:var(--ink)}.cat-toolbar{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:18px;display:flex}.cat-toolbar .dash-search{flex:1;min-width:180px}.cat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.cat-card{transition:transform .2s var(--ease), opacity .2s var(--ease);background:#fff;border-radius:16px;padding:18px;box-shadow:0 8px 24px #0e141b0d}.cat-card.is-off{opacity:1;box-shadow:inset 0 0 0 1.5px var(--steel-100);background:#f3f6f8}.cat-card.is-off .cat-card__name{color:var(--steel-500)}.cat-card.is-off .cat-card__meta,.cat-card.is-off .cat-card__slug{color:var(--steel-400)}.cat-card.is-leaving{animation:dash-row-out .35s var(--ease) forwards}.cat-card[data-reveal]{opacity:0;transform:translateY(14px)}.cat-card[data-reveal].is-in{animation:dash-reveal .5s var(--ease-out) both}.cat-card__top{justify-content:space-between;align-items:flex-start;margin-bottom:14px;display:flex}.cat-glyph{background:var(--hivis-soft);width:46px;height:46px;color:var(--hivis-deep);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.cat-glyph.is-off{background:var(--concrete);color:var(--steel-300)}.cat-glyph--sm{border-radius:9px;width:34px;height:34px}.cat-card__name{font-family:var(--font-display);margin:0;font-size:1.2rem}.cat-card__slug{font-family:var(--font-mono);color:var(--steel-400);margin:4px 0 10px;font-size:.75rem}.cat-card__meta{color:var(--steel-400);margin:0 0 14px;font-size:.85rem}.cat-card__foot{justify-content:space-between;align-items:center;display:flex}.dash-switch{cursor:pointer;width:42px;height:24px;display:inline-flex;position:relative}.dash-switch input{opacity:0;width:0;height:0}.dash-switch span{background:var(--steel-100);transition:background .2s var(--ease);border-radius:999px;position:absolute;inset:0}.dash-switch span:after{content:"";width:18px;height:18px;transition:transform .2s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #00000026}.dash-switch input:checked+span{background:var(--signal)}.dash-switch input:checked+span:after{transform:translate(18px)}.icon-picker-search{align-items:center;gap:8px;display:flex;position:relative}.icon-picker-search>svg{color:var(--steel-400);pointer-events:none;z-index:1;position:absolute;left:12px}.icon-picker-search .dash-input{padding-left:36px}.icon-picker{background:var(--paper);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#6e809173 transparent;border:1.5px solid #6e809147;border-radius:12px;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;max-height:220px;padding:12px;display:grid;overflow-y:auto}.icon-picker::-webkit-scrollbar{width:8px}.icon-picker::-webkit-scrollbar-thumb{background:#6e809166;border-radius:999px}.icon-picker__empty{color:var(--steel-400);grid-column:1/-1;margin:8px 4px;font-size:.82rem;line-height:1.4}.icon-picker__btn{height:44px;color:var(--steel-500);cursor:pointer;transition:border-color .15s var(--ease), background .15s var(--ease), box-shadow .15s var(--ease);background:#fff;border:1.5px solid #e2e8ede6;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.icon-picker__btn:hover{color:var(--ink);background:#fff;border-color:#6e809173}.icon-picker__btn.is-selected{color:var(--ink);background:#3d8fe01f;border-color:#3d8fe08c;box-shadow:0 0 0 2px #3d8fe02e}.category-form .dash-input{color:var(--ink);background:#fff;border:1.5px solid #6e809152}.category-form .dash-input::placeholder{color:#9aabb8e6}.category-form .dash-input:hover{border-color:#6e80917a}.category-form .dash-input:focus{outline-offset:1px;border-color:#e5a9008c;outline:2px solid #ffc93c47}.category-form .dash-input.is-error{border-color:#ff5a3c8c;outline-color:#ff5a3c38}.category-form .icon-picker{border-color:#6e809152}.service-form{color:var(--ink);gap:12px;display:grid}.service-form .dash-field{color:var(--ink);gap:6px;margin:0;display:grid}.service-form .dash-field>span{color:var(--ink);font-size:.82rem;font-weight:600;line-height:1.3}.service-form .dash-input,.service-form select.dash-input,.service-form textarea.dash-input{color:#0e141b;width:100%;height:auto;min-height:42px;font-family:var(--font-sans);box-sizing:border-box;background:#fff;border:1.5px solid #6e809152;border-radius:9px;padding:10px 12px;font-size:.92rem;line-height:1.4}.service-form select.dash-input,.service-form input[type=file].dash-input{cursor:pointer}.service-form .service-form__select{width:100%}.service-form .service-form__select .browse-ui-select,.service-form .browse-select-searchable>button{cursor:pointer;border-color:#6e809152;border-radius:9px;width:100%;min-height:42px}.service-form .browse-select-searchable>button:hover{border-color:#6e80917a}.service-form textarea.dash-input{resize:vertical;min-height:88px}.service-form .dash-input::placeholder{color:#9aabb8}.service-form .dash-input:hover{border-color:#6e80917a}.service-form .dash-input:focus{outline-offset:1px;border-color:#e5a9008c;outline:2px solid #ffc93c47}.service-form .dash-check{color:#0e141b;cursor:pointer;align-items:center;gap:8px;margin:2px 0 0;font-size:.9rem;font-weight:600;display:flex}.service-form .dash-check input{accent-color:#e5a900;cursor:pointer;width:16px;height:16px}.service-form .service-form__hint{color:#6e8091;margin:0;font-size:.85rem;font-weight:400}.service-form .service-form__media{align-items:center;gap:12px;display:flex}.service-form .service-form__thumb{background:#1b2631;border:1px solid #6e809147;border-radius:8px;flex-shrink:0;width:72px;height:54px;position:relative;overflow:hidden}.dash-modal__actions .dash-btn--primary{background:var(--hivis);color:var(--ink);border-color:#e5a9008c;min-width:148px}.dash-modal__actions .dash-btn--primary:disabled{color:#0e141b73;cursor:not-allowed;background:#ffc93c59;border-color:#e5a90038}.dash-modal__actions .dash-btn--secondary{background:var(--concrete);color:var(--ink);border-color:#6e809152;min-width:96px}.dash-toast--error .dash-toast__bar{background:var(--flare)}@media (max-width:1100px){.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1080px) and (min-width:901px){.dash-page{grid-template-columns:210px minmax(0,1fr)}.dash-side{padding:20px 12px}}@media (max-width:1080px){.stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:980px){.dash-grid-2,.dash-grid-split,.admin-grid{grid-template-columns:1fr}}@media (max-width:900px){.dash{min-height:calc(100dvh - 58px);display:block}.dash-topbar{z-index:130;background:var(--steel-900);border-bottom:1px solid #ffffff0f;align-items:center;gap:12px;height:58px;padding:0 14px;display:flex;position:sticky;top:0}.dash-menu-btn{color:#fff;cursor:pointer;background:#ffffff0f;border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.dash-menu-btn:hover,.dash-menu-btn:focus-visible{background:#ffffff1f;outline:none}.dash-topbar__brand{color:#fff;align-items:center;gap:10px;min-width:0;display:flex}.dash-topbar__brand strong{font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;line-height:1.15;display:block;overflow:hidden}.dash-topbar__brand small{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--hivis);font-size:.64rem;display:block}.dash-backdrop{z-index:110;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .25s var(--ease);background:#0e141b8c;border:0;margin:0;padding:0;display:block;position:fixed;inset:0}.dash-backdrop.is-open,.dash-page.is-menu-open .dash-backdrop{opacity:1;pointer-events:auto}.dash-side{z-index:120;width:min(288px,86vw);max-width:min(288px,86vw);height:100dvh;max-height:100dvh;transition:transform .28s var(--ease-out);border-bottom:0;flex-direction:column;align-items:stretch;padding:18px 14px 24px;position:fixed;top:0;left:0;overflow:hidden auto;transform:translate(-105%);box-shadow:16px 0 40px #00000059}.dash-side.is-open{transform:translate(0)}.dash-side__head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.dash-side__head .dash-user{flex:1;margin-bottom:0}.dash-side__close{color:#fff;cursor:pointer;background:#ffffff0f;border:0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.dash-user,.dash-sec{display:flex}.dash-sec{display:block}.dash-side__group{flex-direction:column;flex-shrink:0;gap:4px}.dash-nav{flex-flow:column;gap:2px;width:100%}.dash-link{white-space:nowrap;width:100%;padding:10px 12px;font-size:.9rem}.dash-link__pill{margin-left:auto}.dash-main{min-width:0;padding:20px 16px 48px}.dash-tabs-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -16px 16px;padding:0 16px;overflow-x:auto}.dash-tabs-scroll::-webkit-scrollbar{display:none}.dash-tabs{flex-wrap:nowrap;width:max-content;max-width:none;display:inline-flex}.dash-tab{white-space:nowrap;flex-shrink:0;padding:8px 14px;font-size:.84rem}.dash-head{align-items:flex-start}.dash-card{padding:16px}.dash-card__head{flex-wrap:wrap;align-items:flex-start}.req-row{grid-template-columns:40px 1fr auto;align-items:start;gap:8px 12px;padding:14px 0;display:grid}.req-row>.dash-avatar{grid-row:1/3;align-self:start}.req-row__meta{grid-area:1/2/auto/-1;min-width:0}.req-row__meta strong{word-break:break-word;display:block}.req-row__meta>div{word-break:break-word;line-height:1.45}.req-row>.status-badge{grid-area:2/2;place-self:center start}.req-row>strong{grid-area:2/2/auto/-1;place-self:center end}.req-row>.status-badge~strong{grid-column:3}.req-row__actions{flex-wrap:wrap;flex-shrink:1;grid-area:3/1/auto/-1;width:100%}.req-row__actions .dash-btn{white-space:normal;text-align:center;flex:1;justify-content:center;min-width:0;height:auto;min-height:36px;padding:8px 12px}.job-mini__top{flex-wrap:wrap;gap:10px}.job-mini__top-end{margin-left:auto}.paid-job-row{flex-wrap:wrap;align-items:flex-start;margin:0;padding:12px 0}.paid-job-row__aside{flex-wrap:wrap;justify-content:space-between;width:100%}.paid-job-row__aside .dash-btn{flex:1;min-width:120px}.earn-chart__tools{justify-content:flex-start;width:100%}}@media (max-width:700px){.admin-filters,.cat-grid{grid-template-columns:1fr}.icon-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-row{grid-template-columns:1fr}.dash-head{flex-direction:column;align-items:stretch;gap:14px}.dash-head__actions{width:100%}.job-mini__top{flex-direction:column;align-items:stretch}.job-mini__top-end{flex-direction:row;justify-content:space-between;align-items:center;width:100%;margin-left:0}.tech-manage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-table:not(.dash-table--payments){display:block;overflow-x:auto}}@media (max-width:420px){.dash-side{width:min(300px,92vw);max-width:min(300px,92vw)}}@media (prefers-reduced-motion:reduce){.dash-page,.stat-card[data-reveal].is-in,.cat-card[data-reveal].is-in,.dash-toast,.dash-modal__panel,.chart__bar,.progress-fill,.rank-row__fill,.status-mix__fill,.dash-ripple,.modal-stack.is-shake,.dash-side,.dash-backdrop,.dash-btn-completed,.dash-btn--completed{transition:none!important;animation:none!important}.dash-page,.stat-card[data-reveal].is-in,.cat-card[data-reveal].is-in{opacity:1;transform:none}.skel{animation:none}}
