.action-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:.5rem;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--foreground));flex-shrink:0;cursor:pointer;transition:transform .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease}.action-icon-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 10px #00000024}.action-icon-btn:active:not(:disabled){transform:translateY(0)}.action-icon-btn:disabled{opacity:.42;cursor:not-allowed;transform:none;box-shadow:none}.action-icon-btn__icon{width:16px;height:16px;pointer-events:none}.action-icon-btn--neutral{background:hsl(var(--muted) / .55);border-color:hsl(var(--border));color:hsl(var(--foreground))}.action-icon-btn--neutral:hover:not(:disabled){background:hsl(var(--muted) / .85)}.action-icon-btn--blue{background:rgb(37 99 235 / .14);border-color:#3b82f673;color:#93c5fd}.action-icon-btn--blue:hover:not(:disabled){background:rgb(37 99 235 / .24);border-color:#60a5fa8c}.action-icon-btn--indigo{background:rgb(79 70 229 / .16);border-color:#6366f173;color:#a5b4fc}.action-icon-btn--indigo:hover:not(:disabled){background:rgb(79 70 229 / .26)}.action-icon-btn--amber{background:rgb(217 119 6 / .16);border-color:#f59e0b73;color:#fcd34d}.action-icon-btn--amber:hover:not(:disabled){background:rgb(217 119 6 / .26)}.action-icon-btn--green{background:rgb(22 163 74 / .16);border-color:#22c55e73;color:#86efac}.action-icon-btn--green:hover:not(:disabled){background:rgb(22 163 74 / .26)}.action-icon-btn--teal{background:rgb(13 148 136 / .16);border-color:#14b8a673;color:#5eead4}.action-icon-btn--teal:hover:not(:disabled){background:rgb(13 148 136 / .26)}.action-icon-btn--red{background:rgb(220 38 38 / .14);border-color:#ef444473;color:#fca5a5}.action-icon-btn--red:hover:not(:disabled){background:rgb(220 38 38 / .24)}.action-icon-btn--purple{background:rgb(126 34 206 / .16);border-color:#a855f773;color:#d8b4fe}.action-icon-btn--purple:hover:not(:disabled){background:rgb(126 34 206 / .26)}.action-icon-btn--cyan{background:rgb(8 145 178 / .16);border-color:#22d3ee73;color:#67e8f9}.action-icon-btn--cyan:hover:not(:disabled){background:rgb(8 145 178 / .26)}.action-icon-toolbar{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.35rem;max-width:100%}.action-icon-toolbar--start,.approval-actions.action-icon-toolbar,.approval-actions .action-icon-toolbar{justify-content:flex-start}.reports-dashboard-root{--reports-border: rgba(255, 255, 255, .08);--reports-border-strong: rgba(255, 255, 255, .12);--reports-surface: hsl(var(--card) / .55);--reports-surface-raised: hsl(222 47% 9% / .92);--reports-surface-hover: rgba(255, 255, 255, .04);--reports-shadow: 0 1px 0 rgba(255, 255, 255, .04), 0 12px 40px rgba(0, 0, 0, .35);--reports-radius: 14px;--reports-radius-sm: 10px}html:not(.dark) .reports-dashboard-root{--reports-border: rgba(15, 23, 42, .08);--reports-border-strong: rgba(15, 23, 42, .12);--reports-surface: hsl(var(--card) / .95);--reports-surface-raised: hsl(var(--card));--reports-surface-hover: rgba(15, 23, 42, .04);--reports-shadow: 0 1px 2px rgba(15, 23, 42, .06), 0 8px 24px rgba(15, 23, 42, .08)}.reports-page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1.25rem;padding-bottom:.25rem}.reports-page-header__title{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.03em;line-height:1.2;color:hsl(var(--foreground))}.reports-page-header__eyebrow{margin:0 0 .35rem;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--primary))}.reports-page-header__desc{margin:.5rem 0 0;max-width:36rem;font-size:.8125rem;line-height:1.55;color:hsl(var(--muted-foreground))}.reports-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.reports-btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;height:2.25rem;padding:0 .875rem;border-radius:var(--reports-radius-sm);font-size:.8125rem;font-weight:600;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;cursor:pointer;border:1px solid transparent}.reports-btn:disabled{opacity:.5;cursor:not-allowed}.reports-btn--primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground));box-shadow:0 2px 8px hsl(var(--primary) / .35)}.reports-btn--primary:hover:not(:disabled){filter:brightness(1.06)}.reports-btn--ghost{background:transparent;color:hsl(var(--muted-foreground))}.reports-btn--ghost:hover:not(:disabled){background:var(--reports-surface-hover);color:hsl(var(--foreground))}.reports-btn--soft{background:var(--reports-surface);border-color:var(--reports-border);color:hsl(var(--foreground));box-shadow:var(--reports-shadow)}.reports-btn--soft:hover:not(:disabled){background:var(--reports-surface-hover);border-color:var(--reports-border-strong)}.reports-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem .625rem;border-radius:var(--reports-radius);background:var(--reports-surface);border:1px solid var(--reports-border);box-shadow:var(--reports-shadow)}.reports-toolbar__control{height:2rem;width:8.5rem;flex-shrink:0;padding:0 .5rem;border-radius:8px;border:1px solid var(--reports-border);background:hsl(var(--background) / .65);font-size:.75rem;color:hsl(var(--foreground));outline:none;transition:border-color .15s,box-shadow .15s}.reports-toolbar__control:focus{border-color:hsl(var(--primary) / .5);box-shadow:0 0 0 2px hsl(var(--primary) / .15)}.reports-toolbar__control--wide{width:10.5rem}.reports-toolbar__control--narrow{width:6.75rem}.reports-toolbar__chip{display:inline-flex;align-items:center;gap:.375rem;height:2rem;padding:0 .625rem;border-radius:8px;border:1px solid var(--reports-border);background:hsl(var(--background) / .4);font-size:.6875rem;font-weight:600;color:hsl(var(--muted-foreground));cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.reports-toolbar__chip input{width:.875rem;height:.875rem;accent-color:hsl(var(--primary))}.reports-toolbar__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem;margin-left:auto}.reports-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem;padding:.125rem 0}.reports-tab{display:inline-flex;align-items:center;gap:.375rem;padding:.4375rem .875rem;border-radius:999px;border:1px solid transparent;font-size:.8125rem;font-weight:600;color:hsl(var(--muted-foreground));background:transparent;cursor:pointer;transition:all .15s ease}.reports-tab:hover{color:hsl(var(--foreground));background:var(--reports-surface-hover)}.reports-tab--active{color:hsl(var(--primary-foreground));background:hsl(var(--primary));border-color:hsl(var(--primary));box-shadow:0 2px 12px hsl(var(--primary) / .4)}.reports-tab--active:hover{color:hsl(var(--primary-foreground));filter:brightness(1.05)}.reports-hero-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem;padding:.75rem 1rem;border-radius:var(--reports-radius);background:linear-gradient(135deg,hsl(var(--primary) / .12) 0%,var(--reports-surface) 48%,hsl(222 47% 8% / .6) 100%);border:1px solid var(--reports-border);box-shadow:var(--reports-shadow)}@media (min-width: 640px){.reports-hero-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}.reports-hero-strip__item{display:flex;flex-direction:column;gap:.125rem;min-width:0}.reports-hero-strip__label{font-size:.6875rem;font-weight:500;color:hsl(var(--muted-foreground))}.reports-hero-strip__value{font-size:1.0625rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:hsl(var(--foreground))}.reports-hero-strip__value--green{color:#34d399}.reports-hero-strip__value--amber{color:#fbbf24}.reports-hero-strip__value--red{color:#f87171}.reports-group{margin-top:1.25rem}.reports-group:first-child{margin-top:0}.reports-group__head{display:flex;align-items:baseline;gap:.75rem;margin-bottom:.75rem}.reports-group__title{margin:0;font-size:.8125rem;font-weight:600;letter-spacing:-.01em;color:hsl(var(--foreground))}.reports-group__title--blue{color:#60a5fa}.reports-group__title--costs{color:#fb7185}.reports-group__title--profit{color:#34d399}.reports-group__subtitle{margin:0;font-size:.6875rem;color:hsl(var(--muted-foreground))}.reports-group__grid{display:grid;gap:.625rem;grid-template-columns:repeat(1,minmax(0,1fr))}@media (min-width: 640px){.reports-group__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1280px){.reports-group__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.reports-metric{position:relative;display:flex;gap:.75rem;align-items:flex-start;padding:.875rem 1rem;border-radius:var(--reports-radius-sm);background:var(--reports-surface-raised);border:1px solid var(--reports-border);box-shadow:var(--reports-shadow);transition:border-color .15s,transform .15s}.reports-metric:hover{border-color:var(--reports-border-strong)}.reports-metric__icon{display:grid;place-items:center;width:2.25rem;height:2.25rem;flex-shrink:0;border-radius:10px;border:1px solid var(--reports-border)}.reports-metric--blue .reports-metric__icon{background:rgba(59,130,246,.15);color:#93c5fd;border-color:#3b82f640}.reports-metric--green .reports-metric__icon{background:rgba(16,185,129,.12);color:#6ee7b7;border-color:#10b98138}.reports-metric--amber .reports-metric__icon{background:rgba(245,158,11,.12);color:#fcd34d;border-color:#f59e0b38}.reports-metric--red .reports-metric__icon{background:rgba(239,68,68,.12);color:#fca5a5;border-color:#ef444438}.reports-metric--violet .reports-metric__icon{background:rgba(139,92,246,.12);color:#c4b5fd;border-color:#8b5cf638}.reports-metric--slate .reports-metric__icon{background:rgba(148,163,184,.1);color:#cbd5e1;border-color:var(--reports-border)}.reports-metric__content{min-width:0;flex:1}.reports-metric__label{margin:0;font-size:.6875rem;font-weight:500;line-height:1.35;color:hsl(var(--muted-foreground))}.reports-metric__value{margin:.2rem 0 0;font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1.15;color:hsl(var(--foreground))}.reports-metric__hint{margin:.35rem 0 0;font-size:.625rem;line-height:1.4;color:hsl(var(--muted-foreground) / .85)}.reports-board{border-radius:var(--reports-radius);background:var(--reports-surface);border:1px solid var(--reports-border);box-shadow:var(--reports-shadow);overflow:hidden}.reports-board__note{padding:.625rem 1rem 0;font-size:.6875rem;color:hsl(var(--muted-foreground))}.reports-table-wrap{max-height:min(68vh,700px);overflow:auto;scrollbar-width:thin}.reports-table{width:100%;min-width:-moz-max-content;min-width:max-content;border-collapse:collapse;font-size:.8125rem}.reports-table thead th{position:sticky;top:0;z-index:2;padding:.5rem .625rem;text-align:left;font-size:.625rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .35);border-bottom:1px solid var(--reports-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);white-space:nowrap}.reports-table thead th.reports-table__num{text-align:right}.reports-table tbody td{padding:.4375rem .625rem;border-bottom:1px solid var(--reports-border);vertical-align:middle;color:hsl(var(--foreground))}.reports-table tbody tr{transition:background .12s}.reports-table tbody tr:hover{background:var(--reports-surface-hover)}.reports-table tbody tr:last-child td{border-bottom:none}.reports-table__num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.reports-pill{display:inline-flex;align-items:center;max-width:100%;padding:.125rem .5rem;border-radius:999px;font-size:.625rem;font-weight:600;letter-spacing:.02em;white-space:nowrap;border:1px solid transparent}.reports-pill--neutral{background:hsl(var(--muted) / .45);color:hsl(var(--muted-foreground));border-color:var(--reports-border)}.reports-pill--blue{background:rgba(59,130,246,.15);color:#bfdbfe;border-color:#3b82f640}.reports-pill--green{background:rgba(16,185,129,.14);color:#a7f3d0;border-color:#10b98140}.reports-pill--amber{background:rgba(245,158,11,.14);color:#fde68a;border-color:#f59e0b40}.reports-pill--red{background:rgba(239,68,68,.14);color:#fecaca;border-color:#ef444440}.reports-pill--violet{background:rgba(139,92,246,.14);color:#ddd6fe;border-color:#8b5cf640}.reports-alert{display:flex;gap:.75rem;padding:.875rem 1rem;border-radius:var(--reports-radius-sm);border:1px solid rgba(239,68,68,.25);background:rgba(239,68,68,.08);font-size:.8125rem;color:#fecaca}.reports-empty{display:flex;flex-direction:column;align-items:center;padding:3rem 1.5rem;text-align:center;border-radius:var(--reports-radius);border:1px dashed var(--reports-border);background:hsl(var(--muted) / .08)}.reports-empty__title{margin:.75rem 0 0;font-size:.875rem;font-weight:600;color:hsl(var(--foreground))}.reports-empty__hint{margin:.375rem 0 0;max-width:22rem;font-size:.75rem;line-height:1.5;color:hsl(var(--muted-foreground))}.reports-skeleton{border-radius:var(--reports-radius-sm);background:linear-gradient(90deg,hsl(var(--muted) / .25) 0%,hsl(var(--muted) / .45) 50%,hsl(var(--muted) / .25) 100%);background-size:200% 100%;animation:reports-shimmer 1.2s ease-in-out infinite}@keyframes reports-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.reports-skeleton--metric{height:5.25rem}.reports-skeleton--table{height:14rem}.reports-skeleton--hero{height:4.5rem}.reports-export-wrap{position:relative}.reports-export-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:50;min-width:11rem;padding:.25rem;border-radius:var(--reports-radius-sm);border:1px solid var(--reports-border-strong);background:hsl(var(--popover));box-shadow:0 16px 48px #00000073}.reports-export-menu button{display:flex;width:100%;align-items:center;gap:.5rem;padding:.5rem .625rem;border:none;border-radius:8px;background:transparent;font-size:.8125rem;font-weight:500;color:hsl(var(--foreground));text-align:left;cursor:pointer}.reports-export-menu button:hover{background:hsl(var(--muted) / .5)}.reports-print-only{display:none}@media print{.reports-no-print{display:none!important;visibility:hidden!important}.reports-print-only{display:block!important;visibility:visible!important;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.reports-dashboard-root{background:#fff!important;color:#111827!important}.reports-metric,.reports-board,.reports-hero-strip{border:1px solid #e5e7eb!important;background:#fff!important;box-shadow:none!important}.reports-metric__value,.reports-hero-strip__value,.reports-table tbody td{color:#111827!important}.reports-table thead th{background:#f3f4f6!important;color:#374151!important}.reports-table-wrap{max-height:none!important;overflow:visible!important}}.approval-remarks-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:360;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(15,23,42,.58);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.approval-remarks-modal{display:flex;flex-direction:column;width:100%;max-width:32rem;max-height:min(88vh,520px);overflow:hidden;border-radius:.875rem;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--card-foreground, var(--foreground)));box-shadow:0 24px 70px #00000061}.approval-remarks-modal__head{flex-shrink:0;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid hsl(var(--border))}.approval-remarks-modal__title{margin:0;font-size:1.0625rem;font-weight:700;color:hsl(var(--foreground))}.approval-remarks-modal__subtitle{margin:.35rem 0 0;font-size:.8125rem;color:hsl(var(--muted-foreground))}.approval-remarks-modal__close{flex-shrink:0;display:grid;place-items:center;width:2rem;height:2rem;border:none;border-radius:.375rem;background:transparent;color:hsl(var(--muted-foreground));cursor:pointer}.approval-remarks-modal__close:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.approval-remarks-modal__body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:1.125rem 1.25rem}.approval-remarks-modal__footer{flex-shrink:0;display:flex;justify-content:flex-end;gap:.5rem;padding:.875rem 1.25rem;border-top:1px solid hsl(var(--border))}.approval-remarks-textarea{width:100%;min-height:7rem;resize:vertical;border-radius:.5rem;border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground));padding:.625rem .75rem;font-size:.875rem;line-height:1.45}.approval-remarks-textarea:focus{outline:2px solid hsl(var(--ring, var(--primary)) / .45);outline-offset:1px}.approval-remarks-error{margin-bottom:.75rem;padding:.625rem .75rem;border-radius:.5rem;border:1px solid hsl(var(--destructive, 0 84% 60%) / .35);background:hsl(var(--destructive, 0 84% 60%) / .1);color:hsl(var(--foreground));font-size:.8125rem}.approval-preview-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:0;padding:.625rem 1rem;border-bottom:1px solid hsl(var(--amber-500, 45 93% 47%) / .35);background:hsl(var(--amber-500, 45 93% 47%) / .12);color:hsl(var(--foreground));font-size:.8125rem;line-height:1.45}.approval-blocked-hint{margin:.25rem 0 0;font-size:.6875rem;line-height:1.4;color:hsl(var(--muted-foreground))}.approval-legacy-hint{margin:0 0 .5rem;padding:.5rem .625rem;border-radius:.5rem;border:1px solid hsl(var(--amber-500, 45 93% 47%) / .35);background:hsl(var(--amber-500, 45 93% 47%) / .1);color:hsl(var(--foreground));font-size:.75rem;line-height:1.45}.approval-actions{display:flex;flex-wrap:wrap;gap:.375rem;align-items:center}.approval-actions--compact .approval-action-btn{height:1.75rem;padding:0 .5rem;font-size:.75rem}.approval-action-btn{display:inline-flex;align-items:center;justify-content:center;height:2rem;padding:0 .75rem;border-radius:.5rem;border:1px solid hsl(var(--border));background:hsl(var(--muted) / .35);color:hsl(var(--foreground));font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s}.approval-action-btn:hover:not(:disabled){background:hsl(var(--muted) / .65)}.approval-action-btn:disabled{opacity:.5;cursor:not-allowed}.approval-action-btn--primary{border-color:hsl(var(--primary) / .45);background:hsl(var(--primary) / .14);color:hsl(var(--primary))}.approval-action-btn--danger{border-color:hsl(var(--destructive, 0 84% 60%) / .45);background:hsl(var(--destructive, 0 84% 60%) / .12);color:#f15b5b}.approval-workflow-section{display:flex;flex-direction:column;gap:.875rem}.approval-workflow-section__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}.approval-workflow-section__title{margin:0;font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:hsl(var(--muted-foreground))}.approval-timeline{display:flex;flex-direction:column;gap:0;margin:0;padding:0;list-style:none}.approval-timeline__item{position:relative;padding:0 0 .875rem 1.25rem}.approval-timeline__item:before{content:"";position:absolute;left:.3rem;top:.45rem;width:.5rem;height:.5rem;border-radius:999px;background:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary) / .18)}.approval-timeline__item:after{content:"";position:absolute;left:.54rem;top:1.1rem;bottom:0;width:2px;background:hsl(var(--border))}.approval-timeline__item:last-child{padding-bottom:0}.approval-timeline__item:last-child:after{display:none}.approval-timeline__card{border:1px solid hsl(var(--border));border-radius:.625rem;background:hsl(var(--background));padding:.625rem .75rem}.approval-timeline__action{margin:0;font-size:.8125rem;font-weight:700;color:hsl(var(--foreground))}.approval-timeline__meta{margin:.25rem 0 0;font-size:.75rem;color:hsl(var(--muted-foreground));line-height:1.45}.approval-timeline__remarks{margin:.35rem 0 0;font-size:.75rem;color:hsl(var(--foreground));font-style:italic}.approval-timeline-empty{padding:.75rem;border-radius:.625rem;border:1px dashed hsl(var(--border));color:hsl(var(--muted-foreground));font-size:.8125rem;text-align:center}.approval-pending-card{border-radius:.75rem;border:1px solid hsl(var(--border));background:hsl(var(--card));box-shadow:0 1px 3px #0000000f}.approval-pending-card__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.875rem 1rem;border-bottom:1px solid hsl(var(--border))}.approval-pending-card__title{margin:0;font-size:.9375rem;font-weight:700}.approval-pending-table{width:100%;border-collapse:collapse;font-size:.8125rem}.approval-pending-table th,.approval-pending-table td{padding:.55rem .75rem;text-align:left;border-bottom:1px solid hsl(var(--border))}.approval-pending-table th{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .35)}.approval-pending-table tbody tr:hover{background:hsl(var(--muted) / .2)}.approval-pending-empty{padding:1.25rem;text-align:center;color:hsl(var(--muted-foreground));font-size:.8125rem}.approval-center-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.approval-center-tab{border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--muted-foreground));border-radius:.5rem;padding:.45rem .85rem;font-size:.8125rem;font-weight:600;transition:background .15s ease,color .15s ease,border-color .15s ease}.approval-center-tab:hover{background:hsl(var(--muted) / .35);color:hsl(var(--foreground))}.approval-center-tab--active{border-color:hsl(var(--primary) / .45);background:hsl(var(--primary) / .12);color:hsl(var(--foreground))}.approval-center-filters{display:grid;gap:.75rem;margin-bottom:1rem}@media (min-width: 768px){.approval-center-filters{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) minmax(0,.8fr);align-items:end}}.approval-center-table-wrap{max-height:min(70vh,720px);overflow:auto;border-radius:.75rem;border:1px solid hsl(var(--border));background:hsl(var(--card))}.approval-center-table{width:100%;border-collapse:collapse;font-size:.8125rem}.approval-center-table th,.approval-center-table td{padding:.65rem .75rem;text-align:left;border-bottom:1px solid hsl(var(--border));vertical-align:top}.approval-center-table thead th{position:sticky;top:0;z-index:2;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .92);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.approval-center-table tbody tr{cursor:pointer}.approval-center-table tbody tr:hover{background:hsl(var(--muted) / .22)}.approval-center-table__ref{font-weight:600;color:hsl(var(--foreground))}.approval-center-table__meta{color:hsl(var(--muted-foreground));font-size:.75rem;line-height:1.35}.approval-center-table__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;min-width:9rem}.approval-center-table__actions-cell{cursor:default}.approval-center-table__actions-cell:hover{background:transparent}.approval-center-skeleton{display:grid;gap:.5rem}.approval-center-skeleton__row{height:2.75rem;border-radius:.5rem;background:linear-gradient(90deg,hsl(var(--muted) / .35),hsl(var(--muted) / .55),hsl(var(--muted) / .35));background-size:200% 100%;animation:approval-center-shimmer 1.2s ease-in-out infinite}@keyframes approval-center-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.approval-center-detail-grid{display:grid;gap:0}.approval-center-detail-row{display:grid;gap:.25rem;border-bottom:1px solid hsl(var(--border) / .7);padding:.65rem 0}@media (min-width: 640px){.approval-center-detail-row{grid-template-columns:140px 1fr;gap:.75rem}}.approval-center-detail-label{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:hsl(var(--muted-foreground))}.approval-center-detail-value{font-size:.875rem;color:hsl(var(--foreground))}.approval-center-detail-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid hsl(var(--border))}.dashboard-command{display:flex;flex-direction:column;gap:1.25rem}.dashboard-command__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.dashboard-command__title{margin:0;font-size:1.125rem;font-weight:700}.dashboard-command__subtitle{margin:.2rem 0 0;font-size:.8125rem;color:hsl(var(--muted-foreground))}.dashboard-kpi-grid{display:grid;gap:.85rem;grid-template-columns:repeat(1,minmax(0,1fr))}@media (min-width: 640px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1280px){.dashboard-kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.dashboard-kpi-card{display:flex;flex-direction:column;gap:.5rem;border-radius:.75rem;border:1px solid hsl(var(--border));background:hsl(var(--card));padding:1rem;box-shadow:0 1px 3px #00000014;transition:border-color .15s ease,transform .15s ease;text-align:left}.dashboard-kpi-card--clickable{cursor:pointer}.dashboard-kpi-card--clickable:hover{border-color:hsl(var(--primary) / .45);transform:translateY(-1px)}.dashboard-kpi-card__icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.5rem;background:hsl(var(--muted) / .55);color:hsl(var(--foreground))}.dashboard-kpi-card__label{font-size:.75rem;font-weight:600;color:hsl(var(--muted-foreground))}.dashboard-kpi-card__value{font-size:1.35rem;font-weight:700;line-height:1.2}.dashboard-kpi-card__caption{font-size:.6875rem;color:hsl(var(--muted-foreground))}.dashboard-main-grid{display:grid;gap:1rem}@media (min-width: 1280px){.dashboard-main-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}}.dashboard-widget{border-radius:.75rem;border:1px solid hsl(var(--border));background:hsl(var(--card));padding:1.1rem 1.15rem;box-shadow:0 1px 3px #00000014}.dashboard-widget__head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.85rem}.dashboard-widget__title{margin:0;font-size:.9375rem;font-weight:700}.dashboard-widget__subtitle{margin:.15rem 0 0;font-size:.75rem;color:hsl(var(--muted-foreground))}.dashboard-widget__link{font-size:.75rem;font-weight:600;color:hsl(var(--primary));background:none;border:none;cursor:pointer;padding:0}.dashboard-widget__link:hover{text-decoration:underline}.dashboard-widget__error{border-radius:.5rem;border:1px solid rgb(239 68 68 / .35);background:rgb(127 29 29 / .18);color:#fca5a5;padding:.65rem .75rem;font-size:.8125rem}.dashboard-widget__empty{border-radius:.5rem;border:1px dashed hsl(var(--border));background:hsl(var(--muted) / .25);padding:1.25rem;text-align:center;font-size:.8125rem;color:hsl(var(--muted-foreground))}.dashboard-widget__skeleton{display:grid;gap:.45rem}.dashboard-widget__skeleton-row{height:2.25rem;border-radius:.5rem;background:hsl(var(--muted) / .45);animation:dashboard-pulse 1.2s ease-in-out infinite}@keyframes dashboard-pulse{0%,to{opacity:.55}50%{opacity:1}}.dashboard-mini-stats{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.dashboard-mini-stat{border-radius:.5rem;border:1px solid hsl(var(--border));background:hsl(var(--muted) / .3);padding:.35rem .55rem;font-size:.6875rem;font-weight:600;color:hsl(var(--muted-foreground))}.dashboard-table{width:100%;border-collapse:collapse;font-size:.8125rem}.dashboard-table th,.dashboard-table td{padding:.5rem .45rem;text-align:left;border-bottom:1px solid hsl(var(--border));vertical-align:top}.dashboard-table th{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:hsl(var(--muted-foreground))}.dashboard-table tbody tr:last-child td{border-bottom:none}.dashboard-table__overdue{background:rgb(127 29 29 / .12)}.dashboard-alert-list{display:grid;gap:.55rem}.dashboard-alert-item{display:flex;align-items:flex-start;gap:.65rem;border-radius:.625rem;border:1px solid hsl(var(--border));background:hsl(var(--muted) / .28);padding:.65rem .75rem}.dashboard-alert-item__icon{flex-shrink:0;margin-top:.1rem}.dashboard-alert-item__body{min-width:0;flex:1}.dashboard-alert-item__message{margin:0;font-size:.8125rem;font-weight:600}.dashboard-alert-item__action{margin-top:.25rem;font-size:.75rem;font-weight:600;color:hsl(var(--primary));background:none;border:none;cursor:pointer;padding:0}.dashboard-activity-list{display:grid;gap:.55rem}.dashboard-activity-item{border-radius:.5rem;border:1px solid hsl(var(--border));background:hsl(var(--muted) / .22);padding:.6rem .7rem}.dashboard-activity-item__action{margin:0;font-size:.8125rem;font-weight:600}.dashboard-activity-item__meta{margin:.2rem 0 0;font-size:.75rem;color:hsl(var(--muted-foreground))}.dashboard-stack{display:grid;gap:1rem}.settings-testing-util{max-width:28rem;padding:.875rem 1rem;border:1px solid var(--st-border);border-radius:.625rem;background:hsl(var(--muted) / .12)}.settings-testing-actions{display:flex;flex-wrap:wrap;gap:.5rem}.settings-testing-hint{margin:0 0 .5rem;font-size:.72rem;color:var(--st-muted);font-style:italic}.testing-btn-reset{background:rgb(185 28 28)!important;color:#fff!important}.testing-btn-reset:hover{background:rgb(153 27 27)!important}.testing-btn-restore{color:#b91c1c;border-color:#b91c1c73}.testing-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:260;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgb(0 0 0 / .55)}.testing-modal{display:flex;max-height:min(90vh,720px);width:100%;flex-direction:column;border-radius:.75rem;border:1px solid var(--st-border, hsl(var(--border)));background:hsl(var(--card, 222 47% 11%));box-shadow:0 16px 40px #00000059;overflow:hidden}.testing-modal--reset{max-width:46rem}.testing-modal--snapshots{max-width:56rem;max-height:min(88vh,640px)}.testing-modal--detail{max-width:32rem}.testing-modal-header{flex-shrink:0;padding:.875rem 1.125rem;border-bottom:1px solid var(--st-border, hsl(var(--border)))}.testing-modal-header h2{margin:0;font-size:1rem;font-weight:700;line-height:1.3}.testing-modal-body{flex:1;overflow-y:auto;padding:.875rem 1.125rem;font-size:.82rem;line-height:1.45;color:var(--st-muted, hsl(var(--muted-foreground)))}.testing-modal-footer{flex-shrink:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;padding:.75rem 1.125rem;border-top:1px solid var(--st-border, hsl(var(--border)))}.testing-modal-warning{margin:0 0 .875rem;padding:.55rem .65rem;border-radius:.5rem;border:1px solid var(--st-border);background:hsl(var(--muted) / .15);font-size:.78rem;line-height:1.4}.testing-modal-text{margin:0 0 .5rem;font-size:.82rem}.testing-modal-fine{margin:.75rem 0 0;font-size:.72rem;color:var(--st-muted)}.testing-modal-label{margin:0 0 .4rem;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--st-text, hsl(var(--foreground)))}.testing-modal-note{margin:.35rem 0 0;font-size:.75rem;color:#b45309}.testing-modal-error{margin:.5rem 0 0;font-size:.8rem;font-weight:600;color:#dc2626}.testing-modal-list{margin:.15rem 0 0;padding-left:1.1rem;font-size:.8rem}.testing-mono{font-family:ui-monospace,monospace;font-size:.75rem;word-break:break-all}.testing-scope-section{margin-bottom:.875rem}.testing-preset-row{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.65rem}.testing-scope-groups{display:grid;grid-template-columns:1fr 1fr;gap:.5rem .75rem}@media (max-width: 520px){.testing-scope-groups{grid-template-columns:1fr}}.testing-scope-group{margin:0;padding:.5rem .6rem;border:1px solid var(--st-border);border-radius:.5rem;background:hsl(var(--muted) / .08);min-width:0}.testing-scope-group legend{padding:0 .2rem;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--st-text, hsl(var(--foreground)))}.testing-scope-group-items{display:flex;flex-direction:column;gap:.3rem;margin-top:.25rem}.testing-scope-check{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--st-text, hsl(var(--foreground)));cursor:pointer}.testing-scope-check input{flex-shrink:0;accent-color:var(--st-accent, #3b82f6)}.testing-scope-row{display:flex;flex-direction:column;gap:.1rem}.testing-scope-inline-hint{margin-left:1.35rem;font-size:.68rem;line-height:1.3;color:var(--st-muted)}.testing-scope-warning{margin:.5rem 0 0;padding:.45rem .55rem;border-radius:.45rem;border:1px solid rgb(234 88 12 / .45);background:rgb(234 88 12 / .1);font-size:.75rem;color:#fb923c}.testing-scope-helper{margin:.5rem 0 0;font-size:.75rem;color:var(--st-muted);font-style:italic}.testing-confirm-section{margin-top:.25rem}.testing-confirm-input{display:block;width:100%;max-width:18rem;margin-top:.4rem;padding:.45rem .6rem;border-radius:.45rem;border:1px solid var(--st-border);background:hsl(var(--background));color:var(--st-text);font-size:.82rem}.testing-snapshots-toolbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.65rem}.testing-snapshots-desc{margin:0;flex:1;min-width:12rem;font-size:.78rem}.testing-snapshots-table-wrap{overflow-x:auto;border:1px solid var(--st-border);border-radius:.5rem}.testing-snapshots-table{width:100%;border-collapse:collapse;font-size:.74rem}.testing-snapshots-table th,.testing-snapshots-table td{padding:.45rem .55rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--st-border)}.testing-snapshots-table th{font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--st-muted);background:hsl(var(--muted) / .12);white-space:nowrap}.testing-snapshots-table tbody tr:last-child td{border-bottom:none}.testing-snapshots-table .nowrap{white-space:nowrap}.testing-snapshots-empty{padding:1.25rem .75rem!important;text-align:center;color:var(--st-muted)}.testing-snapshots-actions{display:flex;flex-wrap:wrap;gap:.3rem}.testing-detail-list{display:grid;gap:.55rem}.testing-detail-list>div{display:grid;gap:.1rem}.testing-detail-list dt{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--st-muted)}.testing-detail-list dd{margin:0;font-size:.8rem;color:var(--st-text, hsl(var(--foreground)))}.testing-detail-list ul{margin:.15rem 0 0;padding-left:1rem;font-size:.78rem;color:var(--st-muted)}.settings-root{--st-surface: hsl(var(--card));--st-border: rgba(255, 255, 255, .08);--st-muted: hsl(var(--muted-foreground));display:flex;flex-direction:column;gap:1rem;min-height:0}.settings-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem 1.35rem;border-radius:14px;border:1px solid var(--st-border);background:linear-gradient(145deg,hsl(var(--card)) 0%,hsl(var(--muted) / .35) 100%);box-shadow:0 8px 28px #00000038}.settings-header h1{margin:0;font-size:1.35rem;font-weight:700;letter-spacing:-.02em}.settings-eyebrow{margin:0 0 .2rem;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--primary))}.settings-header p{margin:.35rem 0 0;max-width:42rem;font-size:.875rem;line-height:1.45;color:var(--st-muted)}.settings-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.settings-layout{display:grid;grid-template-columns:minmax(200px,220px) minmax(0,1fr);gap:1rem;align-items:start}@media (max-width: 900px){.settings-layout{grid-template-columns:1fr}}.settings-nav{display:flex;flex-direction:column;gap:.25rem;padding:.65rem;border-radius:12px;border:1px solid var(--st-border);background:hsl(var(--card));box-shadow:0 4px 18px #00000026}@media (max-width: 900px){.settings-nav{flex-direction:row;flex-wrap:wrap}}.settings-nav-btn{display:flex;align-items:center;gap:.5rem;width:100%;padding:.55rem .7rem;border:none;border-radius:8px;background:transparent;color:var(--st-muted);font-size:.8125rem;font-weight:600;text-align:left;cursor:pointer;transition:background .15s,color .15s}.settings-nav-btn:hover{background:hsl(var(--muted) / .45);color:hsl(var(--foreground))}.settings-nav-btn.is-active{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.settings-panel{border-radius:12px;border:1px solid var(--st-border);background:var(--st-surface);box-shadow:0 4px 18px #0000001f;overflow:hidden}.settings-panel-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.15rem;border-bottom:1px solid var(--st-border);background:hsl(var(--muted) / .12)}.settings-panel-head h2{margin:0;font-size:1rem;font-weight:700}.settings-panel-head p{margin:.2rem 0 0;font-size:.78rem;color:var(--st-muted)}.settings-panel-body{padding:1.15rem}.settings-form-grid{display:grid;gap:.85rem;grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width: 640px){.settings-form-grid{grid-template-columns:1fr}}.settings-form-grid .span-2{grid-column:1 / -1}.settings-field label{display:block;margin-bottom:.3rem;font-size:.72rem;font-weight:600;color:var(--st-muted)}.settings-field input,.settings-field select,.settings-field textarea{width:100%;min-height:2.25rem;padding:.4rem .6rem;border-radius:8px;border:1px solid var(--st-border);background:hsl(var(--background) / .55);color:hsl(var(--foreground));font-size:.8125rem}.settings-field textarea{min-height:5.5rem;resize:vertical}.settings-field textarea.tall{min-height:7.5rem}.settings-helper{margin:0 0 1rem;padding:.65rem .75rem;border-radius:8px;border:1px solid var(--st-border);background:hsl(var(--muted) / .2);font-size:.78rem;line-height:1.45;color:var(--st-muted)}.settings-preview-card{margin-top:1rem;padding:1rem;border-radius:10px;border:1px solid var(--st-border);background:hsl(var(--muted) / .15)}.settings-preview-card h3{margin:0 0 .65rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--st-muted)}.settings-preview-card .name{font-size:1.05rem;font-weight:700}.settings-preview-card .meta{margin-top:.35rem;font-size:.8rem;line-height:1.45;color:var(--st-muted);white-space:pre-line}.settings-badge-row{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.settings-mini-pill{display:inline-flex;padding:.15rem .45rem;border-radius:999px;font-size:.65rem;font-weight:700;border:1px solid var(--st-border);background:hsl(var(--muted) / .35)}.settings-mini-pill.on{border-color:hsl(var(--primary) / .5);background:hsl(var(--primary) / .15);color:hsl(var(--primary))}.settings-table-wrap{overflow-x:auto;border-radius:10px;border:1px solid var(--st-border)}.settings-table{width:100%;border-collapse:collapse;font-size:.8125rem}.settings-table th{padding:.55rem .65rem;text-align:left;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--st-muted);background:hsl(var(--muted) / .25);border-bottom:1px solid var(--st-border);white-space:nowrap}.settings-table td{padding:.55rem .65rem;border-bottom:1px solid var(--st-border);vertical-align:middle}.settings-table tbody tr:hover td{background:hsl(var(--muted) / .12)}.settings-table tr.is-muted td{opacity:.55}.settings-number-preview{display:grid;gap:.35rem;margin-top:.75rem;padding:.75rem;border-radius:8px;border:1px dashed var(--st-border);font-family:ui-monospace,monospace;font-size:.78rem;color:var(--st-muted)}.settings-alert{display:flex;align-items:flex-start;gap:.5rem;padding:.65rem .75rem;border-radius:8px;border:1px solid rgba(239,68,68,.35);background:rgba(239,68,68,.08);color:#fca5a5;font-size:.8125rem;margin-bottom:.75rem}.settings-check-row{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.settings-check-row label{display:inline-flex;align-items:center;gap:.4rem;font-size:.8125rem;font-weight:500;color:hsl(var(--foreground));cursor:pointer}.settings-appearance{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--st-border)}.settings-appearance .theme-pills{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.settings-loading{padding:2.5rem;text-align:center;color:var(--st-muted);font-size:.875rem}.settings-logo-section{margin-bottom:1rem;padding:1rem;border-radius:10px;border:1px solid var(--st-border);background:hsl(var(--muted) / .12)}.settings-logo-section h3{margin:0 0 .75rem;font-size:.8rem;font-weight:700}.settings-logo-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:1rem}.settings-logo-preview{display:grid;place-items:center;width:88px;height:88px;border-radius:12px;border:1px dashed var(--st-border);background:hsl(var(--background) / .6);overflow:hidden}.settings-logo-preview img{max-width:80px;max-height:80px;-o-object-fit:contain;object-fit:contain}.settings-logo-preview .initials{font-size:1.5rem;font-weight:800;color:hsl(var(--primary))}.settings-logo-actions{display:flex;flex-direction:column;gap:.45rem;flex:1;min-width:200px}.settings-logo-actions p{margin:0;font-size:.72rem;color:var(--st-muted)}.settings-logo-actions input[type=file]{display:none}.settings-footer-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--st-border)}.access-admin-root{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}.access-page-header{display:flex;gap:1rem;align-items:flex-start;padding:1.25rem 1.5rem;border-radius:.75rem;border:1px solid hsl(var(--border));background:hsl(var(--card));box-shadow:0 1px 3px #0000000f}.access-page-header__icon{display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:.625rem;background:hsl(var(--primary) / .12);color:hsl(var(--primary))}.access-page-header__title{margin:0;font-size:1.125rem;font-weight:700;color:hsl(var(--foreground))}.access-page-header__subtitle{margin:.25rem 0 0;font-size:.875rem;color:hsl(var(--muted-foreground))}.access-session-banner{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:.625rem;border:1px solid hsl(var(--primary) / .22);background:hsl(var(--primary) / .08);font-size:.875rem;color:hsl(var(--foreground))}.access-session-banner__text{margin:0;line-height:1.5}.access-tabs{display:flex;flex-wrap:wrap;gap:.5rem;padding:.25rem;border-radius:.75rem;border:1px solid hsl(var(--border));background:hsl(var(--muted) / .35)}.access-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .875rem;border-radius:.5rem;border:none;background:transparent;color:hsl(var(--muted-foreground));font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.access-tab:hover{background:hsl(var(--muted) / .65);color:hsl(var(--foreground))}.access-tab--active{background:hsl(var(--card));color:hsl(var(--foreground));box-shadow:0 1px 2px #00000014}.access-tab-content{border-radius:.75rem;border:1px solid hsl(var(--border));background:hsl(var(--card));padding:1.25rem;box-shadow:0 1px 3px #0000000f}.access-tab-panel{display:flex;flex-direction:column;gap:1rem}.access-toolbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem}.access-toolbar__title{margin:0;font-size:1rem;font-weight:700;color:hsl(var(--foreground))}.access-toolbar__desc{margin:.2rem 0 0;font-size:.8125rem;color:hsl(var(--muted-foreground))}.access-toolbar__actions{display:flex;flex-wrap:wrap;gap:.5rem}.access-table-wrap{overflow-x:auto;border-radius:.625rem;border:1px solid hsl(var(--border));background:hsl(var(--card))}.access-table{width:100%;border-collapse:collapse;font-size:.875rem}.access-table th,.access-table td{padding:.65rem .875rem;text-align:left;border-bottom:1px solid hsl(var(--border));color:hsl(var(--foreground))}.access-table th{font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .45)}.access-table tbody tr:hover{background:hsl(var(--muted) / .25)}.access-role-grid{display:grid;gap:.875rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.access-role-card{display:grid;grid-template-columns:auto 1fr auto;gap:.75rem;padding:1rem;border-radius:.625rem;border:1px solid hsl(var(--border));background:hsl(var(--muted) / .2)}.access-role-card__icon{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:.5rem;background:hsl(var(--primary) / .12);color:hsl(var(--primary))}.access-role-card__head{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.access-role-card__name{margin:0;font-size:.9375rem;font-weight:700;color:hsl(var(--foreground))}.access-role-card__desc{margin:.35rem 0 0;font-size:.8125rem;color:hsl(var(--muted-foreground));line-height:1.45}.access-role-card__meta{display:flex;gap:.75rem;margin-top:.5rem;font-size:.75rem;color:hsl(var(--muted-foreground))}.access-form-stack{display:flex;flex-direction:column;gap:0}.access-input{display:block;width:100%;min-height:2.5rem;padding:.5rem .75rem;border-radius:.5rem;border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground));font-size:.875rem;line-height:1.4}.access-input:focus{outline:2px solid hsl(var(--primary) / .45);outline-offset:1px;border-color:hsl(var(--primary) / .5)}.access-input:disabled{opacity:.6;cursor:not-allowed}.access-textarea{min-height:4.5rem;resize:vertical}.access-field{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}.access-field__label{font-size:.75rem;font-weight:600;letter-spacing:.02em;color:hsl(var(--muted-foreground))}.access-field__control{width:100%}.access-field__error{font-size:.75rem;color:#dc2626}.access-readonly-value{padding:.5rem .75rem;border-radius:.5rem;border:1px solid hsl(var(--border));background:hsl(var(--muted) / .35);color:hsl(var(--foreground));font-size:.875rem;line-height:1.4}.access-role-form{margin-bottom:.25rem}.access-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:350;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(15,23,42,.58);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.access-modal{display:flex;flex-direction:column;width:100%;max-height:min(90vh,760px);overflow:hidden;border-radius:.875rem;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--card-foreground, var(--foreground)));box-shadow:0 24px 70px #00000061}.access-modal--compact{max-width:30rem}.access-modal--default{max-width:35rem}.access-modal--wide{max-width:56.25rem;max-height:min(92vh,820px)}.access-modal__head{flex-shrink:0;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid hsl(var(--border));background:hsl(var(--card))}.access-modal__head-copy{min-width:0}.access-modal__title{margin:0;font-size:1.0625rem;font-weight:700;color:hsl(var(--foreground));line-height:1.3}.access-modal__subtitle{margin:.35rem 0 0;font-size:.8125rem;color:hsl(var(--muted-foreground));line-height:1.45}.access-modal__close{flex-shrink:0;display:grid;place-items:center;width:2rem;height:2rem;border:none;border-radius:.375rem;background:transparent;color:hsl(var(--muted-foreground));cursor:pointer}.access-modal__close:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.access-modal__body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:1.125rem 1.25rem 1rem;background:hsl(var(--card))}.access-modal__form-error{margin-bottom:.875rem}.access-modal__footer{flex-shrink:0;display:flex;justify-content:flex-end;align-items:center;gap:.5rem;padding:.875rem 1.25rem;border-top:1px solid hsl(var(--border));background:hsl(var(--card))}.access-perm-checklist{display:flex;flex-direction:column;gap:.75rem;max-height:min(48vh,420px);overflow-y:auto;margin-top:.25rem;padding-right:.25rem}.access-perm-group{border:1px solid hsl(var(--border));border-radius:.625rem;overflow:hidden;background:hsl(var(--background))}.access-perm-group__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .75rem;background:hsl(var(--muted) / .5);border-bottom:1px solid hsl(var(--border))}.access-perm-group__title{margin:0;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:hsl(var(--foreground))}.access-perm-group__actions{display:flex;gap:.25rem}.access-perm-group__list{list-style:none;margin:0;padding:0}.access-perm-check{display:flex;align-items:flex-start;gap:.65rem;padding:.6rem .75rem;border-top:1px solid hsl(var(--border));cursor:pointer;background:hsl(var(--card))}.access-perm-check:first-child{border-top:none}.access-perm-check:hover{background:hsl(var(--muted) / .35)}.access-perm-check input[type=checkbox]{margin-top:.15rem;flex-shrink:0;width:1rem;height:1rem;accent-color:hsl(var(--primary))}.access-perm-check__body{display:flex;flex-direction:column;gap:.15rem;min-width:0}.access-perm-check__label{font-size:.8125rem;font-weight:600;color:hsl(var(--foreground))}.access-perm-check__key{font-size:.6875rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:hsl(var(--muted-foreground))}.access-perm-check__desc{font-size:.75rem;color:hsl(var(--muted-foreground));line-height:1.4}.access-matrix-filters{display:grid;gap:.5rem;grid-template-columns:1fr 200px}@media (max-width: 640px){.access-matrix-filters{grid-template-columns:1fr}}.access-matrix-scroll{overflow:auto;max-height:65vh;border:1px solid hsl(var(--border));border-radius:.625rem;background:hsl(var(--card))}.access-matrix{width:-moz-max-content;width:max-content;min-width:100%;border-collapse:collapse;font-size:.8125rem}.access-matrix th,.access-matrix td{padding:.5rem .65rem;border-bottom:1px solid hsl(var(--border));vertical-align:middle;color:hsl(var(--foreground))}.access-matrix th{position:sticky;top:0;z-index:2;background:hsl(var(--card));font-size:.6875rem;text-transform:uppercase;letter-spacing:.03em;color:hsl(var(--muted-foreground))}.access-matrix__sticky{position:sticky;left:0;z-index:1;min-width:220px;max-width:280px;background:hsl(var(--card))}.access-matrix__role-col{min-width:100px;text-align:center}.access-matrix__role-name{display:block;font-weight:700;color:hsl(var(--foreground));text-transform:none;letter-spacing:normal}.access-matrix__module-row td{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .45)}.access-matrix__perm-label{font-weight:600}.access-matrix__perm-key{font-size:.6875rem;font-family:ui-monospace,monospace;color:hsl(var(--muted-foreground))}.access-matrix__cell{text-align:center}.access-matrix__checkbox{width:1rem;height:1rem;cursor:pointer;accent-color:hsl(var(--primary))}.access-matrix__granted{color:#059669;font-weight:700}.access-matrix__denied{color:hsl(var(--muted-foreground))}.access-unsaved{display:flex;align-items:center;gap:.5rem;padding:.6rem .875rem;border-radius:.5rem;border:1px solid rgb(245 158 11 / .45);background:rgb(245 158 11 / .12);font-size:.8125rem;font-weight:600;color:hsl(var(--foreground))}.access-catalog-search{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:.5rem;border:1px solid hsl(var(--border));background:hsl(var(--muted) / .25)}.access-catalog-search .access-input{border:none;background:transparent;padding:0;min-height:auto}.access-catalog-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.access-catalog-card{border:1px solid hsl(var(--border));border-radius:.625rem;padding:.875rem 1rem;background:hsl(var(--muted) / .15)}.access-catalog-card__title{margin:0 0 .65rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:hsl(var(--muted-foreground))}.access-catalog-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.access-catalog-item{padding:.55rem .65rem;border-radius:.5rem;background:hsl(var(--card));border:1px solid hsl(var(--border))}.access-catalog-item--granted{border-color:hsl(var(--primary) / .28);background:hsl(var(--primary) / .08)}.access-catalog-item__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.access-catalog-item__label{font-size:.8125rem;font-weight:600;color:hsl(var(--foreground))}.access-catalog-item__key{display:block;margin-top:.15rem;font-size:.6875rem;font-family:ui-monospace,monospace;color:hsl(var(--muted-foreground))}.access-catalog-item__desc{margin:.25rem 0 0;font-size:.75rem;color:hsl(var(--muted-foreground));line-height:1.4}.access-empty{display:grid;place-items:center;gap:.5rem;padding:3rem 1.5rem;text-align:center}.access-empty__title{margin:0;font-weight:600;color:hsl(var(--foreground))}.access-empty__subtitle{margin:0;font-size:.875rem;color:hsl(var(--muted-foreground))}.access-alert{display:flex;gap:.6rem;align-items:flex-start;padding:.75rem .875rem;border-radius:.5rem;border:1px solid rgb(220 38 38 / .35);background:rgb(220 38 38 / .1);color:#b91c1c;font-size:.875rem}.dark .access-alert{color:#fecaca}.access-loading{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:3rem;color:hsl(var(--muted-foreground));font-size:.875rem}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-5{bottom:1.25rem}.right-2{right:.5rem}.right-5{right:1.25rem}.top-2{top:.5rem}.z-30{z-index:30}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-8{margin-bottom:2rem}.ml-auto{margin-left:auto}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-28{height:7rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-72{height:18rem}.h-8{height:2rem}.h-80{height:20rem}.h-9{height:2.25rem}.h-\[72px\]{height:72px}.h-fit{height:-moz-fit-content;height:fit-content}.h-full{height:100%}.max-h-40{max-height:10rem}.max-h-44{max-height:11rem}.max-h-\[90vh\]{max-height:90vh}.max-h-\[92vh\]{max-height:92vh}.min-h-\[240px\]{min-height:240px}.min-h-\[260px\]{min-height:260px}.min-h-\[4rem\]{min-height:4rem}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-12{width:3rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[108px\]{width:108px}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[116px\]{min-width:116px}.min-w-\[132px\]{min-width:132px}.min-w-\[140px\]{min-width:140px}.min-w-\[160px\]{min-width:160px}.min-w-\[180px\]{min-width:180px}.min-w-\[220px\]{min-width:220px}.min-w-\[84px\]{min-width:84px}.min-w-\[86px\]{min-width:86px}.min-w-\[8rem\]{min-width:8rem}.min-w-\[96px\]{min-width:96px}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-\[180px\]{max-width:180px}.max-w-\[200px\]{max-width:200px}.max-w-\[220px\]{max-width:220px}.max-w-\[240px\]{max-width:240px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-all{word-break:break-all}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.border-amber-400\/90{border-color:#fbbf24e6}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-300\/80{border-color:#93c5fdcc}.border-border{border-color:hsl(var(--border))}.border-emerald-300\/80{border-color:#6ee7b7cc}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-300\/80{border-color:#fca5a5cc}.border-slate-300\/80{border-color:#cbd5e1cc}.border-l-amber-500{--tw-border-opacity: 1;border-left-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.border-l-blue-500{--tw-border-opacity: 1;border-left-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-l-emerald-500{--tw-border-opacity: 1;border-left-color:rgb(16 185 129 / var(--tw-border-opacity, 1))}.border-l-red-500{--tw-border-opacity: 1;border-left-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-l-slate-500{--tw-border-opacity: 1;border-left-color:rgb(100 116 139 / var(--tw-border-opacity, 1))}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-background{background-color:hsl(var(--background))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-card{background-color:hsl(var(--card))}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-emerald-500\/\[0\.03\]{background-color:#10b98108}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/15{background-color:hsl(var(--muted) / .15)}.bg-muted\/20{background-color:hsl(var(--muted) / .2)}.bg-muted\/30{background-color:hsl(var(--muted) / .3)}.bg-muted\/40{background-color:hsl(var(--muted) / .4)}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-primary\/5{background-color:hsl(var(--primary) / .05)}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-950\/30{background-color:#0206174d}.object-contain{-o-object-fit:contain;object-fit:contain}.p-1{padding:.25rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.text-amber-900{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity, 1))}.text-amber-950{--tw-text-opacity: 1;color:rgb(69 26 3 / var(--tw-text-opacity, 1))}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-blue-950{--tw-text-opacity: 1;color:rgb(23 37 84 / var(--tw-text-opacity, 1))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-emerald-950{--tw-text-opacity: 1;color:rgb(2 44 34 / var(--tw-text-opacity, 1))}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-red-950{--tw-text-opacity: 1;color:rgb(69 10 10 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-soft{--tw-shadow: 0 12px 34px rgba(15, 23, 42, .06);--tw-shadow-colored: 0 12px 34px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{color-scheme:light;--background: 210 20% 97%;--foreground: 222 47% 11%;--card: 0 0% 100%;--card-foreground: 222 47% 11%;--muted: 210 40% 96%;--muted-foreground: 214 26% 42%;--border: 214 32% 91%;--primary: 214 92% 47%;--primary-foreground: 0 0% 100%;--success: 145 63% 42%;--warning: 38 92% 50%}.dark{color-scheme:dark;--background: 235 24% 9%;--foreground: 0 0% 100%;--card: 235 20% 13%;--card-foreground: 0 0% 100%;--muted: 235 18% 17%;--muted-foreground: 240 5% 70%;--border: 0 0% 100% / .08;--primary: 214 92% 47%;--primary-foreground: 0 0% 100%}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,sans-serif}body{margin:0;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}.app-main{min-height:100vh;padding-left:220px}.sidebar-panel{position:fixed;inset:0 auto 0 0;z-index:40;width:220px;border-right:1px solid hsl(var(--border));background:hsl(var(--card));transition:transform .18s ease}.sidebar-scroll{height:calc(100vh - 122px);overflow-y:auto;padding:24px 0 18px;scrollbar-width:thin}.sidebar-item{display:flex;min-height:34px;width:100%;align-items:center;gap:10px;border-radius:8px;padding:0 12px;color:hsl(var(--muted-foreground));font-size:13px;font-weight:500;transition:background .15s ease,color .15s ease}.sidebar-item:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.sidebar-item-active{background:hsl(var(--primary) / .1);color:hsl(var(--primary))}.collapse-strip{display:flex;height:50px;width:100%;align-items:center;justify-content:center;gap:10px;border-top:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));font-size:13px}.top-header{position:sticky;top:0;z-index:20;display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid hsl(var(--border));background:hsl(var(--card) / .92);padding:0 22px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.content-area{padding:24px}.documents-layout{display:grid;grid-template-columns:252px minmax(0,1fr);gap:236px}.document-controls{display:grid;align-content:start;gap:20px}.selector-button{min-height:26px;width:100%;border-radius:7px;border:1px solid hsl(var(--border));padding:0 9px;text-align:left;color:hsl(var(--muted-foreground));font-size:11px;font-weight:500;transition:all .15s ease}.selector-button:hover,.selector-active{border-color:hsl(var(--primary));background:hsl(var(--primary));color:#fff}.pill-button{min-height:30px;border-radius:7px;border:1px solid hsl(var(--border));background:hsl(var(--card));padding:0 11px;color:hsl(var(--muted-foreground));font-size:12px;font-weight:600;transition:all .15s ease}.pill-active{border-color:hsl(var(--primary));background:hsl(var(--primary));color:#fff}.preview-stage{min-height:calc(100vh - 102px);overflow:auto;display:flex;justify-content:center;align-items:flex-start;padding-bottom:40px}.document-paper{flex:0 0 auto;background:#ffffff;color:#172033;box-shadow:0 18px 35px #0f172a24}.paper-inner{display:flex;min-height:inherit;flex-direction:column;padding:48px 50px 34px}.paper-header{display:flex;justify-content:space-between;gap:28px}.paper-logo{display:grid;height:39px;width:39px;place-items:center;border-radius:7px;background:#0b63e5;color:#fff;font-size:15px;font-weight:800}.paper-header h2{margin:10px 0 4px;font-size:13px;font-weight:800}.paper-header p{margin:2px 0;font-size:6.5px;color:#42516b}.paper-header h1{margin:4px 0 12px;color:#0b63e5;font-size:17px;font-weight:800}.paper-rule{margin-top:24px;height:2px;background:#0b63e5}.paper-client{margin-top:18px;border-radius:6px;background:#f3f6f9;padding:13px}.paper-label{margin:0 0 6px;text-transform:uppercase;letter-spacing:.04em;font-size:6.5px;font-weight:800;color:#66758c}.paper-client h3,.paper-project h3{margin:0 0 3px;font-size:8.5px;font-weight:800}.paper-client p,.paper-project p{margin:2px 0;font-size:7px;color:#526178}.paper-project{margin-top:17px}.paper-table{width:100%;margin-top:15px;border-collapse:collapse;font-size:6.8px}.paper-table th{background:#eaf0f5;color:#36465c;font-weight:800;text-align:left}.paper-table th,.paper-table td{border-bottom:1px solid #dce5ee;padding:6px 7px}.paper-table th:nth-child(n+3),.paper-table td:nth-child(n+3){text-align:right}.paper-summary{align-self:flex-end;margin-top:18px;width:182px;font-size:7.5px}.paper-summary div{display:flex;justify-content:space-between;gap:20px;padding:5px 0;border-bottom:1px solid #dce5ee}.paper-summary div:last-child{border-bottom:0;color:#0b63e5;font-size:8.5px}.paper-terms{margin-top:auto;padding-top:17px;font-size:6.4px;color:#526178}.paper-terms h3{color:#172033;font-size:7px;font-weight:800}.paper-signatures{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:32px;text-align:center;font-size:6.4px}.paper-signatures span{display:block;border-top:1px solid #aeb8c5}.paper-signatures p{margin:7px 0 3px;color:#66758c}.paper-footer{margin-top:24px;border-top:1px solid #dce5ee;padding-top:10px;text-align:center;font-size:5.8px;color:#8a98aa}.document-preview-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;max-height:100vh;min-height:0;flex-direction:column;overflow:hidden;background:hsl(var(--background));color:hsl(var(--foreground))}.document-preview-toolbar{position:sticky;top:0;z-index:6;display:flex;flex:0 0 auto;min-height:64px;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid hsl(var(--border));background:hsl(var(--card) / .96);padding:12px 18px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.document-preview-toolbar h2{margin:0;font-size:16px;font-weight:800}.document-preview-toolbar p{margin:2px 0 0;color:hsl(var(--muted-foreground));font-size:12px;font-weight:600}.document-toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.document-paper-picker{display:inline-flex;overflow:hidden;border:1px solid hsl(var(--border));border-radius:9px;background:hsl(var(--muted) / .45);padding:2px}.document-paper-picker button{min-height:30px;border:0;border-radius:7px;background:transparent;color:hsl(var(--muted-foreground));cursor:pointer;font-size:12px;font-weight:800;padding:0 11px;transition:background .16s ease,color .16s ease}.document-paper-picker button.is-active{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.document-preview-stage{overflow:auto;display:flex;min-height:0;flex:1;justify-content:center;align-items:flex-start;padding:32px;transition:background .18s ease}.paper-tone-light{background:linear-gradient(180deg,#eef2f7,#f8fafc)}.paper-tone-warm{background:linear-gradient(180deg,#f4f0e8,#faf7f1)}.paper-tone-slate{background:linear-gradient(180deg,#101827,#1f2937)}.paper-scale-frame{position:relative;flex:0 0 auto}.paper-scale-inner{transform-origin:top center}.contractor-document-stack{display:grid;gap:22px}.contractor-paper{overflow:hidden;background:#ffffff;color:#111827;box-shadow:0 24px 60px #0f172a33}.contractor-page{-moz-column-break-after:auto;break-after:auto;page-break-after:auto}@media screen{.contractor-paper.contractor-page{min-height:1123px}}.contractor-document-stack.is-split .contractor-page:not(:last-child){-moz-column-break-after:page;break-after:page;page-break-after:always}.contractor-paper-body{display:flex;min-height:inherit;flex-direction:column;padding:58px 64px 36px}.contractor-paper-body-main{flex:0 1 auto;min-height:0}.document-bottom-section{display:flex;flex-direction:column;gap:12px;margin-top:auto;flex-shrink:0}.document-bottom-section .contractor-signatures{margin-top:0}.contractor-document-stack.is-compact .contractor-paper-body{padding:34px 46px 20px}.contractor-document-stack.is-one-page.is-compact .contractor-paper-body{padding:24px 38px 14px}.contractor-doc-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,330px);gap:40px;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.contractor-brand-block{display:flex;align-items:flex-start;gap:16px}.contractor-logo{display:grid;flex-shrink:0;min-width:54px;width:54px;height:54px;place-items:center;border-radius:12px;background:#0f66e8;color:#fff;font-size:22px;font-weight:900;box-shadow:0 10px 22px #0f66e83d}.contractor-logo.contractor-logo-image{background:#ffffff;box-shadow:0 4px 14px #0f172a1f;padding:4px}.contractor-logo.contractor-logo-image img{display:block;width:100%;height:100%;max-width:48px;max-height:48px;-o-object-fit:contain;object-fit:contain}.contractor-brand-legal{margin:2px 0 0;font-size:12px;font-weight:600;color:#4b5563}.contractor-brand-block h2,.contractor-title-block h1{margin:0;color:#111827;font-weight:900;letter-spacing:0}.contractor-brand-block h2{font-size:18px}.contractor-document-stack.is-one-page.is-compact .contractor-doc-header{grid-template-columns:minmax(0,1fr) minmax(210px,280px);gap:24px}.contractor-document-stack.is-one-page.is-compact .contractor-brand-block{gap:10px}.contractor-document-stack.is-one-page.is-compact .contractor-logo{min-width:40px;width:40px;height:40px;border-radius:10px;font-size:17px}.contractor-document-stack.is-one-page.is-compact .contractor-logo.contractor-logo-image img{max-width:36px;max-height:36px}.contractor-document-stack.is-one-page.is-compact .contractor-brand-legal{font-size:11px}.contractor-document-stack.is-one-page.is-compact .contractor-brand-block h2{font-size:15px}.contractor-brand-block p,.contractor-title-block p{margin:4px 0 0;color:#526179;font-size:10px;line-height:1.45}.contractor-title-block{text-align:right}.contractor-title-block span{color:#0f66e8;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.contractor-title-block h1{margin:6px 0 12px;color:#0f66e8;font-size:28px;line-height:1.05;text-transform:uppercase}.contractor-document-stack.is-one-page.is-compact .contractor-brand-block p,.contractor-document-stack.is-one-page.is-compact .contractor-title-block p{margin-top:2px;font-size:7.7px;line-height:1.25}.contractor-document-stack.is-one-page.is-compact .contractor-title-block span{font-size:9px}.contractor-document-stack.is-one-page.is-compact .contractor-title-block h1{margin:2px 0 5px;font-size:21px;line-height:1}.contractor-title-block strong{color:#111827}.contractor-blue-rule{margin:28px 0 20px;height:3px;border-radius:999px;background:linear-gradient(90deg,#0f66e8,#4f8cff 70%,transparent)}.contractor-document-stack.is-compact .contractor-blue-rule{margin:18px 0 14px}.contractor-document-stack.is-one-page.is-compact .contractor-blue-rule{margin:10px 0 8px}.contractor-parties{display:grid;grid-template-columns:1fr 1fr;gap:16px;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.contractor-parties>div,.contractor-progress-grid>div,.contractor-payment-details,.contractor-totals-card{border:1px solid #e3e9f2;border-radius:14px;background:#f8fafc}.contractor-parties>div{padding:16px}.contractor-document-stack.is-one-page.is-compact .contractor-parties{gap:8px}.contractor-document-stack.is-one-page.is-compact .contractor-parties>div{border-radius:10px;padding:8px 10px}.contractor-label{margin:0 0 8px;color:#667085;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.contractor-parties h3{margin:0 0 6px;color:#111827;font-size:15px;font-weight:900}.contractor-parties p{margin:3px 0;color:#526179;font-size:10.5px;line-height:1.45}.contractor-document-stack.is-one-page.is-compact .contractor-label{margin-bottom:3px;font-size:7.5px}.contractor-document-stack.is-one-page.is-compact .contractor-parties h3{margin-bottom:2px;font-size:10.5px}.contractor-document-stack.is-one-page.is-compact .contractor-parties p{margin:1px 0;font-size:7.7px;line-height:1.22}.contractor-progress-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.contractor-progress-grid>div{padding:12px}.contractor-progress-grid span{display:block;color:#667085;font-size:9px;font-weight:900;text-transform:uppercase}.contractor-progress-grid strong{display:block;margin-top:5px;color:#111827;font-size:13px;font-weight:900}.contractor-table-section{margin-top:20px;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.contractor-document-stack.is-compact .contractor-table-section{margin-top:14px}.contractor-document-stack.is-one-page.is-compact .contractor-table-section{margin-top:8px}.contractor-doc-table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid #dde6f0;border-radius:14px;font-size:10px}.contractor-doc-table th{background:#eef4fb;color:#334155;font-size:9.5px;font-weight:900;text-align:left;text-transform:uppercase;letter-spacing:.04em}.contractor-doc-table th,.contractor-doc-table td{border-bottom:1px solid #dde6f0;padding:11px 12px;vertical-align:top}.contractor-document-stack.is-compact .contractor-doc-table th,.contractor-document-stack.is-compact .contractor-doc-table td{padding:7px 9px}.contractor-document-stack.is-one-page.is-compact .contractor-doc-table{font-size:8.1px}.contractor-document-stack.is-one-page.is-compact .contractor-doc-table th{font-size:7.5px}.contractor-document-stack.is-one-page.is-compact .contractor-doc-table th,.contractor-document-stack.is-one-page.is-compact .contractor-doc-table td{padding:4px 6px}.contractor-document-stack.is-one-page.is-compact .contractor-doc-table td span{margin-top:1px;font-size:7px;line-height:1.15}.contractor-doc-table tr:last-child td{border-bottom:0}.ops-print-detail-table th,.ops-print-detail-table td{text-align:left!important;white-space:normal}.ops-print-detail-table th{width:34%;font-weight:700;color:#475569;background:#f8fafc}.ops-print-detail-table td{color:#172033}.contractor-doc-table th:nth-child(n+3),.contractor-doc-table td:nth-child(n+3){text-align:right;white-space:nowrap}.contractor-doc-table td strong{display:block;color:#172033;font-weight:800}.contractor-doc-table td span{display:block;margin-top:3px;color:#667085;font-size:9px;line-height:1.4}.contractor-summary-zone{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;margin-top:20px;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.contractor-document-stack.is-compact .contractor-summary-zone{gap:18px;margin-top:14px}.contractor-document-stack.is-one-page.is-compact .contractor-summary-zone{grid-template-columns:minmax(0,1fr) 238px;gap:10px;margin-top:8px}.contractor-summary-zone-totals-only{grid-template-columns:1fr!important;justify-items:end}.contractor-summary-zone-totals-only .contractor-totals-card{width:min(360px,100%)}.contractor-document-body-spacer{display:none}.contractor-soa-tables .contractor-soa-section-head{margin:14px 0 8px;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#334155}.contractor-soa-tables .contractor-soa-payment-head{margin-top:18px}.contractor-soa-tables .contractor-doc-table th,.contractor-soa-tables .contractor-doc-table td{text-align:left}.contractor-soa-tables .contractor-doc-table th:nth-child(4),.contractor-soa-tables .contractor-doc-table td:nth-child(4),.contractor-soa-tables .contractor-doc-table th:nth-child(5),.contractor-soa-tables .contractor-doc-table td:nth-child(5),.contractor-soa-tables .contractor-doc-table th:nth-child(6),.contractor-soa-tables .contractor-doc-table td:nth-child(6){text-align:right}.contractor-payment-history-table th:nth-child(4),.contractor-payment-history-table td:nth-child(4){text-align:right}.contractor-paper-body-closing{justify-content:flex-end}.contractor-summary-note{align-self:start;border:1px solid #e3e9f2;border-radius:14px;background:#f8fafc;padding:14px}.contractor-document-stack.is-one-page.is-compact .contractor-summary-note,.contractor-document-stack.is-one-page.is-compact .contractor-text-card,.contractor-document-stack.is-one-page.is-compact .contractor-payment-details,.contractor-document-stack.is-one-page.is-compact .contractor-totals-card{border-radius:10px}.contractor-document-stack.is-one-page.is-compact .contractor-summary-note,.contractor-document-stack.is-one-page.is-compact .contractor-text-card{padding:6px 8px}.contractor-summary-note h3,.contractor-text-card h3,.contractor-payment-details h3{margin:0 0 6px;color:#111827;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.contractor-summary-note p,.contractor-text-card p{margin:0;white-space:pre-line;color:#526179;font-size:10px;line-height:1.5}.contractor-summary-note p+p{margin-top:6px}.contractor-document-stack.is-one-page.is-compact .contractor-summary-note h3,.contractor-document-stack.is-one-page.is-compact .contractor-text-card h3,.contractor-document-stack.is-one-page.is-compact .contractor-payment-details h3{margin-bottom:2px;font-size:7.5px}.contractor-document-stack.is-one-page.is-compact .contractor-summary-note p,.contractor-document-stack.is-one-page.is-compact .contractor-text-card p{font-size:7.5px;line-height:1.16}.contractor-notes{display:grid;gap:10px}.contractor-notes p,.contractor-terms p{margin:0;white-space:pre-line;color:#526179;font-size:10px;line-height:1.55}.contractor-totals-card{align-self:start;padding:14px;background:#ffffff}.contractor-document-stack.is-one-page.is-compact .contractor-totals-card{padding:7px 9px}.contractor-totals-card div{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #e3e9f2;padding:8px 0;color:#526179;font-size:10px}.contractor-totals-card div:last-child{border-bottom:0}.contractor-totals-card strong{color:#111827;font-weight:900}.contractor-totals-card .is-strong{color:#0f66e8;font-size:12px}.contractor-totals-card .is-strong strong{color:#0f66e8}.contractor-document-stack.is-one-page.is-compact .contractor-totals-card div{gap:8px;padding:3px 0;font-size:8px}.contractor-document-stack.is-one-page.is-compact .contractor-totals-card .is-strong{font-size:9px}.contractor-payment-details{margin-top:18px;padding:15px;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.contractor-payment-details h3{display:flex;align-items:center;gap:8px}.contractor-payment-grid{display:grid;grid-template-columns:minmax(0,1fr) 118px;gap:14px}.contractor-payment-accounts{display:grid;gap:10px}.contractor-payment-account{-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.contractor-payment-grid strong{color:#111827;font-size:11px}.contractor-payment-grid p{margin:5px 0 0;color:#526179;font-size:9.5px;line-height:1.4}.contractor-qr-box{display:grid;place-items:center;border-radius:12px;border:1px dashed #aeb8c5;color:#667085;font-size:9px;font-weight:800;text-align:center}.contractor-terms{display:grid;gap:10px;margin-top:18px}.contractor-closing-flow{display:grid;gap:12px;margin-top:18px;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.contractor-document-stack.is-one-page.is-compact .contractor-closing-flow{gap:5px;margin-top:7px}.contractor-page-closing .contractor-closing-flow{margin-top:0}.contractor-terms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.contractor-document-stack.is-one-page.is-compact .contractor-terms-grid{gap:5px}.contractor-text-card{border:1px solid #e3e9f2;border-radius:14px;background:#f8fafc;padding:13px 14px;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.contractor-text-card.is-wide{grid-column:1 / -1}.contractor-signatures,.document-signatories-row{display:flex;flex-wrap:nowrap;justify-content:center;align-items:flex-end;gap:12px;width:100%;margin-top:22px;padding-top:34px;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.document-signatory-block,.contractor-signature-block{flex:0 0 170px;width:170px;max-width:170px;min-width:170px;text-align:center}.contractor-signatures.signatories-count-4,.document-signatories-row.signatories-count-4{justify-content:space-between;gap:12px}.contractor-signatures.signatories-count-4 .document-signatory-block,.contractor-signatures.signatories-count-4 .contractor-signature-block,.document-signatories-row.signatories-count-4 .document-signatory-block{flex:1 1 0;width:auto;min-width:0;max-width:none}.document-signatory-line{width:100%;border-top:1px solid #9ca3af;margin-bottom:4px;height:0}.document-signatory-role,.document-signatory-name,.document-signatory-title{text-align:center;width:100%;display:block}.document-signatory-role{margin:0 0 4px;color:#667085;font-size:9px;font-weight:800;min-height:1.2em}.document-signatory-name{color:#111827;font-size:10px;font-weight:700;min-height:1.25em;line-height:1.25}.document-signatory-title{margin-top:2px;color:#667085;font-size:8px;min-height:1.2em;line-height:1.2}.document-signatory-contact{display:block;margin-top:2px;color:#667085;font-size:8px}.contractor-document-stack.is-compact .contractor-signatures,.contractor-document-stack.is-compact .document-signatories-row{margin-top:16px;padding-top:26px}.contractor-document-stack.is-one-page.is-compact .contractor-signatures,.contractor-document-stack.is-one-page.is-compact .document-signatories-row{gap:10px;margin-top:6px;padding-top:16px}.contractor-signature-line,.contractor-signatures span{display:block;border-top:1px solid #9ca3af;width:100%;margin-bottom:4px}.contractor-signature-role,.contractor-signatures p{margin:0 0 4px;color:#667085;font-size:9px;font-weight:800;min-height:1.2em}.contractor-document-stack.is-one-page.is-compact .contractor-signature-role,.contractor-document-stack.is-one-page.is-compact .contractor-signatures p,.contractor-document-stack.is-one-page.is-compact .document-signatory-role{font-size:6.9px}.contractor-signature-name,.contractor-signatures strong{display:block;color:#111827;font-size:10px;min-height:1.25em;line-height:1.25}.contractor-document-stack.is-one-page.is-compact .contractor-signature-name,.contractor-document-stack.is-one-page.is-compact .contractor-signatures strong,.contractor-document-stack.is-one-page.is-compact .document-signatory-name{font-size:7.5px}.contractor-signature-title,.contractor-signature-contact,.contractor-signatures small{display:block;margin-top:2px;color:#667085;font-size:8px;min-height:1.2em}.contractor-document-stack.is-one-page.is-compact .contractor-signature-title,.contractor-document-stack.is-one-page.is-compact .contractor-signature-contact,.contractor-document-stack.is-one-page.is-compact .contractor-signatures small,.contractor-document-stack.is-one-page.is-compact .document-signatory-title{font-size:6.5px}.contractor-document-stack.print-background-graphics .contractor-paper{print-color-adjust:exact;-webkit-print-color-adjust:exact}.contractor-doc-footer{display:grid;gap:3px;margin-top:0;border-top:1px solid #dce5ee;padding-top:12px;color:#8a98aa;text-align:center;font-size:8.5px;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.contractor-document-stack.is-one-page.is-compact .contractor-doc-footer{gap:1px;padding-top:5px;font-size:6.6px}.contractor-document-stack.is-one-page.is-compact .contractor-doc-footer strong{font-size:7.2px}.contractor-doc-footer strong{color:#0f66e8;font-size:10px;text-transform:uppercase;letter-spacing:.08em}@media (max-width: 1180px){.document-toolbar-actions{justify-content:flex-start}}@media (max-width: 760px){.document-preview-toolbar{align-items:flex-start;flex-direction:column}.document-toolbar-actions{justify-content:flex-start}.document-preview-stage{padding:16px}.contractor-doc-header,.contractor-parties,.contractor-summary-zone,.contractor-payment-grid,.contractor-terms-grid{grid-template-columns:1fr}.contractor-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contractor-signatures{justify-content:center}}@media print{html,body,#root{margin:0!important;padding:0!important;width:auto!important;max-width:none!important;min-height:0!important;height:auto!important;background:#ffffff!important;overflow:visible!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}html.dark,html.dark body{background:#ffffff!important;color:#111827!important}body *{visibility:hidden!important}.print-document-root,.print-document-root *,.reports-dashboard-root,.reports-dashboard-root *{visibility:visible!important}.reports-dashboard-root{position:absolute!important;left:0!important;top:0!important;width:100%!important;max-width:none!important;margin:0!important;padding:8px 12px!important;background:#ffffff!important;color:#111827!important}.print-document-root.is-one-page{position:absolute!important;left:0!important;top:0!important}.print-document-root.is-split{position:static!important;left:auto!important;top:auto!important}.print-document-root{margin:0!important;padding:0!important;background:#ffffff!important;color:#111827!important;box-sizing:border-box!important;gap:0!important;-moz-column-break-after:auto!important;break-after:auto!important;page-break-after:auto!important;width:auto!important;max-width:none!important}.sidebar-panel,.top-header,.screen-only,.no-print,.print-hidden,.modal-backdrop,.document-preview-toolbar{display:none!important;visibility:hidden!important}body>div.min-h-screen{min-height:0!important;height:auto!important;margin:0!important;padding:0!important;width:auto!important;max-width:none!important;background:#ffffff!important;overflow:visible!important}.app-main{margin:0!important;padding:0!important;min-height:0!important;height:auto!important;width:auto!important;max-width:none!important;background:#ffffff!important;overflow:visible!important}.content-area{display:block!important;padding:0!important;margin:0!important;min-height:0!important;height:auto!important;width:auto!important;max-width:none!important;background:#ffffff!important;overflow:visible!important}.document-preview-modal{position:static!important;inset:auto!important;z-index:auto!important;display:block!important;width:auto!important;max-width:none!important;min-height:0!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;background:#ffffff!important;box-shadow:none!important;overflow:visible!important;border:none!important}.document-preview-stage{display:block!important;width:auto!important;max-width:none!important;overflow:visible!important;padding:0!important;margin:0!important;min-height:0!important;height:auto!important;max-height:none!important;background:#ffffff!important;border:none!important}.paper-tone-light,.paper-tone-warm,.paper-tone-slate{background:#ffffff!important;background-image:none!important}.paper-scale-frame{position:static!important;width:auto!important;max-width:none!important;margin:0 auto!important;padding:0!important;min-height:0!important;height:auto!important;background:transparent!important;border:none!important;box-shadow:none!important;overflow:visible!important}.paper-scale-inner{position:static!important;min-height:0!important;height:auto!important;transform:none!important;transform-origin:top center!important;margin:0 auto!important;padding:0!important;background:transparent!important;border:none!important;overflow:visible!important}.contractor-document-stack.is-split .contractor-paper:not(:last-child){-moz-column-break-after:page!important;break-after:page!important;page-break-after:always!important}.contractor-document-stack:not(.is-split) .contractor-paper,.contractor-paper:last-child{-moz-column-break-after:auto!important;break-after:auto!important;page-break-after:auto!important}.contractor-paper{overflow:visible!important;box-shadow:none!important;margin:0 auto!important;-moz-column-break-after:auto!important;break-after:auto!important;page-break-after:auto!important;page-break-inside:auto!important;-moz-column-break-inside:auto!important;break-inside:auto!important;box-sizing:border-box!important;background:#ffffff!important}.paper-print-a4 .contractor-paper.print-document-page{min-height:297mm!important;height:auto!important;display:flex!important;flex-direction:column!important}.paper-print-letter .contractor-paper.print-document-page{min-height:11in!important;height:auto!important;display:flex!important;flex-direction:column!important}.paper-print-legal .contractor-paper.print-document-page{min-height:14in!important;height:auto!important;display:flex!important;flex-direction:column!important}.contractor-paper.print-document-page{margin:0 auto!important;padding:0!important;background:#ffffff!important;box-shadow:none!important;overflow:visible!important;page-break-after:auto!important;-moz-column-break-after:auto!important;break-after:auto!important;page-break-inside:auto!important;-moz-column-break-inside:auto!important;break-inside:auto!important;box-sizing:border-box!important}.contractor-paper-body{flex:1 1 auto!important;display:flex!important;flex-direction:column!important;min-height:0!important;height:auto!important;margin:0!important;box-sizing:border-box!important}.contractor-paper-body-main{flex:0 1 auto!important;min-height:0!important}.document-bottom-section{display:flex!important;flex-direction:column!important;gap:10px!important;margin-top:auto!important;flex-shrink:0!important}.document-bottom-section .contractor-signatures{margin-top:0!important}.contractor-document-body-spacer{display:none!important;flex:none!important;min-height:0!important;height:0!important;margin:0!important;padding:0!important}.contractor-doc-table tbody tr,.contractor-summary-zone,.contractor-table-section,.contractor-payment-details,.contractor-terms-grid,.contractor-closing-flow{-moz-column-break-inside:auto!important;break-inside:auto!important;page-break-inside:auto!important}.contractor-signatures{-moz-column-break-inside:avoid!important;break-inside:avoid!important;page-break-inside:avoid!important}.contractor-doc-footer{margin-bottom:0!important;padding-bottom:0!important;page-break-after:auto!important;-moz-column-break-after:auto!important;break-after:auto!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;page-break-inside:avoid!important}}.search-box{display:flex;min-height:42px;align-items:center;gap:10px;border-radius:9px;border:1px solid hsl(var(--border));background:hsl(var(--card));padding:0 12px}.search-box input{width:100%;border:0;background:transparent;outline:0;color:hsl(var(--foreground))}.form-select{min-height:42px;border-radius:9px;border:1px solid hsl(var(--border));background:hsl(var(--card));padding:0 12px;color:hsl(var(--foreground))}.table-shell{overflow:auto;border-radius:12px;border:1px solid hsl(var(--border))}.table-shell table{min-width:720px;width:100%;border-collapse:collapse}.table-shell th{position:sticky;top:0;background:hsl(var(--muted));color:hsl(var(--muted-foreground));font-size:12px;text-align:left}.table-shell th,.table-shell td{border-bottom:1px solid hsl(var(--border));padding:13px 16px;font-size:13px}.table-shell tr:last-child td{border-bottom:0}.payroll-attendance-table-shell table{min-width:1120px;width:-moz-max-content;width:max-content}.payroll-attendance-table-shell th{font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.payroll-attendance-table-shell th,.payroll-attendance-table-shell td{padding:.375rem .5rem;font-size:.75rem;line-height:1.25;white-space:nowrap;vertical-align:middle}.payroll-attendance-table-shell tbody tr:hover td{background:hsl(var(--muted) / .12)}@media (max-width: 1180px){.documents-layout{grid-template-columns:280px minmax(0,1fr);gap:22px}.paper-inner{padding:54px 54px 42px}}@media (max-width: 1024px){.app-main{padding-left:0}.sidebar-panel{transform:translate(-100%)}.sidebar-open{transform:translate(0)}.documents-layout{grid-template-columns:1fr}.document-controls{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 768px){.top-header,.content-area{padding-left:18px;padding-right:18px}.document-controls{grid-template-columns:1fr}.preview-stage{justify-content:flex-start}.document-paper{max-width:none;transform:scale(.82);transform-origin:top left}}.calendar-page{display:grid;gap:18px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.calendar-title-group,.calendar-actions{display:flex;align-items:center;gap:12px}.calendar-title-group h2{min-width:160px;font-size:22px;font-weight:800;letter-spacing:-.01em}.calendar-legend{display:flex;flex-wrap:wrap;gap:10px 18px;padding:0 6px}.calendar-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:hsl(var(--muted-foreground))}.calendar-dot{height:7px;width:7px;border-radius:999px;background:var(--event-color)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(128px,1fr));overflow-x:auto}.calendar-weekday{min-height:32px;border-bottom:1px solid hsl(var(--border));border-right:1px solid hsl(var(--border));display:grid;place-items:center;background:hsl(var(--muted) / .5);color:hsl(var(--muted-foreground));font-size:12px;font-weight:800}.calendar-weekday:nth-child(7){border-right:0}.calendar-cell{min-height:84px;border-bottom:1px solid hsl(var(--border));border-right:1px solid hsl(var(--border));background:hsl(var(--card));padding:10px 9px;transition:background .15s ease}.calendar-cell:nth-child(7n){border-right:0}.calendar-cell:nth-last-child(-n+7){border-bottom:0}.calendar-cell-muted{background:hsl(var(--muted) / .42);color:hsl(var(--muted-foreground))}.calendar-cell-today{background:#eaf3ff}.dark .calendar-cell-today{background:hsl(var(--primary) / .15)}.calendar-cell-weekly{min-height:210px}.calendar-date-row{display:flex;justify-content:space-between;font-size:14px;font-weight:800}.calendar-today-marker{display:block;margin-top:8px;border-radius:3px;background:#fff7d8;padding:3px 6px;color:#b77900;font-size:11px;font-weight:800}.calendar-cell-events{margin-top:8px;display:grid;gap:5px}.calendar-event-chip{overflow:hidden;border-radius:3px;background:var(--event-bg);color:var(--event-text);padding:3px 6px;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:800;line-height:1.2}.calendar-more{color:hsl(var(--muted-foreground));font-size:11px;font-weight:700}.calendar-type-badge{display:inline-flex;align-items:center;border-radius:999px;background:var(--event-bg);color:var(--event-text);padding:2px 8px;font-size:11px;font-weight:800;text-transform:lowercase}.calendar-event-deadline{--event-color: #ef4444;--event-bg: #fef2f2;--event-text: #dc2626}.calendar-event-billing{--event-color: #22c55e;--event-bg: #ecfdf3;--event-text: #16a34a}.calendar-event-delivery,.calendar-event-purchase-order-delivery{--event-color: #38bdf8;--event-bg: #eef8ff;--event-text: #0284c7}.calendar-event-payroll{--event-color: #a855f7;--event-bg: #faf0ff;--event-text: #9333ea}.calendar-event-site-visit{--event-color: #f59e0b;--event-bg: #fff8df;--event-text: #b77900}.calendar-event-tool-return{--event-color: #f97316;--event-bg: #fff1eb;--event-text: #ea580c}.calendar-event-project-milestone{--event-color: #f43f5e;--event-bg: #fff1f4;--event-text: #e11d48}.dark .calendar-event-chip,.dark .calendar-type-badge{background:color-mix(in srgb,var(--event-color) 18%,transparent);color:color-mix(in srgb,var(--event-color) 72%,white)}.upcoming-card{padding:22px}.upcoming-list{position:relative;display:grid;gap:0}.upcoming-list:before{content:"";position:absolute;bottom:22px;left:8px;top:22px;width:1px;background:hsl(var(--border))}.upcoming-event{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:12px;padding:12px 0}.upcoming-event-dot{position:relative;z-index:1;margin-top:5px;height:16px;width:16px;border-radius:999px;border:3px solid var(--event-color);background:hsl(var(--card))}.upcoming-event h3{font-size:14px;font-weight:800}.upcoming-event p{margin-top:3px;color:hsl(var(--muted-foreground));font-size:12px}.upcoming-related{font-weight:700}.upcoming-description{max-width:760px}.upcoming-source{align-self:start;border-radius:999px;background:hsl(var(--muted));padding:4px 9px;color:hsl(var(--muted-foreground));font-size:11px;font-weight:800}@media (max-width: 1180px){.calendar-grid{grid-template-columns:repeat(7,minmax(118px,1fr))}}@media (max-width: 768px){.calendar-toolbar{align-items:stretch;flex-direction:column}.calendar-title-group,.calendar-actions{justify-content:space-between}.calendar-title-group h2{min-width:0;text-align:center;font-size:18px}.calendar-grid{grid-template-columns:repeat(7,minmax(112px,1fr))}.upcoming-event{grid-template-columns:22px minmax(0,1fr)}.upcoming-source{grid-column:2;justify-self:start}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;overflow:hidden;background:rgba(15,23,42,.45);padding:24px}.modal-backdrop.modal-backdrop-payroll-scroll{place-items:center;align-content:center;overflow-y:auto;overflow-x:hidden;padding:clamp(12px,3vh,32px) 16px}.modal-panel{width:min(760px,100%);overflow:hidden;border-radius:18px;border:1px solid hsl(var(--border));background:hsl(var(--card));box-shadow:0 24px 70px #0f172a3d}.modal-panel-wide{width:min(1120px,90vw)}.payroll-hr-shell{flex-shrink:0}.payroll-modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.payroll-modal-fields .form-field>span:first-child,.payroll-modal-fields .form-field>label>span,.payroll-modal-body .form-field>span:first-child{font-size:.75rem;line-height:1.25rem;color:hsl(var(--muted-foreground))}.payroll-modal-fields .form-input,.payroll-modal-fields .form-select,.payroll-modal-body .form-input,.payroll-modal-body .form-select{min-height:2.25rem;height:2.25rem;font-size:.875rem}.payroll-modal-fields .form-textarea.compact,.payroll-modal-body .form-textarea.compact{min-height:5rem;max-height:5rem}.payroll-modal-body{scrollbar-gutter:stable}.payroll-form-grid{display:grid;gap:.75rem}@media (min-width: 768px){.payroll-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-form-grid .span-2{grid-column:span 2}}.payroll-preview-box{border-radius:.5rem;border:1px dashed hsl(var(--border));background:hsl(var(--muted) / .25);padding:.625rem .75rem;font-size:.75rem;line-height:1.4}.dark .payroll-preview-box{background:hsl(var(--muted) / .12)}.payroll-bulk-att-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.25rem}.payroll-bulk-att-scroll{overflow:auto;flex:1 1 auto;min-height:0;border:1px solid rgb(51 65 85 / .55);border-radius:.625rem;background:rgb(2 6 23 / .45)}.payroll-bulk-att-table{width:-moz-max-content;width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:.75rem}.payroll-bulk-att-table thead th{position:sticky;top:0;z-index:2;background:hsl(var(--muted) / .92);border-bottom:1px solid hsl(var(--border));padding:.5rem .625rem;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:hsl(var(--muted-foreground));white-space:nowrap;vertical-align:bottom}.dark .payroll-bulk-att-table thead th{background:hsl(var(--card) / .98)}.payroll-bulk-att-table tbody td{border-bottom:1px solid rgb(51 65 85 / .45);padding:.25rem .375rem;vertical-align:middle;background:rgb(17 24 39)}.payroll-bulk-att-table tbody tr:hover td{background:hsl(var(--muted) / .15)}.payroll-bulk-att-input.form-input,.payroll-bulk-att-table select.form-input{min-height:2rem;height:2rem;font-size:.75rem;padding-left:.375rem;padding-right:.375rem;max-width:none;width:100%}.payroll-bulk-att-input-sm.form-input{min-height:2rem;height:2rem;font-size:.75rem}.payroll-bulk-att-preview{font-size:.6875rem;line-height:1.35;color:hsl(var(--muted-foreground));white-space:nowrap}.payroll-bulk-att-preview strong{color:hsl(var(--foreground));font-weight:600}.payroll-bulk-att-row-del{display:inline-flex;height:2rem;width:2rem;align-items:center;justify-content:center;border-radius:.375rem;color:hsl(var(--muted-foreground));transition:background .15s,color .15s}.payroll-bulk-att-row-del:hover:not(:disabled){background:hsl(var(--destructive) / .12);color:hsl(var(--destructive))}.payroll-bulk-att-row-del:disabled{opacity:.35;cursor:not-allowed}.payroll-bulk-modal-shell{border-color:#334155bf!important;background:rgb(17 24 39)!important;box-shadow:0 25px 50px -12px #000000a6}.payroll-bulk-modal-header{background:rgb(2 6 23)!important;border-bottom-color:#33415599!important}.payroll-bulk-modal-body{background:rgb(17 24 39)!important}.payroll-bulk-modal-footer{background:rgb(2 6 23)!important;border-top-color:#33415599!important}.time-picker-input-wrap{position:relative;display:flex;width:100%;align-items:stretch}.time-picker-input-wrap .time-picker-input{flex:1;min-width:0;padding-right:1.75rem}.time-picker-trigger{position:absolute;right:0;top:0;bottom:0;display:inline-flex;width:1.75rem;align-items:center;justify-content:center;border:none;background:transparent;color:hsl(var(--muted-foreground));cursor:pointer;border-radius:0 .375rem .375rem 0;transition:color .15s,background .15s}.time-picker-trigger:hover:not(:disabled){color:hsl(var(--foreground));background:hsl(var(--muted) / .35)}.time-picker-trigger:disabled{opacity:.45;cursor:not-allowed}.time-picker-popover{position:fixed;border:1px solid rgb(51 65 85 / .75);border-radius:.5rem;background:rgb(15 23 42);box-shadow:0 12px 28px #00000073;padding:.5rem}.time-picker-quick{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:.5rem}.time-picker-quick-btn{border:1px solid rgb(51 65 85 / .65);border-radius:.375rem;background:rgb(30 41 59 / .65);color:hsl(var(--foreground));font-size:.6875rem;line-height:1;padding:.25rem .375rem;cursor:pointer;transition:background .15s,border-color .15s}.time-picker-quick-btn:hover{background:rgb(51 65 85 / .55);border-color:#475569d9}.time-picker-columns{display:grid;grid-template-columns:1fr 1fr;gap:.375rem}.time-picker-col-label{display:block;font-size:.625rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:hsl(var(--muted-foreground));margin-bottom:.25rem}.time-picker-scroll{max-height:7.5rem;overflow-y:auto;overscroll-behavior:contain;border:1px solid rgb(51 65 85 / .45);border-radius:.375rem;background:rgb(2 6 23 / .55)}.time-picker-option{display:block;width:100%;border:none;background:transparent;color:hsl(var(--foreground));font-size:.75rem;line-height:1.25rem;padding:.125rem .375rem;text-align:center;cursor:pointer;font-variant-numeric:tabular-nums}.time-picker-option:hover{background:hsl(var(--muted) / .35)}.time-picker-option.is-selected{background:hsl(var(--primary) / .22);color:hsl(var(--primary-foreground));font-weight:600}.time-picker-cell-stack{display:flex;flex-direction:column;gap:.125rem}.time-picker-next-day-label{display:inline-flex;align-items:center;gap:.25rem;font-size:.625rem;line-height:1;color:hsl(var(--muted-foreground));cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.time-picker-next-day-label input[type=checkbox]{width:.75rem;height:.75rem;margin:0}.time-picker-next-day-field{display:inline-flex;align-items:center;gap:.375rem;margin-top:.375rem;font-size:.8125rem;color:hsl(var(--foreground));cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.time-picker-next-day-field input[type=checkbox]{width:.875rem;height:.875rem;margin:0}.payroll-bulk-defaults-panel{border:1px solid rgb(51 65 85 / .55);border-radius:.625rem;background:rgb(2 6 23 / .65);padding:.5rem .75rem;max-height:150px;overflow-y:auto;overscroll-behavior:contain}.payroll-bulk-defaults-title{font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#94a3b8}.payroll-bulk-defaults-hint{margin-top:.25rem;font-size:.6875rem;line-height:1.35;color:#64748b}.payroll-bulk-defaults-grid{display:grid;gap:.375rem .5rem;margin-top:.375rem}@media (min-width: 640px){.payroll-bulk-defaults-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1024px){.payroll-bulk-defaults-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.payroll-bulk-defaults-grid .span-2{grid-column:span 2}}.payroll-bulk-holiday-grid{display:grid;gap:.375rem .5rem;grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width: 768px){.payroll-bulk-holiday-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.payroll-bulk-notes-area.form-input{min-height:2rem;line-height:1.35}.payroll-bulk-att-row-muted td{opacity:.68;background:rgb(15 23 42 / .55)}.payroll-bulk-att-row-muted td.payroll-bulk-att-status-cell{opacity:1;background:rgb(17 24 39)}.payroll-bulk-att-row-muted .time-picker-input:disabled,.payroll-bulk-att-row-muted .payroll-bulk-att-input:disabled{cursor:not-allowed;opacity:.55;background:rgb(2 6 23 / .45)}.payroll-bulk-att-holiday-detail-row td{padding:.25rem .375rem .375rem;background:rgb(15 23 42 / .75)!important;border-bottom:1px solid rgb(51 65 85 / .55)}.payroll-bulk-att-holiday-detail-row:hover td{background:rgb(15 23 42 / .75)!important}.payroll-bulk-holiday-inline{display:flex;flex-wrap:nowrap;align-items:flex-end;gap:.5rem;min-width:-moz-max-content;min-width:max-content;padding:.125rem .25rem}.payroll-bulk-holiday-inline-field{display:flex;flex-direction:column;gap:.125rem;flex:0 0 auto;min-width:0}.payroll-bulk-holiday-inline-field>span{font-size:.5625rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:hsl(var(--muted-foreground));white-space:nowrap}.payroll-bulk-holiday-inline-name{width:11.5rem}.payroll-bulk-holiday-inline-name select{width:100%}.payroll-bulk-holiday-inline-field:nth-child(2){width:10.5rem}.payroll-bulk-holiday-inline-rate{width:5.5rem}.payroll-bulk-holiday-inline-rate-hint{font-size:.5625rem;line-height:1.2;color:hsl(var(--muted-foreground));white-space:nowrap}.payroll-bulk-holiday-inline-checks{display:flex;flex-wrap:nowrap;align-items:center;gap:.625rem;padding-bottom:.3125rem;flex:0 0 auto}.payroll-bulk-holiday-inline-check{display:inline-flex;align-items:center;gap:.25rem;font-size:.6875rem;color:hsl(var(--foreground) / .88);white-space:nowrap;cursor:pointer}.payroll-bulk-holiday-popover{position:fixed;border:1px solid rgb(51 65 85 / .75);border-radius:.5rem;background:rgb(15 23 42);box-shadow:0 12px 28px #00000073;padding:.5rem;display:grid;gap:.375rem}.payroll-bulk-holiday-popover .form-field>span{font-size:.6875rem;color:#94a3b8}.payroll-bulk-att-est-pay{display:block;font-size:.6875rem;font-weight:600;line-height:1.2;white-space:nowrap}.payroll-bulk-att-est-note{margin:.375rem 0 0;padding:0 .25rem;font-size:.625rem;line-height:1.35;color:#94a3b8}.payroll-bulk-error-banner{position:relative;z-index:1}.payroll-bulk-defaults-grid .form-field>span{font-size:.6875rem;color:#94a3b8}.payroll-bulk-att-table thead th{background:rgb(2 6 23 / .98)}.payroll-filter-toolbar .search-box{min-height:38px}.payroll-filter-toolbar .search-box input{font-size:13px}.payroll-filter-toolbar .form-input,.payroll-filter-toolbar .form-select{min-height:38px;font-size:13px}.quotation-modal-panel{display:flex;max-height:90vh;flex-direction:column}.quotation-modal-header{position:relative;z-index:2;display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid hsl(var(--border));background:hsl(var(--card));padding:18px 20px}.quotation-modal-form{max-height:calc(90vh - 78px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.quotation-modal-footer{position:sticky;bottom:-20px;z-index:3;display:grid;gap:12px;margin:6px -20px -20px;border-top:1px solid hsl(var(--border));background:hsl(var(--card) / .98);padding:14px 20px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.ops-modal-panel{display:flex;max-height:85vh;flex-direction:column;width:min(720px,100%);overflow:hidden}.ops-modal-panel-wide{width:min(900px,100%)}.ops-modal-header{position:sticky;top:0;z-index:2;display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid hsl(var(--border));background:hsl(var(--card));padding:16px 20px}.ops-modal-body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:16px 20px;scrollbar-width:thin}.ops-modal-footer{position:sticky;bottom:0;z-index:2;display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;border-top:1px solid hsl(var(--border));background:hsl(var(--card) / .98);padding:12px 20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ops-form-grid{display:grid;gap:12px;grid-template-columns:1fr}@media (min-width: 640px){.ops-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.ops-form-full{grid-column:1 / -1}.ops-form-field span{font-size:12px;font-weight:600;color:hsl(var(--muted-foreground))}.ops-form-field .form-input,.ops-form-field .form-select,.ops-form-field .form-textarea{min-height:38px;font-size:13px}.ops-form-field .form-textarea{min-height:72px;resize:vertical}.ops-modal-section{display:grid;gap:10px}.ops-modal-section-title{font-size:13px;font-weight:700;letter-spacing:.01em}.ops-modal-items-scroll{overflow-x:auto;overscroll-behavior:contain;border-radius:10px;border:1px solid hsl(var(--border));background:hsl(var(--muted) / .18);padding:10px}.ops-modal-item-row{display:grid;gap:8px;min-width:min(100%,640px);grid-template-columns:minmax(140px,1.2fr) minmax(120px,1.4fr) 72px 72px minmax(72px,.8fr);align-items:start;border-radius:8px;border:1px solid hsl(var(--border) / .65);background:hsl(var(--card));padding:10px}.ops-modal-item-row+.ops-modal-item-row{margin-top:8px}.ops-alert-banner{display:flex;gap:10px;align-items:flex-start;border-radius:10px;border:1px solid hsl(var(--border));padding:10px 12px;font-size:13px;line-height:1.45}.ops-alert-banner-error{border-color:hsl(var(--destructive) / .45);background:hsl(var(--destructive) / .08);color:hsl(var(--foreground))}.ops-alert-banner-permission{border-color:#f59e0b73;background:rgb(245 158 11 / .1);color:hsl(var(--foreground))}@media (max-width: 639px){.ops-modal-item-row{grid-template-columns:1fr;min-width:100%}.modal-backdrop{padding:12px}.ops-modal-header,.ops-modal-body,.ops-modal-footer{padding-left:14px;padding-right:14px}}.preset-textarea-heading{display:flex;min-height:30px;align-items:center;justify-content:space-between;gap:8px}.preset-textarea-heading .inline-flex{height:28px;padding-left:8px;padding-right:8px;font-size:11px}.preset-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;background:rgba(15,23,42,.38);padding:20px}.preset-dialog{display:grid;width:min(420px,100%);gap:16px;border-radius:16px;border:1px solid hsl(var(--border));background:hsl(var(--card));padding:20px;box-shadow:0 24px 70px #0f172a47}.modal-panel form{grid-template-columns:repeat(2,minmax(0,1fr))}.form-field{display:grid;gap:7px}.form-field span{color:hsl(var(--muted-foreground));font-size:12px;font-weight:800}.form-field strong{color:#dc2626}.form-input,.form-textarea{width:100%;border-radius:9px;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--foreground));outline:0;transition:border-color .15s ease,box-shadow .15s ease}.form-input{min-height:42px;padding:0 12px}.form-textarea{min-height:88px;resize:vertical;padding:10px 12px}.form-input:focus,.form-textarea:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary) / .12)}.client-row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.quotation-items-shell table{min-width:980px}.quotation-items-shell{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.signatory-section{display:grid;gap:14px;border-radius:16px;border:1px solid hsl(var(--border));background:hsl(var(--muted) / .35);padding:16px}.signatory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.signatory-block{display:grid;gap:12px;border-radius:14px;border:1px solid hsl(var(--border));background:hsl(var(--card));padding:14px;box-shadow:0 10px 26px #0f172a0f}.signatory-block-header h4{margin:0;color:hsl(var(--foreground));font-size:14px;font-weight:800}.signatory-block-header p{margin:4px 0 0;color:hsl(var(--muted-foreground));font-size:12px;line-height:1.45}.signatory-preview{display:grid;gap:4px;border-radius:12px;border:1px dashed hsl(var(--border));background:hsl(var(--muted) / .38);padding:12px;text-align:center}.signatory-preview span{color:hsl(var(--muted-foreground));font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.signatory-preview strong{color:hsl(var(--foreground));font-size:13px}.signatory-preview small{color:hsl(var(--muted-foreground));font-size:11px;font-weight:600}.signatory-line{height:1px;margin:16px 10px 2px;background:hsl(var(--border))}.signatory-actions{display:flex;justify-content:flex-end}@media (max-width: 1024px){.signatory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.modal-backdrop{align-items:stretch;justify-items:stretch;padding:0}.modal-panel-wide,.quotation-modal-panel{width:100%;max-height:100dvh;border-radius:0}.quotation-modal-form{max-height:calc(100dvh - 82px)}.modal-panel form{grid-template-columns:1fr}.modal-panel .md\:col-span-2{grid-column:auto}.client-row-actions{justify-content:flex-start}.signatory-grid{grid-template-columns:1fr}}.payroll-payslip-doc-header.contractor-doc-header{align-items:flex-start}.payroll-payslip-title-block{text-align:right}.payroll-payslip-doc-eyebrow{display:block;color:#0f66e8;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.payroll-payslip-title-block .payroll-payslip-employee-heading{margin:4px 0 10px;color:#111827;font-size:22px;font-weight:800;text-transform:none;letter-spacing:-.02em;line-height:1.15}.payroll-payslip-header-meta{margin-top:2px}.payroll-payslip-header-meta p{margin:3px 0 0;font-size:10.5px;line-height:1.35;color:#4b5563}.payroll-payslip-header-meta strong{font-weight:700;color:#374151;margin-right:6px}.payroll-payslip-meta-lowercase{text-transform:lowercase}.contractor-document-stack.is-one-page.is-compact .payroll-payslip-doc-eyebrow{font-size:9px}.contractor-document-stack.is-one-page.is-compact .payroll-payslip-employee-heading{margin:2px 0 6px;font-size:17px}.contractor-document-stack.is-one-page.is-compact .payroll-payslip-header-meta p{margin-top:2px;font-size:9px}.contractor-document-stack.is-one-page.is-compact .payroll-payslip-block{margin-bottom:.45rem}.contractor-document-stack.is-one-page.is-compact .payroll-payslip-net{margin-top:.4rem;padding:8px 10px}.payroll-payslip-parties,.payroll-payslip-block{margin-bottom:.6rem}.payroll-payslip-heading{margin:0 0 .25rem;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--muted-foreground))}.payroll-payslip-subhead{margin:.35rem 0 .2rem;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:hsl(var(--muted-foreground))}.payroll-payslip-kv td{padding:4px 8px;border-bottom:1px solid hsl(var(--border) / .55)}.payroll-payslip-formula{margin-top:2px;font-size:11px;font-weight:500;color:hsl(var(--muted-foreground))}.payroll-payslip-empty{margin:0;padding:8px 10px;font-size:12px;color:hsl(var(--muted-foreground));border:1px dashed hsl(var(--border));border-radius:8px;background:hsl(var(--muted) / .25)}.payroll-payslip-spaced{margin-top:.35rem}.payroll-payslip-total-row{display:flex;justify-content:space-between;align-items:baseline;margin-top:.3rem;padding:6px 10px;border-radius:8px;border:1px solid hsl(var(--border));background:hsl(var(--muted) / .2);font-size:13px}.payroll-payslip-net{display:flex;justify-content:space-between;align-items:center;margin:.55rem 0 .25rem;padding:10px 12px;border-radius:10px;border:2px solid hsl(var(--border));background:hsl(var(--card))}.payroll-payslip-net span{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--muted-foreground))}.payroll-payslip-net strong{font-size:22px;font-weight:800;letter-spacing:-.02em}.payroll-payslip-labor{margin:0 0 .35rem;font-size:12px;color:hsl(var(--muted-foreground))}.payroll-payslip-foot{margin:.35rem 0 0;font-size:11px;color:hsl(var(--muted-foreground))}.payroll-payslip-attendance-table{font-size:.625rem}.payroll-payslip-attendance-table th,.payroll-payslip-attendance-table td{padding:.2rem .3rem;line-height:1.2;white-space:nowrap}.payroll-payslip-attendance-table th{font-size:.5625rem;letter-spacing:.02em}.contractor-document-stack.is-one-page.is-compact .payroll-payslip-attendance-table{font-size:.5625rem}.contractor-document-stack.is-one-page.is-compact .payroll-payslip-attendance-table th,.contractor-document-stack.is-one-page.is-compact .payroll-payslip-attendance-table td{padding:.15rem .25rem}.payroll-payslip-attendance-total-row td{border-top:1px solid hsl(var(--border))}.payroll-payslip-computation-table{font-size:.6875rem}.payroll-payslip-computation-table th,.payroll-payslip-computation-table td{padding:.2rem .35rem;vertical-align:top}.payroll-payslip-computation-table th:last-child,.payroll-payslip-computation-table td:last-child{width:7.5rem;white-space:nowrap}.payroll-payslip-computation-emphasis td{border-top:1px solid hsl(var(--border));font-weight:600}.payroll-payslip-computation-note{margin:.25rem 0 0;font-size:.625rem;line-height:1.35;color:hsl(var(--muted-foreground))}.contractor-document-stack.is-one-page.is-compact .payroll-payslip-computation-table{font-size:.625rem}.contractor-document-stack.is-one-page.is-compact .payroll-payslip-computation-table th,.contractor-document-stack.is-one-page.is-compact .payroll-payslip-computation-table td{padding:.15rem .25rem}.contractor-document-stack.print-root .payroll-payslip-net strong,.contractor-document-stack.print-root .payroll-payslip-total-row strong{color:hsl(var(--foreground))}@media print{.sidebar-panel,.top-header,.collapse-strip,.sidebar-open,.reports-no-print{display:none!important;visibility:hidden!important}.reports-dashboard-root,.reports-dashboard-root *{visibility:visible!important}.reports-dashboard-root{position:absolute!important;left:0!important;top:0!important;width:100%!important;max-width:none!important;padding:0!important;background:#ffffff!important;color:#111827!important}.reports-print-only{display:block!important;visibility:visible!important}.reports-table-shell{max-height:none!important;overflow:visible!important}.reports-table-shell>div{max-height:none!important;overflow:visible!important}.app-main{margin:0!important;padding:0!important}.content-area{padding:12px 16px!important;max-width:none!important}}.file\:mr-3::file-selector-button{margin-right:.75rem}.file\:rounded-md::file-selector-button{border-radius:.375rem}.file\:border::file-selector-button{border-width:1px}.file\:border-border::file-selector-button{border-color:hsl(var(--border))}.file\:bg-muted::file-selector-button{background-color:hsl(var(--muted))}.file\:px-3::file-selector-button{padding-left:.75rem;padding-right:.75rem}.file\:py-1\.5::file-selector-button{padding-top:.375rem;padding-bottom:.375rem}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-primary\/15:hover{background-color:hsl(var(--primary) / .15)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:underline:hover{text-decoration-line:underline}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-primary:focus-visible{--tw-ring-color: hsl(var(--primary))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-60:disabled{opacity:.6}.dark\:border-amber-400\/70:is(.dark *){border-color:#fbbf24b3}.dark\:border-amber-500\/20:is(.dark *){border-color:#f59e0b33}.dark\:border-amber-500\/30:is(.dark *){border-color:#f59e0b4d}.dark\:border-blue-400\/55:is(.dark *){border-color:#60a5fa8c}.dark\:border-blue-500\/20:is(.dark *){border-color:#3b82f633}.dark\:border-emerald-400\/55:is(.dark *){border-color:#34d3998c}.dark\:border-red-400\/55:is(.dark *){border-color:#f871718c}.dark\:border-red-500\/20:is(.dark *){border-color:#ef444433}.dark\:border-white\/20:is(.dark *){border-color:#fff3}.dark\:bg-amber-500\/10:is(.dark *){background-color:#f59e0b1a}.dark\:bg-amber-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(69 26 3 / var(--tw-bg-opacity, 1))}.dark\:bg-blue-500\/10:is(.dark *){background-color:#3b82f61a}.dark\:bg-blue-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(23 37 84 / var(--tw-bg-opacity, 1))}.dark\:bg-emerald-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(2 44 34 / var(--tw-bg-opacity, 1))}.dark\:bg-red-500\/10:is(.dark *){background-color:#ef44441a}.dark\:bg-red-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(69 10 10 / var(--tw-bg-opacity, 1))}.dark\:bg-zinc-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1))}.dark\:text-amber-100:is(.dark *){--tw-text-opacity: 1;color:rgb(254 243 199 / var(--tw-text-opacity, 1))}.dark\:text-amber-200:is(.dark *){--tw-text-opacity: 1;color:rgb(253 230 138 / var(--tw-text-opacity, 1))}.dark\:text-amber-200\/80:is(.dark *){color:#fde68acc}.dark\:text-amber-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity, 1))}.dark\:text-blue-100:is(.dark *){--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.dark\:text-blue-200:is(.dark *){--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.dark\:text-emerald-100:is(.dark *){--tw-text-opacity: 1;color:rgb(209 250 229 / var(--tw-text-opacity, 1))}.dark\:text-red-100:is(.dark *){--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity, 1))}.dark\:text-red-200:is(.dark *){--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.dark\:text-red-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:text-zinc-100:is(.dark *){--tw-text-opacity: 1;color:rgb(244 244 245 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:p-8{padding:2rem}}@media (min-width: 768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[1fr_160px_130px\]{grid-template-columns:1fr 160px 130px}.md\:grid-cols-\[1fr_180px\]{grid-template-columns:1fr 180px}.md\:flex-row{flex-direction:row}.md\:flex-wrap{flex-wrap:wrap}.md\:items-end{align-items:flex-end}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}}@media (min-width: 1024px){.lg\:hidden{display:none}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[1fr_180px_150px\]{grid-template-columns:1fr 180px 150px}.lg\:grid-cols-\[1fr_180px_200px\]{grid-template-columns:1fr 180px 200px}.lg\:grid-cols-\[1fr_320px\]{grid-template-columns:1fr 320px}}@media (min-width: 1280px){.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.xl\:grid-cols-\[1\.15fr_0\.85fr\]{grid-template-columns:1.15fr .85fr}.xl\:grid-cols-\[1fr_190px_160px_190px_190px_150px_150px\]{grid-template-columns:1fr 190px 160px 190px 190px 150px 150px}.xl\:grid-cols-\[minmax\(220px\,1\.6fr\)_repeat\(5\,minmax\(132px\,1fr\)\)\]{grid-template-columns:minmax(220px,1.6fr) repeat(5,minmax(132px,1fr))}.xl\:flex-row{flex-direction:row}.xl\:items-center{align-items:center}.xl\:justify-between{justify-content:space-between}}@media (min-width: 1536px){.\32xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}
