.action-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:.5rem;border:1px solid var(--border);background:var(--card);color: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:var(--color-surface-secondary);border-color:var(--border);color:var(--foreground)}.action-icon-btn--neutral:hover:not(:disabled){background:var(--color-surface-secondary)}.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: var(--border);--reports-border-strong: var(--border);--reports-surface: var(--card);--reports-surface-raised: var(--card);--reports-surface-hover: var(--muted);--reports-shadow: var(--shadow-soft);--reports-radius: 12px;--reports-radius-sm: 8px}.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:var(--foreground)}.reports-page-header__eyebrow{margin:0 0 .35rem;font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted)}.reports-page-header__desc{margin:.5rem 0 0;max-width:36rem;font-size:.8125rem;line-height:1.55;color: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:var(--primary);color:var(--primary-foreground);box-shadow:0 2px 8px var(--color-hover)}.reports-btn--primary:hover:not(:disabled){filter:brightness(1.06)}.reports-btn--ghost{background:transparent;color:var(--muted-foreground)}.reports-btn--ghost:hover:not(:disabled){background:var(--reports-surface-hover);color:var(--foreground)}.reports-btn--soft{background:var(--reports-surface);border-color:var(--reports-border);color: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:var(--card);font-size:.75rem;color:var(--foreground);outline:none;transition:border-color .15s,box-shadow .15s}.reports-toolbar__control:focus{border-color:var(--color-hover);box-shadow:0 0 0 2px var(--color-hover)}.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:var(--card);font-size:.6875rem;font-weight:600;color: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: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:var(--muted-foreground);background:transparent;cursor:pointer;transition:all .15s ease}.reports-tab:hover{color:var(--foreground);background:var(--reports-surface-hover)}.reports-tab--active{color:var(--primary-foreground);background:var(--primary);border-color:var(--primary);box-shadow:0 2px 12px var(--color-hover)}.reports-tab--active:hover{color: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:var(--card);border:1px solid var(--reports-border);border-top:3px solid var(--primary);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:var(--muted-foreground)}.reports-hero-strip__value{font-size:1.0625rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--foreground)}.reports-hero-strip__value--green,.reports-hero-strip__value--amber,.reports-hero-strip__value--red{color:var(--color-text-strong)}.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:var(--foreground)}.reports-group__title--blue,.reports-group__title--costs,.reports-group__title--profit{color:var(--foreground)}.reports-group__subtitle{margin:0;font-size:.6875rem;color: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,.reports-metric--green .reports-metric__icon,.reports-metric--amber .reports-metric__icon,.reports-metric--red .reports-metric__icon,.reports-metric--violet .reports-metric__icon,.reports-metric--slate .reports-metric__icon{background:var(--color-surface-secondary);color:var(--color-text-muted);border-color:var(--color-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: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:var(--foreground)}.reports-metric__hint{margin:.35rem 0 0;font-size:.625rem;line-height:1.4;color:var(--color-text-muted)}.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: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:var(--charcoal-foreground);background:var(--charcoal);border-bottom:1px solid var(--charcoal-muted);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: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:var(--color-surface-secondary);color:var(--muted-foreground);border-color:var(--reports-border)}.reports-pill--blue,.reports-pill--green,.reports-pill--amber,.reports-pill--red,.reports-pill--violet{background:transparent;color:var(--color-text-primary);border-color:var(--color-border)}.reports-alert{display:flex;gap:.75rem;padding:.875rem 1rem;border-radius:var(--reports-radius-sm);border:1px solid var(--color-border);background:var(--color-surface-primary);font-size:.8125rem;color:var(--color-text-primary)}.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:var(--color-surface-secondary)}.reports-empty__title{margin:.75rem 0 0;font-size:.875rem;font-weight:600;color:var(--foreground)}.reports-empty__hint{margin:.375rem 0 0;max-width:22rem;font-size:.75rem;line-height:1.5;color:var(--muted-foreground)}.reports-skeleton{border-radius:var(--reports-radius-sm);background:var(--color-surface-secondary);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: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:var(--foreground);text-align:left;cursor:pointer}.reports-export-menu button:hover{background:var(--color-surface-secondary)}.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:rgb(28 32 38 / .55)}.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 var(--border);background:var(--card);color: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 var(--border)}.approval-remarks-modal__title{margin:0;font-size:1.0625rem;font-weight:700;color:var(--foreground)}.approval-remarks-modal__subtitle{margin:.35rem 0 0;font-size:.8125rem;color: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:var(--muted-foreground);cursor:pointer}.approval-remarks-modal__close:hover{background:var(--muted);color: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 var(--border)}.approval-remarks-textarea{width:100%;min-height:7rem;resize:vertical;border-radius:.5rem;border:1px solid var(--border);background:var(--background);color:var(--foreground);padding:.625rem .75rem;font-size:.875rem;line-height:1.45}.approval-remarks-textarea:focus{outline:2px solid var(--ring, var(--color-hover));outline-offset:1px}.approval-remarks-error{margin-bottom:.75rem;padding:.625rem .75rem;border-radius:.5rem;border:1px solid var(--color-surface-primary);background:var(--color-surface-primary);color: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 var(--color-surface-primary);background:var(--color-surface-primary);color:var(--foreground);font-size:.8125rem;line-height:1.45}.approval-blocked-hint{margin:.25rem 0 0;font-size:.6875rem;line-height:1.4;color:var(--muted-foreground)}.approval-legacy-hint{margin:0 0 .5rem;padding:.5rem .625rem;border-radius:.5rem;border:1px solid var(--color-surface-primary);background:var(--color-surface-primary);color: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 var(--border);background:var(--color-surface-secondary);color:var(--foreground);font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s}.approval-action-btn:hover:not(:disabled){background:var(--color-surface-secondary)}.approval-action-btn:disabled{opacity:.5;cursor:not-allowed}.approval-action-btn--primary{border-color:var(--color-hover);background:var(--color-hover);color:var(--primary)}.approval-action-btn--danger{border-color:var(--color-surface-primary);background:var(--color-surface-primary);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: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:var(--primary);box-shadow:0 0 0 3px var(--color-hover)}.approval-timeline__item:after{content:"";position:absolute;left:.54rem;top:1.1rem;bottom:0;width:2px;background:var(--border)}.approval-timeline__item:last-child{padding-bottom:0}.approval-timeline__item:last-child:after{display:none}.approval-timeline__card{border:1px solid var(--border);border-radius:.625rem;background:var(--background);padding:.625rem .75rem}.approval-timeline__action{margin:0;font-size:.8125rem;font-weight:700;color:var(--foreground)}.approval-timeline__meta{margin:.25rem 0 0;font-size:.75rem;color:var(--muted-foreground);line-height:1.45}.approval-timeline__remarks{margin:.35rem 0 0;font-size:.75rem;color:var(--foreground);font-style:italic}.approval-timeline-empty{padding:.75rem;border-radius:.625rem;border:1px dashed var(--border);color:var(--muted-foreground);font-size:.8125rem;text-align:center}.approval-pending-card{border-radius:.75rem;border:1px solid var(--border);background: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 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 var(--border)}.approval-pending-table th{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground);background:var(--color-surface-secondary)}.approval-pending-table tbody tr:hover{background:var(--color-surface-secondary)}.approval-pending-empty{padding:1.25rem;text-align:center;color:var(--muted-foreground);font-size:.8125rem}.billing-approval-actions{display:grid;gap:.5rem}.billing-approval-actions--compact{gap:.35rem}.billing-approval-actions__hint{margin:0;font-size:.6875rem;line-height:1.4;color:var(--muted-foreground)}.billing-approval-actions__error{margin:0;font-size:.6875rem;line-height:1.4;color:#b45309}.approval-center-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.approval-center-tab{border:1px solid var(--border);background:var(--card);color: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:var(--color-surface-secondary);color:var(--foreground)}.approval-center-tab--active{border-color:var(--color-hover);background:var(--color-hover);color: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 var(--border);background: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 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:var(--charcoal-foreground);background:var(--charcoal)}.approval-center-table tbody tr{cursor:pointer}.approval-center-table tbody tr:hover{background:var(--color-surface-secondary)}.approval-center-table__ref{font-weight:600;color:var(--foreground)}.approval-center-table__meta{color: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:var(--color-surface-secondary);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 var(--color-surface-primary);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:var(--muted-foreground)}.approval-center-detail-value{font-size:.875rem;color:var(--foreground)}.approval-center-detail-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid 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: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:var(--radius-card);border:1px solid var(--color-border);background:var(--color-surface-primary);padding:1rem;box-shadow:none;transition:border-color .15s ease;text-align:left}.dashboard-kpi-card--clickable{cursor:pointer}.dashboard-kpi-card--clickable:hover{border-color:var(--color-text-muted)}.dashboard-kpi-card__icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.5rem;background:var(--color-surface-secondary);color:var(--foreground)}.dashboard-kpi-card__label{font-size:.75rem;font-weight:600;color: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: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 var(--border);background: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:var(--muted-foreground)}.dashboard-widget__link{font-size:.75rem;font-weight:600;color:var(--color-text-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 color-mix(in srgb,var(--status-negative) 45%,var(--color-border));background:var(--color-surface-primary);color:var(--color-text-primary);padding:.65rem .75rem;font-size:.8125rem}.dashboard-widget__empty{border-radius:.5rem;border:1px dashed var(--border);background:var(--color-surface-secondary);padding:1.25rem;text-align:center;font-size:.8125rem;color:var(--muted-foreground)}.dashboard-widget__skeleton{display:grid;gap:.45rem}.dashboard-widget__skeleton-row{height:2.25rem;border-radius:.5rem;background:var(--color-surface-secondary);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 var(--border);background:var(--color-surface-secondary);padding:.35rem .55rem;font-size:.6875rem;font-weight:600;color: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 var(--border);vertical-align:top}.dashboard-table th{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground)}.dashboard-table tbody tr:last-child td{border-bottom:none}.dashboard-table__overdue{background:var(--color-surface-row)}.dashboard-alert-list{display:grid;gap:.55rem}.dashboard-alert-item{display:flex;align-items:flex-start;gap:.65rem;border-radius:.625rem;border:1px solid var(--border);background:var(--color-surface-secondary);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:var(--color-text-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 var(--border);background:var(--color-surface-secondary);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:var(--muted-foreground)}.dashboard-stack{display:grid;gap:1rem}.project-checklist-page{display:flex;flex-direction:column;gap:1.25rem}.project-checklist-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.project-checklist-tab{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--border);background:var(--card);color:var(--color-surface-primary);border-radius:999px;padding:.45rem .95rem;font-size:.8125rem;font-weight:600;transition:background .15s ease,color .15s ease,border-color .15s ease}.project-checklist-tab:hover{background:var(--muted);color:var(--foreground)}.project-checklist-tab.is-active{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.project-checklist-categories{display:grid;gap:.65rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.project-checklist-category{display:flex;align-items:flex-start;gap:.55rem;border:1px solid var(--border);border-radius:.65rem;background:var(--card);padding:.65rem .75rem;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.project-checklist-category:hover{border-color:var(--color-hover)}.project-checklist-category.is-selected{border-color:var(--primary);box-shadow:0 0 0 1px var(--color-hover)}.project-checklist-category input{margin-top:.15rem;accent-color:var(--primary)}.project-checklist-category span{font-size:.8125rem;font-weight:600;line-height:1.35}.project-checklist-summary{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.project-checklist-summary-card{border:1px solid var(--border);border-radius:.75rem;background:var(--card);padding:.85rem 1rem}.project-checklist-summary-card .label{font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground)}.project-checklist-summary-card .value{margin-top:.25rem;font-size:1.35rem;font-weight:800;line-height:1.1}.project-checklist-summary-card.tone-passed .value{color:#2d7654}.project-checklist-summary-card.tone-failed .value{color:#bd2828}.project-checklist-summary-card.tone-pending .value{color:#c67110}.project-checklist-filters{display:flex;flex-wrap:wrap;gap:.45rem}.project-checklist-filter-btn{border:1px solid var(--border);background:var(--card);color:var(--color-surface-primary);border-radius:.5rem;padding:.35rem .75rem;font-size:.75rem;font-weight:700}.project-checklist-filter-btn.is-active{border-color:var(--primary);background:var(--color-hover);color:var(--primary)}.project-checklist-filter-btn.tone-failed.is-active,.project-checklist-filter-btn.tone-pending.is-active{border-color:var(--primary)}.project-checklist-items-table td{vertical-align:top}.project-checklist-item-text{font-size:.875rem;font-weight:600;line-height:1.4}.project-checklist-item-category{margin-top:.2rem;font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted-foreground)}.project-checklist-row-failed{background:var(--color-surface-row)}.project-checklist-row-pending{background:var(--color-surface-secondary)}.project-checklist-inline-input{width:100%;min-width:120px;border:1px solid var(--border);border-radius:.45rem;background:var(--background);padding:.35rem .5rem;font-size:.8125rem}.project-checklist-inline-input:disabled{opacity:.65;cursor:not-allowed}.project-checklist-status-select{min-width:130px}.project-checklist-photo-placeholder{display:inline-flex;align-items:center;gap:.35rem;border:1px dashed var(--border);border-radius:.45rem;padding:.35rem .55rem;font-size:.6875rem;font-weight:600;color:var(--muted-foreground)}.project-checklist-photo-placeholder.has-photo{border-style:solid;color:var(--primary)}.project-checklist-report-actions{display:flex;flex-wrap:wrap;gap:.5rem}.project-detail-shell{display:flex;flex-direction:column;gap:1rem}.project-detail-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem;border:1px solid var(--border);border-radius:.85rem;background:var(--card);padding:1rem 1.15rem;box-shadow:0 1px 2px var(--color-surface-primary)}.project-detail-meta{display:grid;gap:.35rem}.project-detail-meta h2{font-size:1.125rem;font-weight:800}.project-detail-meta p{font-size:.8125rem;color:var(--muted-foreground)}.project-detail-nav{display:flex;flex-wrap:wrap;gap:.45rem}.project-detail-nav button{border:1px solid var(--border);background:var(--card);border-radius:999px;padding:.45rem .95rem;font-size:.8125rem;font-weight:700;color:var(--color-surface-primary)}.project-detail-nav button.is-active{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.checklist-templates-panel .template-category{border:1px solid var(--border);border-radius:.75rem;background:var(--card);overflow:hidden}.checklist-templates-panel .template-category-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--border);background:var(--color-surface-secondary)}.checklist-templates-panel .template-category-head h3{font-size:.9375rem;font-weight:800}.checklist-templates-panel .template-items{padding:.75rem 1rem 1rem}.checklist-templates-panel .template-item-row{display:flex;align-items:flex-start;gap:.65rem;padding:.45rem 0;border-bottom:1px solid var(--color-surface-primary)}.checklist-templates-panel .template-item-row:last-child{border-bottom:none}.checklist-templates-panel .template-item-index{min-width:1.5rem;font-size:.75rem;font-weight:700;color:var(--muted-foreground);padding-top:.15rem}.checklist-templates-panel .template-item-text{flex:1;font-size:.8125rem;line-height:1.45}.checklist-templates-panel .template-empty{font-size:.8125rem;color:var(--muted-foreground);font-style:italic}.document-workspace-header{display:flex;flex-direction:column;gap:.75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1rem 1.125rem;box-shadow:none}@media (min-width: 768px){.document-workspace-header{flex-direction:row;align-items:center;justify-content:space-between}}.document-workspace-header__copy h2{margin:0;font-size:1.125rem;font-weight:700;color:var(--foreground)}.document-workspace-header__copy p{margin:.25rem 0 0;font-size:.8125rem;color:var(--muted-foreground);line-height:1.45}.document-workspace-actions{display:flex;flex-wrap:wrap;gap:.5rem}.document-preview-modal{background:var(--background)}.document-preview-toolbar{flex-wrap:wrap;min-height:auto;padding:14px 16px 12px;gap:12px;background:var(--charcoal);border-bottom:1px solid var(--border);box-shadow:none}.document-preview-toolbar h2{color:var(--charcoal-foreground);font-size:1.05rem;font-weight:800;letter-spacing:-.01em}.document-preview-toolbar-subtitle{color:var(--sidebar-foreground);white-space:normal;max-width:none}.document-preview-toolbar-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}.document-preview-meta-chip{display:inline-flex;align-items:center;gap:6px;border-radius:6px;border:1px solid var(--charcoal-muted);background:var(--color-surface-primary);padding:4px 9px;color:var(--charcoal-foreground);font-size:11px;font-weight:600;line-height:1.2}.document-preview-meta-chip strong{color:var(--sidebar-foreground);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.document-preview-meta-chip--amount{border-color:var(--color-hover);background:var(--color-hover)}.document-preview-meta-chip--amount strong{color:var(--color-text-strong)}.document-preview-control-label{color:var(--sidebar-foreground)}.document-preview-zoom-group{border-color:var(--charcoal-muted);background:var(--color-surface-primary)}.document-preview-zoom-readout{color:var(--charcoal-foreground)}.document-paper-picker{border-color:var(--charcoal-muted);background:var(--color-surface-primary)}.document-paper-picker button{color:var(--sidebar-foreground)}.document-preview-primary-actions{border-left-color:var(--charcoal-muted)}.document-preview-btn-outline{border-color:var(--charcoal-muted);background:var(--color-surface-primary);color:var(--charcoal-foreground)}.document-preview-btn-outline:hover{background:var(--color-surface-primary)}.document-preview-btn-accent{border-color:var(--color-border);background:transparent;color:var(--color-text-primary)}.document-preview-btn-accent:hover{background:var(--color-hover)}.document-preview-btn-primary{border-color:var(--color-border);background:var(--color-text-strong);color:#000;box-shadow:none}.document-preview-btn-ghost{color:var(--sidebar-foreground)}.document-preview-btn-ghost:hover{background:var(--color-surface-primary);color:var(--charcoal-foreground)}.document-preview-stage{background:var(--background);padding:24px 16px 40px}.document-status-chip{display:inline-flex;align-items:center;border-radius:6px;border:1px solid transparent;padding:3px 8px;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;line-height:1.2}.document-status-chip--draft{border-color:var(--border);background:var(--muted);color:var(--muted-foreground)}.document-status-chip--pending,.document-status-chip--approved{border-color:var(--color-border);background:transparent;color:var(--color-text-primary)}html.dark .document-status-chip--pending,html.dark .document-status-chip--approved{color:var(--color-text-primary)}.document-action-buttons{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px}.document-action-btn{display:inline-flex;min-height:30px;align-items:center;justify-content:center;gap:5px;border-radius:6px;border:1px solid var(--border);background:var(--card);padding:0 10px;color:var(--foreground);font-size:11px;font-weight:700;line-height:1;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.document-action-btn:hover:not(:disabled){background:var(--muted)}.document-action-btn:disabled{opacity:.55;cursor:not-allowed}.document-action-btn--accent{border-color:var(--color-border);color:var(--color-text-primary)}.document-action-btn--accent:hover:not(:disabled){background:var(--color-hover)}.document-action-btn--primary{border-color:var(--color-border);background:var(--color-text-strong);color:#000}.document-action-btn--primary:hover:not(:disabled){background:#e8e8e8}.document-extended-catalog{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.document-extended-catalog__title{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-foreground)}.client-portal-documents{display:flex;flex-direction:column;gap:1rem}.client-portal-documents__intro{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1rem 1.125rem}.client-portal-documents__intro h3{margin:0;font-size:.9375rem;font-weight:700}.client-portal-documents__intro p{margin:.35rem 0 0;font-size:.8125rem;color:var(--muted-foreground);line-height:1.5}.client-portal-doc-card{display:flex;flex-direction:column;gap:.75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1rem;box-shadow:none}@media (min-width: 640px){.client-portal-doc-card{flex-direction:row;align-items:center;justify-content:space-between}}.client-portal-doc-card__meta{min-width:0}.client-portal-doc-card__no{font-size:.9375rem;font-weight:700;color:var(--foreground)}.client-portal-doc-card__context{margin-top:4px;font-size:.8125rem;color:var(--muted-foreground)}@media (max-width: 767px){.document-preview-toolbar-brand{width:100%}.document-toolbar-actions{width:100%;justify-content:flex-start}.document-preview-primary-actions{width:100%;padding-left:0;border-left:0;padding-top:8px;border-top:1px solid var(--charcoal-muted)}.document-preview-btn,.document-action-btn{flex:1 1 auto;min-width:0}}.settings-testing-util{max-width:28rem;padding:.875rem 1rem;border:1px solid var(--st-border);border-radius:.625rem;background:var(--color-surface-secondary)}.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, var(--border));background: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, 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, 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, var(--border))}.testing-modal-warning{margin:0 0 .875rem;padding:.55rem .65rem;border-radius:.5rem;border:1px solid var(--st-border);background:var(--color-surface-secondary);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, 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:var(--color-surface-secondary);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, 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, 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: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:var(--color-surface-secondary);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, var(--foreground))}.testing-detail-list ul{margin:.15rem 0 0;padding-left:1rem;font-size:.78rem;color:var(--st-muted)}.settings-root{--st-surface: var(--card);--st-border: rgba(255, 255, 255, .08);--st-muted: 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:var(--card);box-shadow:var(--shadow-soft)}.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: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: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:var(--color-surface-secondary);color:var(--foreground)}.settings-nav-btn.is-active{background:var(--primary);color: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:var(--color-surface-secondary)}.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:var(--color-surface-primary);color: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:var(--color-surface-secondary);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:var(--color-surface-secondary)}.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:var(--color-surface-secondary)}.settings-mini-pill.on{border-color:var(--color-hover);background:var(--color-hover);color: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:var(--color-surface-secondary);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:var(--color-surface-secondary)}.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: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:var(--color-surface-secondary)}.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:var(--color-surface-primary);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: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)}.settings-subsection{border-top:1px solid var(--st-border);padding-top:1.25rem}.settings-subsection-title{margin:0 0 .5rem;font-size:.95rem;font-weight:700;color:var(--foreground)}.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 var(--border);background: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:var(--color-hover);color:var(--primary)}.access-page-header__title{margin:0;font-size:1.125rem;font-weight:700;color:var(--foreground)}.access-page-header__subtitle{margin:.25rem 0 0;font-size:.875rem;color:var(--muted-foreground)}.access-session-banner{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:.625rem;border:1px solid var(--color-hover);background:var(--color-hover);font-size:.875rem;color: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 var(--border);background:var(--color-surface-secondary)}.access-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .875rem;border-radius:.5rem;border:none;background:transparent;color:var(--muted-foreground);font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.access-tab:hover{background:var(--color-surface-secondary);color:var(--foreground)}.access-tab--active{background:var(--card);color:var(--foreground);box-shadow:0 1px 2px #00000014}.access-tab-content{border-radius:.75rem;border:1px solid var(--border);background: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:var(--foreground)}.access-toolbar__desc{margin:.2rem 0 0;font-size:.8125rem;color: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 var(--border);background: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 var(--border);color:var(--foreground)}.access-table th{font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);background:var(--color-surface-secondary)}.access-table tbody tr:hover{background:var(--color-surface-secondary)}.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 var(--border);background:var(--color-surface-secondary)}.access-role-card__icon{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:.5rem;background:var(--color-hover);color: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:var(--foreground)}.access-role-card__desc{margin:.35rem 0 0;font-size:.8125rem;color:var(--muted-foreground);line-height:1.45}.access-role-card__meta{display:flex;gap:.75rem;margin-top:.5rem;font-size:.75rem;color: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 var(--border);background:var(--background);color:var(--foreground);font-size:.875rem;line-height:1.4}.access-input:focus{outline:2px solid var(--color-hover);outline-offset:1px;border-color:var(--color-hover)}.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: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 var(--border);background:var(--color-surface-secondary);color: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:rgb(28 32 38 / .55)}.access-modal{display:flex;flex-direction:column;width:100%;max-height:min(90vh,760px);overflow:hidden;border-radius:.875rem;border:1px solid var(--border);background:var(--card);color: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 var(--border);background:var(--card)}.access-modal__head-copy{min-width:0}.access-modal__title{margin:0;font-size:1.0625rem;font-weight:700;color:var(--foreground);line-height:1.3}.access-modal__subtitle{margin:.35rem 0 0;font-size:.8125rem;color: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:var(--muted-foreground);cursor:pointer}.access-modal__close:hover{background:var(--muted);color: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: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 var(--border);background: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 var(--border);border-radius:.625rem;overflow:hidden;background:var(--background)}.access-perm-group__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .75rem;background:var(--color-surface-secondary);border-bottom:1px solid var(--border)}.access-perm-group__title{margin:0;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color: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 var(--border);cursor:pointer;background:var(--card)}.access-perm-check:first-child{border-top:none}.access-perm-check:hover{background:var(--color-surface-secondary)}.access-perm-check input[type=checkbox]{margin-top:.15rem;flex-shrink:0;width:1rem;height:1rem;accent-color: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:var(--foreground)}.access-perm-check__key{font-size:.6875rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:var(--muted-foreground)}.access-perm-check__desc{font-size:.75rem;color: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 var(--border);border-radius:.625rem;background: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 var(--border);vertical-align:middle;color:var(--foreground)}.access-matrix th{position:sticky;top:0;z-index:2;background:var(--card);font-size:.6875rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted-foreground)}.access-matrix__sticky{position:sticky;left:0;z-index:1;min-width:220px;max-width:280px;background:var(--card)}.access-matrix__role-col{min-width:100px;text-align:center}.access-matrix__role-name{display:block;font-weight:700;color: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:var(--muted-foreground);background:var(--color-surface-secondary)}.access-matrix__perm-label{font-weight:600}.access-matrix__perm-key{font-size:.6875rem;font-family:ui-monospace,monospace;color:var(--muted-foreground)}.access-matrix__cell{text-align:center}.access-matrix__checkbox{width:1rem;height:1rem;cursor:pointer;accent-color:var(--primary)}.access-matrix__granted{color:#059669;font-weight:700}.access-matrix__denied{color: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:var(--foreground)}.access-catalog-search{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:.5rem;border:1px solid var(--border);background:var(--color-surface-secondary)}.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 var(--border);border-radius:.625rem;padding:.875rem 1rem;background:var(--color-surface-secondary)}.access-catalog-card__title{margin:0 0 .65rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color: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:var(--card);border:1px solid var(--border)}.access-catalog-item--granted{border-color:var(--color-hover);background:var(--color-hover)}.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:var(--foreground)}.access-catalog-item__key{display:block;margin-top:.15rem;font-size:.6875rem;font-family:ui-monospace,monospace;color:var(--muted-foreground)}.access-catalog-item__desc{margin:.25rem 0 0;font-size:.75rem;color: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:var(--foreground)}.access-empty__subtitle{margin:0;font-size:.875rem;color: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:var(--muted-foreground);font-size:.875rem}:root,html.dark{color-scheme:dark;--color-page-bg: #050506;--color-app-bg: #0b0d10;--color-sidebar: #000000;--color-surface-primary: #101114;--color-surface-secondary: #15181c;--color-surface-elevated: #1d2025;--color-surface-row: #17191d;--color-border: #2a2e34;--color-border-soft: rgba(255, 255, 255, .12);--color-text-primary: #f2f1ed;--color-text-strong: #ffffff;--color-text-muted: #8f8f8f;--color-text-disabled: #5f6368;--color-input-bg: #0f1114;--color-hover: #191c20;--color-focus: #ffffff;--status-positive: #1b8a5a;--status-neutral: #c98a1f;--status-negative: #d93a3a;--background: var(--color-app-bg);--foreground: var(--color-text-primary);--card: var(--color-surface-primary);--card-foreground: var(--color-text-primary);--muted: var(--color-surface-secondary);--muted-foreground: var(--color-text-muted);--border: var(--color-border);--input: var(--color-input-bg);--primary: var(--color-text-strong);--primary-foreground: #000000;--ring: var(--color-focus);--success: var(--status-positive);--success-foreground: var(--color-text-strong);--warning: var(--status-neutral);--warning-foreground: var(--color-text-primary);--destructive: var(--status-negative);--destructive-foreground: var(--color-text-strong);--sidebar: var(--color-sidebar);--sidebar-foreground: var(--color-text-muted);--sidebar-foreground-strong: var(--color-text-strong);--sidebar-border: var(--color-border-soft);--sidebar-muted: var(--color-hover);--sidebar-active: transparent;--sidebar-active-foreground: var(--color-text-strong);--sidebar-group: var(--color-text-muted);--charcoal: var(--color-surface-secondary);--charcoal-foreground: var(--color-text-primary);--charcoal-muted: var(--color-text-muted);--doc-accent: #e8720c;--doc-charcoal: #1a1a1a;--doc-charcoal-foreground: #ffffff;--shadow-soft: none;--shadow-panel: none;--radius-sm: 6px;--radius-md: 6px;--radius-lg: 12px;--radius-xl: 12px;--radius-card: 14px;--chart-accent: #f2f1ed;--chart-charcoal: #101114;--chart-muted: #8f8f8f;--font-size-base: 14px;--font-weight-body: 400;--font-weight-heading: 600}html.light{color-scheme:dark}.structura-section-label,.metric-card-label{margin:0;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted)}.structura-metric-value,.metric-card-value{margin-top:.5rem;font-size:1.5rem;font-weight:600;line-height:1.15;color:var(--color-text-strong);letter-spacing:-.01em}.structura-metric-caption,.metric-card-caption{display:block;margin-top:.35rem;font-size:12px;color:var(--color-text-muted)}.structura-metric-card,.shadow-soft{box-shadow:none!important}.rounded-lg.border.border-border.bg-card{border-radius:var(--radius-card);border-color:var(--color-border);background:var(--color-surface-primary)}.structura-status-pill{display:inline-flex;max-width:100%;align-items:center;gap:.4rem;border-radius:999px;border:1px solid var(--color-border);background:transparent;padding:.2rem .55rem;font-size:11px;font-weight:600;line-height:1.3;color:var(--color-text-primary)}.structura-status-dot{flex-shrink:0;width:7px;height:7px;border-radius:999px;background:var(--color-text-muted)}.structura-status-dot--positive{background:var(--status-positive)}.structura-status-dot--neutral{background:var(--status-neutral)}.structura-status-dot--negative{background:var(--status-negative)}.structura-notice,.structura-empty-state{border-radius:var(--radius-card);border:1px solid var(--color-border);background:var(--color-surface-primary);color:var(--color-text-primary)}.structura-notice--critical{border-color:color-mix(in srgb,var(--status-negative) 45%,var(--color-border));color:var(--color-text-primary)}.structura-notice--critical:before{content:"";display:inline-block;width:7px;height:7px;margin-right:.5rem;border-radius:999px;background:var(--status-negative);vertical-align:middle}.structura-notice--warning:before{content:"";display:inline-block;width:7px;height:7px;margin-right:.5rem;border-radius:999px;background:var(--status-neutral);vertical-align:middle}.structura-inline-hint{margin-top:.5rem;font-size:.875rem;font-weight:600;color:var(--color-text-muted)}.structura-progress{margin-top:.75rem;height:.5rem;overflow:hidden;border-radius:999px;background:var(--color-hover)}.structura-progress__fill{height:100%;border-radius:999px;background:var(--color-text-strong);transition:width .2s ease}.structura-icon-muted{color:var(--color-text-muted)}.structura-icon-strong{color:var(--color-text-strong)}.structura-form-error{border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--status-negative) 45%,var(--color-border));background:var(--color-surface-primary);color:var(--color-text-primary);padding:.5rem .75rem;font-size:.875rem;font-weight:600}.structura-field-error{margin-top:.25rem;font-size:.75rem;font-weight:600;color:var(--status-negative)}.structura-text-negative{color:var(--status-negative)}.structura-link{color:var(--color-text-primary);text-decoration:underline}.structura-link:hover{color:var(--color-text-strong)}.structura-row-selected{background:var(--color-hover)}.btn-primary-mono{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-text-strong);color:#000;font-weight:600}.btn-primary-mono:hover:not(:disabled){background:#e8e8e8}.btn-secondary-mono{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-primary)}.btn-secondary-mono:hover:not(:disabled){background:var(--color-hover);color:var(--color-text-strong)}.recharts-default-tooltip{border:1px solid var(--color-border)!important;border-radius:var(--radius-sm)!important;background:var(--color-surface-elevated)!important;color:var(--color-text-primary)!important;box-shadow:none!important}*,: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: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
 */*,: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}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.right-2{right:.5rem}.top-0{top:0}.top-2{top:.5rem}.z-10{z-index:10}.z-30{z-index:30}.z-\[200\]{z-index:200}.z-\[2\]{z-index:2}.col-span-full{grid-column:1 / -1}.m-0{margin:0}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mr-5{margin-right:1.25rem}.mr-auto{margin-right:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.box-border{box-sizing:border-box}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.\!h-12{height:3rem!important}.\!h-auto{height:auto!important}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-28{height:7rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.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-fit{height:-moz-fit-content;height:fit-content}.max-h-40{max-height:10rem}.max-h-44{max-height:11rem}.max-h-48{max-height:12rem}.max-h-52{max-height:13rem}.max-h-72{max-height:18rem}.max-h-\[60px\]{max-height:60px}.max-h-\[80px\]{max-height:80px}.max-h-\[82vh\]{max-height:82vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[92vh\]{max-height:92vh}.max-h-\[min\(560px\,calc\(85vh-240px\)\)\]{max-height:min(560px,calc(85vh - 240px))}.min-h-0{min-height:0px}.min-h-\[220px\]{min-height:220px}.min-h-\[240px\]{min-height:240px}.min-h-\[260px\]{min-height:260px}.min-h-\[280px\]{min-height:280px}.min-h-\[2rem\]{min-height:2rem}.min-h-\[320px\]{min-height:320px}.min-h-\[38px\]{min-height:38px}.min-h-\[4rem\]{min-height:4rem}.min-h-\[56px\]{min-height:56px}.min-h-\[64px\]{min-height:64px}.min-h-\[72px\]{min-height:72px}.min-h-\[80px\]{min-height:80px}.min-h-\[calc\(100\%-2rem\)\]{min-height:calc(100% - 2rem)}.min-h-screen{min-height:100vh}.\!w-12{width:3rem!important}.w-10{width:2.5rem}.w-12{width:3rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[100px\]{width:100px}.w-\[108px\]{width:108px}.w-\[128px\]{width:128px}.w-\[130px\]{width:130px}.w-\[140px\]{width:140px}.w-\[148px\]{width:148px}.w-\[min\(92vw\,420px\)\]{width:min(92vw,420px)}.w-\[min\(92vw\,480px\)\]{width:min(92vw,480px)}.w-\[min\(92vw\,560px\)\]{width:min(92vw,560px)}.w-\[min\(92vw\,720px\)\]{width:min(92vw,720px)}.w-\[min\(92vw\,760px\)\]{width:min(92vw,760px)}.w-\[min\(94vw\,1180px\)\]{width:min(94vw,1180px)}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-screen{width:100vw}.\!min-w-\[48px\]{min-width:48px!important}.min-w-0{min-width:0px}.min-w-\[100px\]{min-width:100px}.min-w-\[116px\]{min-width:116px}.min-w-\[132px\]{min-width:132px}.min-w-\[140px\]{min-width:140px}.min-w-\[150px\]{min-width:150px}.min-w-\[160px\]{min-width:160px}.min-w-\[170px\]{min-width:170px}.min-w-\[1720px\]{min-width:1720px}.min-w-\[180px\]{min-width:180px}.min-w-\[220px\]{min-width:220px}.min-w-\[240px\]{min-width:240px}.min-w-\[720px\]{min-width:720px}.min-w-\[72px\]{min-width:72px}.min-w-\[84px\]{min-width:84px}.min-w-\[86px\]{min-width:86px}.min-w-\[8rem\]{min-width:8rem}.min-w-\[96px\]{min-width:96px}.min-w-full{min-width:100%}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-\[100px\]{max-width:100px}.max-w-\[120px\]{max-width:120px}.max-w-\[140px\]{max-width:140px}.max-w-\[1600px\]{max-width:1600px}.max-w-\[160px\]{max-width:160px}.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-\[280px\]{max-width:280px}.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}.border-collapse{border-collapse:collapse}.rotate-180{--tw-rotate: 180deg;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))}.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}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.flex-row{flex-direction:row}.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}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.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-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * 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))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-card{border-radius:var(--radius-card)}.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-0{border-width:0px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-border{border-color:var(--border)}.border-destructive{border-color:var(--destructive)}.border-red-300\/50{border-color:#fca5a580}.border-red-300\/60{border-color:#fca5a599}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-red-500\/50{border-color:#ef444480}.border-red-500\/70{border-color:#ef4444b3}.border-slate-600\/60{border-color:#47556999}.border-slate-700\/50{border-color:#33415580}.bg-background{background-color:var(--background)}.bg-black\/60{background-color:#0009}.bg-black\/80{background-color:#000c}.bg-card{background-color:var(--card)}.bg-charcoal{background-color:var(--charcoal)}.bg-muted{background-color:var(--muted)}.bg-primary{background-color:var(--primary)}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-red-950\/80{background-color:#450a0acc}.bg-slate-950\/30{background-color:#0206174d}.bg-slate-950\/50{background-color:#02061780}.bg-transparent{background-color:transparent}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0{padding:0}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.\!py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.\!py-2\.5{padding-top:.625rem!important;padding-bottom:.625rem!important}.px-2{padding-left:.5rem;padding-right:.5rem}.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}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-10{padding-bottom:2.5rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-4{padding-left:1rem}.pr-2{padding-right:.5rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.text-left{text-align:left}.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}.font-sans{font-family:Inter,ui-sans-serif,system-ui,sans-serif}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-base{font-size:14px;line-height:1.5}.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}.capitalize{text-transform:capitalize}.italic{font-style:italic}.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-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-card-foreground{color:var(--card-foreground)}.text-charcoal-foreground{color:var(--charcoal-foreground)}.text-destructive{color:var(--destructive)}.text-foreground{color:var(--foreground)}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-muted-foreground{color:var(--muted-foreground)}.text-primary-foreground{color:var(--primary-foreground)}.text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / 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-sidebar-foreground{color:var(--sidebar-foreground)}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow-inner{--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 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-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: var(--shadow-soft);--tw-shadow-colored: var(--shadow-soft);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-1{--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(1px + 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)}.ring-red-500\/30{--tw-ring-color: rgb(239 68 68 / .3)}.blur{--tw-blur: blur(8px);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)}.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)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;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}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:var(--font-size-base);font-weight:var(--font-weight-body);background:var(--color-page-bg);color:var(--color-text-primary)}body{margin:0;min-height:100vh;background:var(--color-page-bg);color:var(--color-text-primary)}button,input,select{font:inherit}button{cursor:pointer}.app-main{min-height:100vh;padding-left:250px;background:var(--color-app-bg)}.sidebar-panel{position:fixed;inset:0 auto 0 0;z-index:40;width:250px;border-right:1px solid var(--sidebar-border);background:var(--sidebar);color:var(--sidebar-foreground);transition:transform .18s ease}.sidebar-brand{display:flex;height:72px;align-items:center;gap:12px;border-bottom:1px solid var(--sidebar-border);padding:0 16px}.sidebar-brand-mark{display:grid;height:36px;width:36px;place-items:center;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-primary);color:var(--color-text-strong);font-size:14px;font-weight:600;letter-spacing:-.02em}.sidebar-brand-title{color:var(--sidebar-foreground-strong);font-size:14px;font-weight:700;line-height:1.2}.sidebar-brand-tagline{color:var(--sidebar-foreground);font-size:11px;font-weight:500}.sidebar-group-label{padding:0 16px;color:var(--sidebar-group);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.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:var(--radius-md);padding:0 12px;color:var(--sidebar-foreground);font-size:13px;font-weight:500;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.sidebar-item:hover{background:var(--sidebar-muted);color:var(--sidebar-foreground-strong)}.sidebar-item-active{background:var(--color-hover);color:var(--sidebar-active-foreground);box-shadow:inset 2px 0 0 var(--color-text-strong);font-weight:600}.collapse-strip{display:flex;height:50px;width:100%;align-items:center;justify-content:center;gap:10px;border-top:1px solid var(--sidebar-border);background:var(--sidebar);color:var(--sidebar-foreground);font-size:13px}.collapse-strip:hover{background:var(--sidebar-muted);color:var(--sidebar-foreground-strong)}.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 var(--color-border);background:var(--color-sidebar);padding:0 24px;box-shadow:none}.content-area{padding:24px;background:var(--color-app-bg);min-height:calc(100vh - 54px)}.structura-toast{position:fixed;bottom:1.25rem;right:1.25rem;z-index:50;max-width:min(24rem,calc(100vw - 2rem));border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface-elevated);padding:.75rem 1rem;color:var(--color-text-primary);font-size:.875rem;font-weight:600;box-shadow:none}.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 var(--border);padding:0 9px;text-align:left;color:var(--muted-foreground);font-size:11px;font-weight:500;transition:all .15s ease}.selector-button:hover,.selector-active{border-color:var(--color-text-strong);background:var(--color-hover);color:var(--color-text-strong)}.pill-button{min-height:30px;border-radius:7px;border:1px solid var(--border);background:var(--card);padding:0 11px;color:var(--muted-foreground);font-size:12px;font-weight:600;transition:all .15s ease}.pill-active{border-color:var(--color-text-strong);background:var(--color-hover);color:var(--color-text-strong)}.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:var(--primary);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:var(--primary);font-size:17px;font-weight:800}.paper-rule{margin-top:24px;height:2px;background:var(--primary)}.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:var(--primary);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:var(--background);color: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 var(--border);background:var(--card);padding:12px 18px;box-shadow:0 1px 0 var(--border)}.document-preview-toolbar h2{margin:0;font-size:16px;font-weight:800}.document-preview-toolbar p{margin:2px 0 0;color:var(--muted-foreground);font-size:12px;font-weight:600}.document-preview-toolbar-brand{display:flex;min-width:0;align-items:flex-start;gap:14px}.document-preview-toolbar-copy{min-width:0}.document-preview-toolbar-subtitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(56vw,720px)}.document-preview-control-group{display:inline-flex;align-items:center;gap:8px}.document-preview-control-label{color:var(--muted-foreground);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.document-preview-zoom-group{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--border);border-radius:9px;background:var(--color-surface-secondary);padding:2px}.document-preview-zoom-readout{min-width:42px;text-align:center;font-size:12px;font-weight:700;color:var(--foreground)}.document-preview-primary-actions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;padding-left:4px;border-left:1px solid var(--border)}.document-preview-btn{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:6px;border-radius:9px;border:1px solid transparent;padding:0 12px;font-size:12px;font-weight:700;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}.document-preview-btn-outline{border-color:var(--border);background:var(--card);color:var(--foreground)}.document-preview-btn-outline:hover{background:var(--color-surface-secondary)}.document-preview-btn-primary{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.document-preview-btn-primary:hover{filter:brightness(1.05)}.document-preview-btn-ghost{background:transparent;color:var(--muted-foreground)}.document-preview-btn-ghost:hover{background:var(--color-surface-secondary);color:var(--foreground)}.document-type-badge-wrap{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px}.document-type-badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid transparent;padding:4px 10px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;line-height:1.2}.document-type-badge--sm{padding:2px 8px;font-size:10px}.document-type-badge--lg{padding:6px 12px;font-size:12px}.document-type-badge-detail{color:var(--muted-foreground);font-size:10px;font-weight:600}.document-type-badge--blue{border-color:var(--color-hover);background:var(--color-hover);color:#934510}.document-type-badge--green{border-color:var(--color-surface-primary);background:var(--color-surface-primary);color:#27684a}.document-type-badge--amber{border-color:var(--color-surface-primary);background:var(--color-surface-primary);color:#8a510f}.document-type-badge--red{border-color:var(--color-surface-primary);background:var(--color-surface-primary);color:#a02222}.document-type-badge--slate{border-color:var(--border);background:var(--muted);color:var(--muted-foreground)}.document-type-badge--indigo{border-color:var(--color-surface-primary);background:var(--color-surface-primary);color:var(--charcoal)}.document-type-badge--teal{border-color:#47858559;background:hsl(180 30% 94%);color:#2e6060}html.dark .document-type-badge--blue{color:var(--primary)}html.dark .document-type-badge--green{color:#79d2a9}html.dark .document-type-badge--amber{color:var(--warning)}html.dark .document-type-badge--red{color:#e87d7d}html.dark .document-type-badge--slate{color:var(--muted-foreground)}html.dark .document-type-badge--indigo{color:var(--foreground)}html.dark .document-type-badge--teal{color:#82c9c9}.document-type-catalog{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.document-type-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:12px 14px;box-shadow:var(--shadow-soft)}.document-type-card-label{font-size:13px;font-weight:800;letter-spacing:.01em;color:var(--foreground)}.document-type-card-hint{margin:4px 0 0;font-size:11px;line-height:1.35;color:var(--muted-foreground)}.document-type-card--blue{border-top:3px solid var(--primary)}.document-type-card--green{border-top:3px solid var(--success)}.document-type-card--amber{border-top:3px solid var(--warning)}.document-type-card--indigo{border-top:3px solid var(--charcoal)}.document-type-card--teal{border-top:3px solid hsl(180 35% 38%)}.document-type-card--slate{border-top:3px solid var(--charcoal-muted)}.structura-doc-type-eyebrow{display:block;color:var(--primary);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.document-row-actions{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:4px}.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 var(--border);border-radius:9px;background:var(--color-surface-secondary);padding:2px}.document-paper-picker button{min-height:30px;border:0;border-radius:7px;background:transparent;color: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:var(--primary);color: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:var(--background)}.paper-tone-warm{background:var(--muted)}.paper-tone-slate{background:var(--background)}.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 12px 40px #1c202624;border:1px solid #e5e7eb}.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-one-page .contractor-paper.contractor-page.print-document-page{display:flex;flex-direction:column}}.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:var(--primary);color:#fff;font-size:22px;font-weight:900;box-shadow:0 8px 18px var(--color-hover)}.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:var(--primary);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.contractor-title-block h1{margin:6px 0 12px;color:var(--primary);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:2px;background:var(--primary)}.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:var(--charcoal-muted);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:var(--charcoal);color:var(--charcoal-foreground);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{margin-top:6px;padding:10px 12px;border-radius:6px;background:var(--charcoal);color:var(--charcoal-foreground);font-size:12px}.contractor-totals-card .is-strong strong{color:var(--primary);font-size:13px;font-weight:900;letter-spacing:.02em}.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:var(--primary);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 var(--border);background:var(--card);padding:0 12px}.search-box input{width:100%;border:0;background:transparent;outline:0;color:var(--foreground)}.form-input,.form-textarea{width:100%;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-input-bg);color:var(--color-text-primary);outline:0;transition:border-color .15s ease,box-shadow .15s ease}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--color-focus);box-shadow:0 0 0 1px var(--color-focus)}.form-select{min-height:42px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-input-bg);padding:0 12px;color:var(--color-text-primary)}.table-shell{overflow:auto;border-radius:var(--radius-card);border:1px solid var(--color-border);background:var(--color-surface-primary)}.table-shell table{min-width:720px;width:100%;border-collapse:collapse}.table-shell th{position:sticky;top:0;z-index:1;background:var(--color-surface-secondary);color:var(--color-text-muted);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;text-align:left}.table-shell tbody tr:nth-child(2n) td{background:var(--color-surface-row)}.table-shell tbody tr:hover td{background:var(--color-hover)}.table-shell th,.table-shell td{border-bottom:1px solid var(--color-border);padding:10px 14px;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;background:var(--charcoal);color:var(--charcoal-foreground)}.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:var(--color-surface-secondary)}@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: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 var(--border);border-right:1px solid var(--border);display:grid;place-items:center;background:var(--color-surface-secondary);color: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 var(--border);border-right:1px solid var(--border);background: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:var(--color-surface-secondary);color:var(--muted-foreground)}.calendar-cell-today{background:#eaf3ff}.dark .calendar-cell-today{background:var(--color-hover)}.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: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: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:var(--card)}.upcoming-event h3{font-size:14px;font-weight:800}.upcoming-event p{margin-top:3px;color: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:var(--muted);padding:4px 9px;color: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:rgb(5 5 6 / .72);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:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface-elevated);box-shadow:none}.modal-panel-wide{width:min(1120px,90vw)}.payroll-hr-shell{flex-shrink:0}.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: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 var(--border);background:var(--color-surface-secondary);padding:.625rem .75rem;font-size:.75rem;line-height:1.4}.dark .payroll-preview-box{background:var(--color-surface-secondary)}.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:var(--color-surface-secondary);border-bottom:1px solid var(--border);padding:.5rem .625rem;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);white-space:nowrap;vertical-align:bottom}.dark .payroll-bulk-att-table thead th{background:var(--color-surface-primary)}.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:var(--color-surface-secondary)}.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:var(--muted-foreground);white-space:nowrap}.payroll-bulk-att-preview strong{color: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:var(--muted-foreground);transition:background .15s,color .15s}.payroll-bulk-att-row-del:hover:not(:disabled){background:var(--color-surface-primary);color: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:var(--muted-foreground);cursor:pointer;border-radius:0 .375rem .375rem 0;transition:color .15s,background .15s}.time-picker-trigger:hover:not(:disabled){color:var(--foreground);background:var(--color-surface-secondary)}.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: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: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: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:var(--color-surface-secondary)}.time-picker-option.is-selected{background:var(--color-hover);color: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: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: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: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: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:var(--color-surface-primary);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 var(--border);background: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 var(--border);background:var(--color-surface-primary);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 var(--border);background: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 var(--border);background:var(--color-surface-primary);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: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 var(--border);background:var(--color-surface-secondary);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 var(--color-surface-primary);background: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 var(--border);padding:10px 12px;font-size:13px;line-height:1.45}.ops-alert-banner-error{border-color:var(--color-surface-primary);background:var(--color-surface-primary);color:var(--foreground)}.ops-alert-banner-permission{border-color:#f59e0b73;background:rgb(245 158 11 / .1);color: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 var(--border);background: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: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 var(--border);background:var(--card);color: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:var(--color-focus);box-shadow:0 0 0 1px var(--color-focus)}.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:var(--radius-lg);border:1px solid var(--border);background:var(--muted);padding:16px}.signatory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.signatory-block{display:grid;gap:12px;border-radius:var(--radius-card);border:1px solid var(--border);background:var(--card);padding:14px;box-shadow:none}.signatory-block-header h4{margin:0;color:var(--foreground);font-size:14px;font-weight:800}.signatory-block-header p{margin:4px 0 0;color:var(--muted-foreground);font-size:12px;line-height:1.45}.signatory-preview{display:grid;gap:4px;border-radius:12px;border:1px dashed var(--border);background:var(--color-surface-secondary);padding:12px;text-align:center}.signatory-preview span{color:var(--muted-foreground);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.signatory-preview strong{color:var(--foreground);font-size:13px}.signatory-preview small{color:var(--muted-foreground);font-size:11px;font-weight:600}.signatory-line{height:1px;margin:16px 10px 2px;background: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:var(--primary);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:var(--muted-foreground)}.payroll-payslip-subhead{margin:.35rem 0 .2rem;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted-foreground)}.payroll-payslip-kv td{padding:4px 8px;border-bottom:1px solid var(--color-surface-primary)}.payroll-payslip-formula{margin-top:2px;font-size:11px;font-weight:500;color:var(--muted-foreground)}.payroll-payslip-empty{margin:0;padding:8px 10px;font-size:12px;color:var(--muted-foreground);border:1px dashed var(--border);border-radius:8px;background:var(--color-surface-secondary)}.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 var(--border);background:var(--color-surface-secondary);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 var(--border);background:var(--card)}.payroll-payslip-net span{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color: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:var(--muted-foreground)}.payroll-payslip-foot{margin:.35rem 0 0;font-size:11px;color: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 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 var(--border);font-weight:600}.payroll-payslip-computation-note{margin:.25rem 0 0;font-size:.625rem;line-height:1.35;color: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: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:var(--border)}.file\:bg-muted::file-selector-button{background-color: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-\[\#191C20\]:hover{--tw-bg-opacity: 1;background-color:rgb(25 28 32 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#E8E8E8\]:hover{--tw-bg-opacity: 1;background-color:rgb(232 232 232 / var(--tw-bg-opacity, 1))}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-sidebar-active:hover{background-color:var(--sidebar-active)}.hover\:text-destructive:hover{color:var(--destructive)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-slate-200:hover{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1: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(1px + 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-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-red-500\/35:focus-visible{--tw-ring-color: rgb(239 68 68 / .35)}.focus-visible\:ring-red-500\/40:focus-visible{--tw-ring-color: rgb(239 68 68 / .4)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: var(--ring)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.dark\:border-red-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.dark\:border-red-500\/30:is(.dark *){border-color:#ef44444d}.dark\:bg-card:is(.dark *){background-color:var(--card)}.dark\:bg-red-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.dark\:bg-red-950\/40:is(.dark *){background-color:#450a0a66}.dark\:bg-red-950\/45:is(.dark *){background-color:#450a0a73}.dark\:bg-red-950\/50:is(.dark *){background-color:#450a0a80}.dark\:bg-transparent:is(.dark *){background-color:transparent}.dark\:bg-zinc-900\/35:is(.dark *){background-color:#18181b59}.dark\:text-red-100:is(.dark *){--tw-text-opacity: 1;color:rgb(254 226 226 / 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\:hover\:bg-red-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}@media not all and (min-width: 640px){.max-sm\:w-full{width:100%}}@media (min-width: 640px){.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:block{display:block}.sm\:min-h-\[calc\(100\%-3rem\)\]{min-height:calc(100% - 3rem)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-\[140px_1fr\]{grid-template-columns:140px 1fr}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:p-6{padding:1.5rem}.sm\:p-8{padding:2rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width: 768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:block{display:block}.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-4{grid-template-columns:repeat(4,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}.lg\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}}@media (min-width: 1280px){.xl\:col-span-3{grid-column:span 3 / span 3}.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))}}@media (min-width: 1536px){.\32xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}@media print{.print\:hidden{display:none}}@media (min-width: 768px){.md\:\[\&\>\*\]\:col-span-1>*{grid-column:span 1 / span 1}}.contractor-document-stack{color-scheme:light;--doc-premium-black: #0a0a0a;--doc-warm-gray: #f5f2ee;--doc-white: #ffffff;--doc-text: #1f2937;--doc-label: #667085;--doc-heading: #374151;--doc-accent: #e8720c;--doc-muted-label: #6b7280;--doc-header-subtext: #d1d5db}.contractor-document-stack .contractor-paper,.contractor-document-stack .contractor-paper-body,.contractor-document-stack .contractor-paper-body-main{background:var(--doc-white);color:var(--doc-text)}.structura-print-header__band{display:flex;align-items:flex-start;justify-content:space-between;gap:32px;margin:-58px -64px 0;padding:26px 64px 22px;background:var(--doc-premium-black);color:#fff;print-color-adjust:exact;-webkit-print-color-adjust:exact}.contractor-document-stack.is-compact .structura-print-header__band{margin:-34px -46px 0;padding:18px 46px 16px}.contractor-document-stack.is-one-page.is-compact .structura-print-header__band{margin:-24px -38px 0;padding:14px 38px 12px}.structura-print-header__brand{display:flex;align-items:center;gap:16px;min-width:0}.contractor-logo-print{display:block;flex-shrink:0;width:58px;height:58px;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;background:transparent!important;border:none!important;box-shadow:none!important;border-radius:0!important;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.contractor-logo-print--initials{display:grid;place-items:center;width:58px;height:58px;border:2px solid #ffffff;border-radius:0;background:transparent;color:#fff;font-size:20px;font-weight:900;letter-spacing:.04em}.contractor-document-stack.is-one-page.is-compact .contractor-logo-print,.contractor-document-stack.is-one-page.is-compact .contractor-logo-print--initials{width:44px;height:44px;font-size:15px}.structura-print-header__brand .contractor-logo,.structura-print-header__brand .contractor-logo.contractor-logo-image{background:transparent!important;box-shadow:none!important;border-radius:0!important;padding:0!important}.structura-print-header__brand-text h2{margin:0;color:#fff;font-size:18px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;line-height:1.15}.contractor-document-stack.is-one-page.is-compact .structura-print-header__brand-text h2{font-size:14px}.structura-print-header__service-line{margin:5px 0 0;color:var(--doc-header-subtext);font-size:9.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;line-height:1.4}.contractor-document-stack.is-one-page.is-compact .structura-print-header__service-line{font-size:7.5px;margin-top:3px}.structura-print-header__doc-meta{text-align:right;flex-shrink:0;padding-top:2px}.structura-print-header__doctype{display:block;color:var(--doc-header-subtext);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.structura-print-header__docno{display:block;margin-top:6px;color:var(--doc-accent);font-size:28px;font-weight:900;letter-spacing:-.02em;line-height:1}.contractor-document-stack.is-one-page.is-compact .structura-print-header__docno{font-size:20px;margin-top:4px}.structura-print-header__rule{height:3px;margin:0 -64px 22px;background:var(--doc-accent);print-color-adjust:exact;-webkit-print-color-adjust:exact}.contractor-document-stack.is-compact .structura-print-header__rule{margin:0 -46px 16px}.contractor-document-stack.is-one-page.is-compact .structura-print-header__rule{margin:0 -38px 14px}.contractor-document-stack .structura-print-header__rule{margin-bottom:24px}.contractor-document-stack .contractor-parties{margin-bottom:16px}.contractor-document-stack.is-one-page.is-compact .contractor-parties{margin-bottom:12px}.contractor-document-stack .doc-section--light-intro,.contractor-document-stack .structura-print-intro{margin-bottom:16px}.contractor-document-stack.is-one-page.is-compact .doc-section--light-intro,.contractor-document-stack.is-one-page.is-compact .structura-print-intro{margin-bottom:12px}.contractor-document-stack .doc-account-activity-ledger,.contractor-document-stack .contractor-table-section{margin-top:14px;margin-bottom:14px}.contractor-document-stack.is-one-page.is-compact .doc-account-activity-ledger,.contractor-document-stack.is-one-page.is-compact .contractor-table-section{margin-top:10px;margin-bottom:10px}.contractor-document-stack .contractor-summary-zone{margin-top:16px;margin-bottom:16px}.contractor-document-stack.is-one-page.is-compact .contractor-summary-zone{margin-top:12px;margin-bottom:12px}.contractor-document-stack.is-one-page .contractor-paper.print-document-page{display:flex;flex-direction:column;min-height:1123px}.contractor-document-stack.is-one-page .contractor-paper-body{flex:1 1 auto;width:100%;min-height:0;box-sizing:border-box}.contractor-document-stack.is-one-page .contractor-paper-body-main{flex:0 1 auto;min-height:0}.contractor-document-stack.is-one-page .document-bottom-section{margin-top:auto!important;flex-shrink:0;width:100%;padding-top:0;gap:8px}.contractor-document-stack.is-one-page .document-bottom-section .contractor-signatures,.contractor-document-stack.is-one-page .document-bottom-section .document-signatories-row{margin-top:0!important;padding-top:24px}.contractor-document-stack.is-one-page.is-compact .document-bottom-section .contractor-signatures,.contractor-document-stack.is-one-page.is-compact .document-bottom-section .document-signatories-row{padding-top:20px}.contractor-document-stack .contractor-terms-grid{margin-top:14px}.contractor-document-stack.is-one-page.is-compact .contractor-terms-grid{margin-top:10px}.doc-section__body{margin:0;white-space:pre-line;color:var(--doc-text);font-size:10px;line-height:1.55;opacity:1}.contractor-document-stack.is-one-page.is-compact .doc-section__body{font-size:7.8px;line-height:1.35}.doc-section--light-intro,.structura-print-intro{margin-bottom:16px;border:none;border-left:4px solid var(--doc-accent);border-radius:0;background:var(--doc-warm-gray);padding:12px 14px;color:var(--doc-text)}.contractor-document-stack.is-one-page.is-compact .doc-section--light-intro,.contractor-document-stack.is-one-page.is-compact .structura-print-intro{margin-bottom:8px;padding:8px 10px}.structura-print-parties--statement .contractor-parties>div,.doc-section--parties-light,.doc-section--statement-details{border:none!important;border-radius:0!important;background:var(--doc-white)!important;color:var(--doc-text)!important;padding:0!important}.structura-print-parties--statement .contractor-parties>div:last-child .contractor-label,.doc-section--statement-details .contractor-label{color:var(--doc-muted-label)}.structura-print-parties--statement .contractor-parties>div:last-child p,.doc-section--statement-details p{color:var(--doc-label);font-size:10.5px}.structura-print-parties--statement .contractor-parties>div:last-child p strong,.doc-section--statement-details p strong{color:var(--doc-label);font-weight:700}.structura-print-parties--statement .contractor-parties>div:last-child p .is-accent,.doc-section--statement-details p .is-accent{color:var(--doc-accent);font-weight:800}.contractor-doc-table tbody tr:nth-child(2n) td{background:rgb(245 242 238 / .55)}.doc-section--light-payment,.contractor-document-stack .contractor-payment-details.doc-section--light-payment,.contractor-document-stack .doc-section--light-payment.contractor-payment-details{margin-top:18px;border:none!important;border-left:4px solid var(--doc-accent)!important;border-radius:0!important;background:var(--doc-warm-gray)!important;padding:14px 16px;color:var(--doc-text)!important}.doc-section--light-payment h3,.contractor-payment-details.doc-section--light-payment h3{margin:0 0 10px;color:var(--doc-heading)!important;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.contractor-payment-grid strong{color:var(--doc-text)!important}.contractor-payment-grid p{color:var(--doc-label)!important}.contractor-payment-grid--no-qr{grid-template-columns:minmax(0,1fr)!important}.doc-section--qr-light.contractor-qr-box{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:108px;min-height:108px;border:1px solid #e5e7eb;border-radius:0;background:var(--doc-white)!important;padding:8px}.doc-section--qr-light.contractor-qr-box img{display:block;width:88px;height:88px;-o-object-fit:contain;object-fit:contain}.doc-section--white-notes{border:none!important;border-radius:0!important;background:var(--doc-white)!important;padding:13px 14px;color:var(--doc-text)!important}.doc-section--white-notes h3{margin:0 0 6px;color:var(--doc-muted-label)!important;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.doc-section--light-terms,.contractor-document-stack .contractor-text-card.doc-section--light-terms{border:none!important;border-left:4px solid var(--doc-accent);border-radius:0!important;background:var(--doc-warm-gray)!important;padding:13px 14px;color:var(--doc-text)!important}.doc-section--light-terms h3,.contractor-text-card.doc-section--light-terms h3{margin:0 0 6px;color:var(--doc-heading)!important;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.contractor-document-stack .contractor-totals-card{border:1px solid #e3e9f2!important;border-radius:6px!important;background:var(--doc-white)!important;color:var(--doc-text)!important}.contractor-document-stack .contractor-summary-note{border:1px solid #e3e9f2!important;border-radius:6px!important;background:var(--doc-warm-gray)!important;color:var(--doc-text)!important}.contractor-document-stack .contractor-progress-grid>div{border:1px solid #e3e9f2!important;background:var(--doc-warm-gray)!important;color:var(--doc-text)!important}.doc-financial-summary-strip{margin:10px 0 12px;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;background:var(--doc-white)}.doc-financial-summary-strip__row{display:flex;flex-wrap:nowrap;align-items:stretch}.doc-financial-summary-strip__row+.doc-financial-summary-strip__row{border-top:1px solid #e5e7eb}.doc-financial-summary-strip__item{flex:1 1 0;min-width:0;padding:7px 10px;border-right:1px solid #e5e7eb}.doc-financial-summary-strip__item:last-child{border-right:none}.doc-financial-summary-strip__label{display:block;color:var(--doc-muted-label);font-size:7px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;line-height:1.25}.doc-financial-summary-strip__value{display:block;margin-top:3px;color:var(--doc-text);font-size:9.5px;font-weight:800;line-height:1.2;letter-spacing:-.01em}.doc-financial-summary-strip__item.is-accent .doc-financial-summary-strip__value{color:var(--doc-accent)}.contractor-document-stack.is-one-page.is-compact .doc-financial-summary-strip{margin:6px 0 8px}.contractor-document-stack.is-one-page.is-compact .doc-financial-summary-strip__item{padding:5px 7px}.contractor-document-stack.is-one-page.is-compact .doc-financial-summary-strip__label{font-size:6px}.contractor-document-stack.is-one-page.is-compact .doc-financial-summary-strip__value{font-size:8px;margin-top:2px}.contractor-document-stack .contractor-closing-flow{margin-top:16px;gap:14px}.contractor-document-stack.is-one-page.is-compact .contractor-closing-flow{margin-top:12px;gap:12px}.contractor-payment-notes-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch;width:100%}.contractor-payment-notes-row--payment-only{grid-template-columns:repeat(2,minmax(0,1fr))}.contractor-payment-notes-row--payment-only .contractor-payment-notes-row__payment,.contractor-payment-notes-row--payment-only>section{grid-column:1;min-width:0;max-width:100%}.contractor-payment-notes-row__payment,.contractor-payment-notes-row__notes{min-width:0;max-width:100%;width:100%;box-sizing:border-box;display:flex;flex-direction:column}.contractor-payment-notes-row__payment>section,.contractor-payment-notes-row__notes>div{flex:1 1 auto;width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow-wrap:anywhere}.contractor-payment-details--compact{margin-top:0!important;padding:10px 12px!important}.contractor-payment-details--compact .contractor-payment-grid{max-width:100%}.contractor-payment-details--compact .contractor-payment-accounts{min-width:0}.contractor-payment-details--compact h3{margin-bottom:6px!important;font-size:8.5px!important;letter-spacing:.1em!important}.doc-payment-detail-line{display:grid;grid-template-columns:minmax(72px,38%) minmax(0,1fr);gap:6px;align-items:baseline;margin:3px 0 0}.doc-payment-detail-line__label{color:var(--doc-label);font-size:7.5px;font-weight:600;line-height:1.35}.doc-payment-detail-line__value{color:var(--doc-text);font-size:8px;font-weight:700;line-height:1.35}.contractor-payment-details--compact .doc-section__body{margin-top:6px;font-size:7.5px;line-height:1.45}.contractor-payment-details--compact .contractor-qr-box{min-width:88px;min-height:88px}.contractor-payment-details--compact .contractor-qr-box img{width:72px;height:72px}.doc-section--white-notes-compact{margin-top:0!important;padding:10px 12px!important}.doc-section--white-notes-compact h3{margin-bottom:5px!important;font-size:8.5px!important;letter-spacing:.1em!important}.doc-section--white-notes-compact .doc-section__body{font-size:7.8px;line-height:1.45}.doc-section__notes-list{margin:0;padding:0;list-style:none}.doc-section__notes-item{position:relative;margin:0 0 5px;padding-left:.95em;color:var(--doc-text);font-size:10px;line-height:1.45}.doc-section__notes-item:last-child{margin-bottom:0}.doc-section__notes-item:before{content:"•";position:absolute;left:0;top:0;color:var(--doc-text);font-weight:700}.doc-section--white-notes-compact .doc-section__notes-item{font-size:7.8px;line-height:1.45;margin-bottom:4px}.contractor-document-stack.is-one-page.is-compact .doc-payment-detail-line__label{font-size:6.8px}.contractor-document-stack.is-one-page.is-compact .doc-payment-detail-line__value{font-size:7.2px}@media (max-width: 720px){.contractor-payment-notes-row{grid-template-columns:1fr}.contractor-payment-notes-row--payment-only{max-width:none}.doc-financial-summary-strip__row{flex-wrap:wrap}.doc-financial-summary-strip__item{flex:1 1 calc(50% - 1px);border-bottom:1px solid #e5e7eb}}@media print{.contractor-payment-notes-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}.doc-financial-summary-strip__row{flex-wrap:nowrap!important}}.contractor-closing-flow--split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch}.contractor-closing-flow--split .contractor-terms-grid{grid-column:1 / -1}.contractor-document-stack .contractor-doc-footer{display:flex!important;align-items:center;justify-content:space-between;gap:24px;margin:0 -64px -36px!important;padding:16px 64px!important;border-top:none!important;background:var(--doc-premium-black)!important;color:var(--doc-header-subtext)!important;text-align:left!important;font-size:9px;line-height:1.5;print-color-adjust:exact;-webkit-print-color-adjust:exact}.contractor-document-stack.is-compact .contractor-doc-footer{margin:0 -46px -20px!important;padding:14px 46px!important}.contractor-document-stack.is-one-page.is-compact .contractor-doc-footer{margin:0 -38px -14px!important;padding:12px 38px!important;font-size:8px}.contractor-document-stack .contractor-doc-footer__tagline{flex:0 1 auto;color:#fff;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;line-height:1.3}.contractor-document-stack.is-one-page.is-compact .contractor-doc-footer__tagline{font-size:8.5px}.contractor-document-stack .contractor-doc-footer__tagline em,.contractor-document-stack .contractor-doc-footer__accent{color:var(--doc-accent);font-style:normal}.contractor-document-stack .contractor-doc-footer__contact{flex:0 1 auto;max-width:52%;text-align:right;color:var(--doc-header-subtext)}.contractor-document-stack .contractor-doc-footer__contact-line{margin:0;color:var(--doc-header-subtext);font-size:9px;line-height:1.5}.contractor-document-stack .contractor-doc-footer__contact-line+.contractor-doc-footer__contact-line{margin-top:3px}.contractor-document-stack.is-one-page.is-compact .contractor-doc-footer__contact-line{font-size:7.5px;line-height:1.45}.contractor-document-stack .contractor-doc-footer__tin{opacity:.85;font-size:8px}.contractor-document-stack .contractor-doc-footer strong{color:inherit;font-size:inherit;font-weight:inherit;text-transform:none;letter-spacing:normal}.contractor-document-stack .contractor-totals-card .is-strong{background:var(--doc-premium-black)!important;color:#fff!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.contractor-document-stack .contractor-totals-card .is-strong strong{color:var(--doc-accent)!important}.contractor-document-stack .contractor-doc-table thead th{background:var(--doc-premium-black)!important;color:#fff!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.contractor-document-stack .contractor-qr-box.is-disabled{display:none!important}.doc-account-activity-ledger{margin-top:14px;margin-bottom:14px}.doc-account-activity-ledger__title{margin:0 0 10px;color:var(--doc-muted-label);font-size:8.5px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.doc-account-activity-ledger__table{font-size:8.5px}.doc-account-activity-ledger__table th,.doc-account-activity-ledger__table td{padding:5px 7px;vertical-align:top}.doc-account-activity-ledger__table .text-right{text-align:right}.doc-ledger-money{font-variant-numeric:tabular-nums;white-space:nowrap}.doc-ledger-money--balance{font-weight:700;color:var(--doc-text)}.doc-ledger-type{display:inline-block;font-size:7.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.doc-ledger-type--billing{color:var(--doc-text)}.doc-ledger-type--payment{color:#047857}.doc-ledger-row--payment td{background:rgb(240 253 244 / .45)}.contractor-document-stack.is-one-page.is-compact .doc-account-activity-ledger__table{font-size:7.2px}.contractor-document-stack.is-one-page.is-compact .doc-account-activity-ledger__table th,.contractor-document-stack.is-one-page.is-compact .doc-account-activity-ledger__table td{padding:3px 5px}.doc-financial-summary-strip--optional{margin-top:8px;margin-bottom:10px}
