@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";*,:before,:after{box-sizing:border-box;margin:0}body{color:#0f172a;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f8fafc;min-width:320px;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}a{color:inherit}button,input,textarea,select{font:inherit}@keyframes dash-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes fieldErrorIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.9)}}@keyframes dash-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}@media (width<=1100px){.dash-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.dash-metric-grid{grid-template-columns:1fr}}@keyframes swal2-scale-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes opShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes opSpin{to{transform:rotate(360deg)}}@keyframes opSpinPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}@keyframes opBarSlide{0%{left:-45%}to{left:105%}}@keyframes opDot{0%,to{opacity:.3;transform:scale(1)}40%{opacity:1;transform:scale(1.45)}}@media (prefers-reduced-motion:reduce){.swal-op-popup:before,.swal-op-icon,.swal-op-icon:before,.swal-op-icon:after,.swal-op-loader__bar:before,.swal-op-loader__dots span,.swal-op-icon.swal2-icon-show{animation:none!important}}@keyframes opResultPopIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.swal-op-result-icon{animation:none!important}}@keyframes toastSlideIn{0%{opacity:0;transform:translate(28px)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}@media (prefers-reduced-motion:reduce){.swal-toast-popup.swal2-toast{animation:none!important}}#app{min-height:100vh}:root{--c-primary:#4f46e5;--c-primary-soft:#4f46e514;--c-primary-medium:#4f46e526;--c-primary-strong:#4338ca;--c-primary-text:#3730a3;--c-accent:#7c3aed;--c-accent-soft:#7c3aed14;--c-accent-medium:#7c3aed26;--c-accent-strong:#6d28d9;--c-success:#16a34a;--c-success-soft:#16a34a14;--c-warning:#d97706;--c-warning-soft:#d9770614;--c-danger:#dc2626;--c-danger-soft:#dc262614;--c-surface:#fff;--c-surface-muted:#f8fafc;--c-surface-raised:#fff;--c-border:#e2e8f0;--c-border-subtle:#f1f5f9;--c-text:#0f172a;--c-text-secondary:#64748b;--c-text-muted:#94a3b8;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 4px 12px #0000000d;--shadow-card:0 1px 3px #0000000a, 0 1px 2px #00000005;--shadow-hover:0 4px 16px #4f46e514, 0 2px 4px #0000000a;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fs-xs:12px;--fs-sm:13px;--fs-base:14px;--fs-lg:16px;--fs-xl:20px;--fs-2xl:28px;--fs-display:32px;--sp-xs:4px;--sp-sm:8px;--sp-md:12px;--sp-lg:16px;--sp-xl:24px;--sp-2xl:32px;--modal-sm:640px;--modal-md:760px;--modal-lg:900px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}.dash-page{gap:var(--sp-lg);font-family:var(--font-sans);color:var(--c-text);animation:dash-fade-in .35s var(--ease-out) both;display:grid}.dash-header{gap:.3rem;display:grid}.dash-eyebrow{letter-spacing:.06em;font-size:var(--fs-xs);color:var(--c-primary);text-transform:uppercase;font-weight:700}.dash-header h1{font-family:var(--font-display);font-size:var(--fs-2xl);color:var(--c-text);letter-spacing:-.025em;font-weight:600;line-height:1.2}.dash-header p{color:var(--c-text-secondary);font-size:var(--fs-base)}.dash-panel{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:var(--sp-xl);transition:box-shadow .2s}.dash-panel:hover{box-shadow:var(--shadow-hover)}.dash-panel h2{font-family:var(--font-display);font-size:var(--fs-xl);color:var(--c-text);letter-spacing:-.02em;font-weight:600;line-height:1.3}.dash-panel h3{font-size:var(--fs-base);color:var(--c-text);font-weight:600}.dash-summary-grid{gap:var(--sp-md);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.dash-summary-card{background:var(--c-surface-muted);border:1px solid var(--c-border-subtle);border-radius:var(--r-md);padding:var(--sp-lg);gap:var(--sp-xs);transition:border-color .2s,box-shadow .2s;display:grid}.dash-summary-card:hover{border-color:var(--c-primary);box-shadow:0 0 0 3px var(--c-primary-soft)}.dash-summary-card .label{color:var(--c-text-muted);font-size:var(--fs-sm);font-weight:500}.dash-summary-card .value{font-family:var(--font-display);font-size:var(--fs-xl);color:var(--c-text);letter-spacing:-.02em;font-weight:600}.dash-summary-card .detail{color:var(--c-primary);font-size:var(--fs-sm);font-weight:600}.dash-metric-grid{gap:var(--sp-lg);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.dash-metric-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:var(--sp-xl);transition:transform .2s var(--ease-out), box-shadow .2s ease;position:relative;overflow:hidden}.dash-metric-card:before{content:"";background:var(--c-primary);opacity:0;border-radius:0 2px 2px 0;width:3px;height:100%;transition:opacity .2s;position:absolute;top:0;left:0}.dash-metric-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.dash-metric-card:hover:before{opacity:1}.dash-metric-card .label{color:var(--c-text-muted);font-size:var(--fs-sm);font-weight:500}.dash-metric-card .value{margin-top:var(--sp-xs);font-family:var(--font-display);font-size:var(--fs-display);color:var(--c-text);letter-spacing:-.03em;font-weight:600;line-height:1.1}.dash-metric-card .detail{margin-top:var(--sp-xs);color:var(--c-primary);font-size:var(--fs-sm);font-weight:600}.dash-form-grid{margin-top:var(--sp-md);gap:var(--sp-md);grid-template-columns:1fr 1fr;display:grid}.form-field--short{max-width:160px}.form-field--short-2{max-width:260px}.form-num-group{gap:var(--sp-sm);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;display:grid}.form-num-group--compact{gap:var(--sp-lg);grid-template-columns:1fr 1fr;align-items:start;display:grid}.form-field-group{gap:var(--sp-sm);grid-template-columns:1fr 1fr 1fr;align-items:end;display:grid}.form-field-group--twocol{gap:var(--sp-sm);grid-template-columns:1fr 1fr;align-items:end;display:grid}.form-section-card{background:var(--c-surface-muted);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-md);gap:var(--sp-sm);flex-direction:column;display:flex}.form-section-card__label{color:var(--c-primary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--c-border);margin-bottom:.1rem;padding-bottom:.4rem;font-size:.72rem;font-weight:700}.form-section-card__hint{color:var(--c-text-muted,#64748b);margin:-.1rem 0 .1rem;font-size:.72rem;line-height:1.35}.form-section-card__fields{gap:var(--sp-sm);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;display:grid}.form-section-card__fields--3{grid-template-columns:repeat(3,minmax(140px,1fr))}.form-section-card__fields--2{grid-template-columns:repeat(2,minmax(140px,1fr))}.form-tonase-card{background:linear-gradient(135deg, var(--c-primary-soft) 0%, var(--c-surface-muted) 100%);border-radius:var(--r-md);padding:var(--sp-md) var(--sp-lg);border:1px solid #4f46e526;flex-direction:column;gap:.25rem;display:flex}.form-tonase-card__label{color:var(--c-primary-text);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.form-field-group-label{color:var(--c-primary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--c-border-subtle);grid-column:1/-1;margin-bottom:.15rem;padding-bottom:.25rem;font-size:.72rem;font-weight:700}.form-num-group--row{gap:var(--sp-sm);align-items:end;display:flex}.form-num-group--row .form-field{max-width:180px}.form-alloc-row{gap:var(--sp-sm);padding:var(--sp-sm) 0;border-bottom:1px solid var(--c-border-subtle);grid-template-columns:2fr 1fr auto;align-items:end;display:grid}.form-inline-hint{color:var(--c-text-muted);margin-bottom:.25rem;font-size:.72rem;font-weight:600;display:block}.form-field--short input,.form-field--short-2 input,.form-field--full input{font-variant-numeric:tabular-nums;text-align:right}.dash-form-grid label{gap:var(--sp-xs);display:grid}.dash-form-grid label span{font-size:var(--fs-sm);color:var(--c-text-secondary);font-weight:600}.field-error{color:#b91c1c;background:linear-gradient(135deg,#fef2f2 0%,#fff5f5 100%);border:1px solid #fecaca;border-left:3px solid #ef4444;border-radius:8px;align-items:center;gap:6px;margin-top:6px;padding:8px 12px;font-size:13px;font-weight:500;line-height:1.4;animation:.25s fieldErrorIn;display:flex}.field-error:before{content:"";background:#ef4444;flex-shrink:0;width:16px;height:16px;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='8' x2='12' y2='12'/%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='8' x2='12' y2='12'/%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'/%3E%3C/svg%3E");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}input.field-error--input,select.field-error--input,textarea.field-error--input{border-color:#ef4444!important;box-shadow:0 0 0 3px #ef44441f!important}.dash-input,.dash-form-grid input,.dash-form-grid select,.dash-form-grid textarea,.mod-form input,.mod-form select,.mod-form textarea,.ct-form input,.ct-form select,.ct-form textarea,.assign-form input,.assign-form select,.assign-form textarea,.onboard-form input,.onboard-form select,.onboard-form textarea,.app-modal__body input,.app-modal__body select,.app-modal__body textarea{border:1px solid var(--c-border);min-height:44px;font-family:inherit;font-size:var(--fs-base);color:var(--c-text);background:var(--c-surface);border-radius:10px;outline:none;padding:.7rem .85rem;transition:border-color .15s,box-shadow .15s,background .15s}.dash-input:hover,.dash-form-grid input:hover,.dash-form-grid select:hover,.dash-form-grid textarea:hover,.mod-form input:hover,.mod-form select:hover,.mod-form textarea:hover,.ct-form input:hover,.ct-form select:hover,.ct-form textarea:hover,.assign-form input:hover,.assign-form select:hover,.assign-form textarea:hover,.onboard-form input:hover,.onboard-form select:hover,.onboard-form textarea:hover,.app-modal__body input:hover,.app-modal__body select:hover,.app-modal__body textarea:hover{border-color:#cbd5e1}select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2394A3B8'%3E%3Cpath d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z'/%3E%3C/svg%3E");background-position:right .6rem center;background-repeat:no-repeat;background-size:18px 18px;padding-right:2rem}.dash-form-grid input:focus,.dash-form-grid select:focus,.dash-form-grid textarea:focus,.dash-input:focus,.mod-form input:focus,.mod-form select:focus,.mod-form textarea:focus,.ct-form input:focus,.ct-form select:focus,.ct-form textarea:focus,.assign-form input:focus,.assign-form select:focus,.assign-form textarea:focus,.onboard-form input:focus,.onboard-form select:focus,.onboard-form textarea:focus,.app-modal__body input:focus,.app-modal__body select:focus,.app-modal__body textarea:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px var(--c-primary-soft);background:var(--c-surface)}.dash-form-grid input::placeholder,.dash-form-grid textarea::placeholder,.dash-input::placeholder,.mod-form input::placeholder,.mod-form textarea::placeholder,.ct-form input::placeholder,.ct-form textarea::placeholder,.assign-form input::placeholder,.assign-form textarea::placeholder,.onboard-form input::placeholder,.onboard-form textarea::placeholder,.app-modal__body input::placeholder,.app-modal__body textarea::placeholder{color:#94a3b8;font-weight:400}.dash-form-grid input:disabled,.dash-form-grid select:disabled,.dash-form-grid textarea:disabled,.dash-input:disabled,.mod-form input:disabled,.mod-form select:disabled,.mod-form textarea:disabled,.ct-form input:disabled,.ct-form select:disabled,.ct-form textarea:disabled,.assign-form input:disabled,.assign-form select:disabled,.assign-form textarea:disabled,.onboard-form input:disabled,.onboard-form select:disabled,.onboard-form textarea:disabled,.app-modal__body input:disabled,.app-modal__body select:disabled,.app-modal__body textarea:disabled{color:#94a3b8;cursor:not-allowed;border-color:var(--c-border);background:#f1f5f9}.dash-form-grid input[readonly],.dash-input[readonly],.mod-form input[readonly],.ct-form input[readonly],.assign-form input[readonly],.onboard-form input[readonly]{cursor:default;background:#f8fafc}.dash-form-grid textarea,.mod-form textarea,.ct-form textarea,.assign-form textarea,.onboard-form textarea{resize:vertical;min-height:88px;padding:.75rem .85rem;line-height:1.5}.dash-form-grid input[type=password],.dash-form-grid input[type=email],.dash-form-grid input[type=url],.mod-form input[type=password],.mod-form input[type=email],.mod-form input[type=url],.ct-form input[type=password],.ct-form input[type=email],.ct-form input[type=url],.onboard-form input[type=password],.onboard-form input[type=email],.onboard-form input[type=url]{letter-spacing:.01em}.dash-btn{justify-content:center;align-items:center;gap:var(--sp-xs);border-radius:var(--r-sm);font-family:inherit;font-size:var(--fs-base);cursor:pointer;border:0;padding:.65rem 1.1rem;font-weight:600;transition:background .15s,box-shadow .15s,opacity .15s,transform .1s;display:inline-flex}.dash-btn:active{transform:scale(.98)}.dash-btn:disabled{opacity:.5;cursor:not-allowed}.dash-btn--primary{background:var(--c-primary);color:#fff}.dash-btn--primary:not(:disabled):hover{background:var(--c-primary-strong);box-shadow:0 4px 12px #4f46e540}.dash-btn--secondary{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-secondary)}.dash-btn--secondary:not(:disabled):hover{background:var(--c-surface-muted);color:var(--c-text)}.dash-btn--accent{background:var(--c-accent);color:#fff}.dash-btn--accent:not(:disabled):hover{background:var(--c-accent-strong);box-shadow:0 4px 12px #7c3aed40}.dash-btn--danger{background:var(--c-danger);color:#fff}.dash-btn--ghost{border:1px solid var(--c-border);color:var(--c-text-secondary);font-size:var(--fs-sm);background:0 0;padding:.35rem .6rem}.dash-btn--ghost:not(:disabled):hover{background:var(--c-surface-muted)}.dash-btn--sm{font-size:var(--fs-xs);padding:.4rem .65rem}.dash-btn:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}.dash-form-grid button{border-radius:var(--r-sm);cursor:pointer;border:0;padding:.65rem 1rem;font-weight:600}.dash-table-wrap{margin-top:var(--sp-md);width:100%;overflow-x:auto}.dash-table{border-collapse:collapse;width:100%;font-size:var(--fs-base)}.dash-table th,.dash-table td{text-align:left;border-bottom:1px solid var(--c-border-subtle);vertical-align:top;padding:.7rem .6rem}.dash-table thead th{font-size:var(--fs-sm);color:var(--c-text-muted);background:var(--c-surface-muted);border-bottom:1px solid var(--c-border);font-weight:600}.dash-table thead th:first-child{border-radius:var(--r-sm) 0 0 0}.dash-table thead th:last-child{border-radius:0 var(--r-sm) 0 0}.dash-table tbody tr{transition:background .1s}.dash-table tbody tr:hover{background:var(--c-primary-soft)}.dash-table td{color:var(--c-text-secondary)}.dash-pill{font-size:var(--fs-xs);letter-spacing:.04em;border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .7rem;font-weight:700;line-height:1;transition:all .16s ease-out;display:inline-flex;position:relative;overflow:hidden}.dash-pill--default{color:#64748b;background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border:1px solid #e2e8f0}.dash-pill--default:before{content:"";background:#cbd5e1;border-radius:50%;width:5px;height:5px}.dash-pill--default:hover{border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 8px #94a3b826}.dash-pill--info{color:#3730a3;background:linear-gradient(135deg,#eef2ff 0%,#e0e7ff 100%);border:1px solid #4f46e540}.dash-pill--info:before{content:"";background:#4f46e5;border-radius:50%;width:5px;height:5px;animation:2s infinite pulse}.dash-pill--info:hover{border-color:#4f46e5;transform:translateY(-1px);box-shadow:0 4px 12px #4f46e533}.dash-pill--success{color:#15803d;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border:1px solid #16a34a40}.dash-pill--success:before{content:"";background:#22c55e;border-radius:50%;width:5px;height:5px}.dash-pill--success:hover{border-color:#22c55e;transform:translateY(-1px);box-shadow:0 4px 12px #22c55e33}.dash-pill--warning{color:#9a3412;background:linear-gradient(135deg,#fff7ed 0%,#ffedd5 100%);border:1px solid #d9770640}.dash-pill--warning:before{content:"";background:#f97316;border-radius:50%;width:5px;height:5px;animation:2s infinite pulse}.dash-pill--warning:hover{border-color:#f97316;transform:translateY(-1px);box-shadow:0 4px 12px #f9731633}.dash-pill--danger{color:#991b1b;background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%);border:1px solid #dc262640}.dash-pill--danger:before{content:"";background:#ef4444;border-radius:50%;width:5px;height:5px;animation:2s infinite pulse}.dash-pill--danger:hover{border-color:#ef4444;transform:translateY(-1px);box-shadow:0 4px 12px #ef444433}.dash-result-card{margin-top:var(--sp-lg);background:var(--c-primary-soft);border-radius:var(--r-md);padding:var(--sp-lg);border:1px solid #4f46e51f}.dash-result-card h3{font-size:var(--fs-sm);color:var(--c-primary-text);margin-bottom:var(--sp-xs);font-weight:600}.dash-result-card p{font-size:var(--fs-sm);color:var(--c-text-secondary)}.dash-success{margin-top:var(--sp-md);color:var(--c-success);font-weight:600;font-size:var(--fs-sm)}.dash-error{margin-top:var(--sp-md);color:var(--c-danger);font-weight:600;font-size:var(--fs-sm);background:var(--c-danger-soft);border-radius:var(--r-sm);padding:.6rem .75rem}.dash-skeleton-wrap{margin-top:var(--sp-md);gap:var(--sp-sm);display:grid}.dash-skeleton{border-radius:var(--r-sm);background:linear-gradient(90deg,#f1f5f9 0%,#e2e8f0 50%,#f1f5f9 100%) 0 0/200% 100%;height:14px;animation:1.4s infinite dash-pulse}.dash-section-head{justify-content:space-between;gap:var(--sp-md);flex-wrap:wrap;align-items:center;display:flex}.dash-section-head h2{margin:0}.dash-filter-row{margin-top:var(--sp-md);gap:var(--sp-sm);flex-wrap:wrap;align-items:center;display:flex}.dash-filter-row input,.dash-filter-row select{border:1px solid var(--c-border);border-radius:var(--r-sm);min-width:180px;font-family:inherit;font-size:var(--fs-base);color:var(--c-text);background-color:var(--c-surface);outline:none;flex:1;padding:.55rem 2rem .55rem .75rem;transition:border-color .15s,box-shadow .15s}.dash-filter-row input:focus,.dash-filter-row select:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px var(--c-primary-soft)}.dash-pager{margin-top:var(--sp-md);gap:var(--sp-md);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.dash-pager span{color:var(--c-text-muted);font-size:var(--fs-sm);font-weight:500}.dash-pagination{padding-top:var(--sp-lg);justify-content:center;align-items:center;gap:1rem;display:flex}.dash-pagination-info{font-size:var(--fs-sm);color:var(--c-text-muted)}.dash-action-row{gap:var(--sp-sm);flex-wrap:wrap;display:flex}.dash-grid-2{gap:var(--sp-lg);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.dash-line-item{background:var(--c-surface-muted);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-md);gap:var(--sp-md);display:grid}.dash-line-header{justify-content:space-between;align-items:center;display:flex}.dash-line-list{gap:var(--sp-md);display:grid}.dash-totals{text-align:right;border-top:1px solid var(--c-border);padding:.75rem 0}.dash-totals p{margin:.2rem 0}.dash-tabs{border-bottom:1px solid var(--c-border-subtle);gap:.25rem;margin-bottom:1rem;padding-bottom:.5rem;display:flex}.dash-tabs button{font-size:var(--fs-sm);color:var(--c-text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.45rem 1.1rem;font-family:inherit;font-weight:500;transition:all .12s;position:relative}.dash-tabs button:hover{color:var(--c-text-secondary);background:var(--c-surface-muted)}.dash-tabs button.active{color:var(--c-primary);background:var(--c-primary-soft);font-weight:600}@media (width<=1100px){.dash-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.dash-metric-grid{grid-template-columns:1fr}}.swal2-container{z-index:3000!important}.swal2-popup{border:1px solid var(--c-border-subtle)!important;border-radius:16px!important;padding:24px!important;box-shadow:0 20px 50px #0000001f,0 8px 16px #0000000f!important}.swal2-title{color:var(--c-text)!important;margin:0 0 8px!important;font-size:18px!important;font-weight:600!important}.swal2-html-container{color:var(--c-text-secondary)!important;margin:8px 0 16px!important;font-size:14px!important;line-height:1.6!important}.swal2-loader{border-color:var(--c-primary)!important;border-right-color:#0000!important;width:3em!important;height:3em!important}.swal2-show{animation:.3s cubic-bezier(.34,1.56,.64,1) swal2-scale-in!important}.swal2-icon{margin:16px auto 12px!important}.swal2-icon.swal2-success{border-color:var(--c-success)!important}.swal2-icon.swal2-success [class^=swal2-success-line]{background-color:var(--c-success)!important}.swal2-icon.swal2-error{border-color:var(--c-danger)!important}.swal2-icon.swal2-error [class^=swal2-error-line]{background-color:var(--c-danger)!important}.swal2-icon.swal2-warning{border-color:var(--c-warning)!important;color:var(--c-warning)!important}.swal2-icon.swal2-info{border-color:var(--c-primary)!important;color:var(--c-primary)!important}.swal2-actions{gap:8px!important;margin:20px 0 0!important}.swal2-confirm{background:var(--c-primary)!important;border:none!important;border-radius:10px!important;padding:10px 20px!important;font-size:14px!important;font-weight:500!important;transition:all .2s!important;box-shadow:0 2px 8px #4f46e533!important}.swal2-confirm:hover{background:var(--c-primary-strong)!important;transform:translateY(-1px)!important;box-shadow:0 4px 12px #4f46e54d!important}.swal2-cancel{background:var(--c-surface-muted)!important;border:1px solid var(--c-border)!important;color:var(--c-text-secondary)!important;border-radius:10px!important;padding:10px 20px!important;font-size:14px!important;font-weight:500!important;transition:all .2s!important}.swal2-cancel:hover{background:var(--c-border-subtle)!important;color:var(--c-text)!important}.swal2-input,.swal2-textarea,.swal2-select{border:1px solid var(--c-border)!important;border-radius:10px!important;padding:10px 14px!important;font-size:14px!important;transition:border-color .2s,box-shadow .2s!important}.swal2-input:focus,.swal2-textarea:focus,.swal2-select:focus{border-color:var(--c-primary)!important;box-shadow:0 0 0 3px var(--c-primary-soft)!important;outline:none!important}.swal2-confirm.swal2-styled{background:var(--c-danger)!important}.swal2-confirm.swal2-styled:hover{background:#b91c1c!important}.swal-op-backdrop{-webkit-backdrop-filter:blur(6px)!important;background:#0f172a73!important}.swal-op-popup{--op-from:#6366f1;--op-to:#4f46e5;--op-shadow:#4f46e566;--op-soft:#6366f11f;--op-track:#6366f124;background:linear-gradient(#fff 0%,#fbfbff 100%)!important;border:1px solid #0f172a0f!important;border-radius:22px!important;width:380px!important;max-width:calc(100vw - 32px)!important;padding:36px 32px 30px!important;position:relative!important;overflow:hidden!important;box-shadow:0 32px 64px -18px #0f172a38,0 14px 28px -10px #0f172a1a!important}.swal-op-popup:before{content:"";background:linear-gradient(90deg, transparent 0%, var(--op-from) 30%, var(--op-to) 60%, transparent 100%);background-size:200% 100%;height:4px;animation:2.2s linear infinite opShimmer;position:absolute;top:0;left:0;right:0}.swal-op-popup:after{content:"";background:radial-gradient(circle, var(--op-soft) 0%, transparent 70%);pointer-events:none;z-index:0;border-radius:50%;width:240px;height:240px;position:absolute;top:-120px;right:-120px}.swal-op-popup .swal2-html-container{z-index:1;position:relative;margin:0!important;padding:0!important;overflow:visible!important}.swal-op-popup .swal2-title{z-index:1;position:relative}.swal-op-loader{text-align:center;flex-direction:column;align-items:center;gap:0;padding-top:0;display:flex!important}.swal-op-icon{z-index:2;position:relative;background:0 0!important;border:none!important;width:80px!important;height:80px!important;margin:0 auto 16px!important}.swal-op-spinner{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.swal-op-spinner:before{content:"";border:4px solid var(--op-track,#6366f124);pointer-events:none;border-radius:50%;position:absolute;inset:0}.swal-op-spinner:after{content:"";border:4px solid #0000;border-top-color:var(--op-from,#6366f1);pointer-events:none;border-radius:50%;animation:.8s linear infinite opSpin;position:absolute;inset:0}.swal-op-spinner svg{width:28px;height:28px;color:var(--op-from,#6366f1);z-index:2;animation:1.6s ease-in-out infinite opSpinPulse}.swal-op-icon .swal2-icon-content{display:contents!important}.swal-op-icon.swal2-icon-show{animation:none!important}.swal-op-title{letter-spacing:-.012em;color:#0f172a!important;margin:0 0 10px!important;padding:0!important;font-size:19px!important;font-weight:700!important;line-height:1.35!important}.swal-op-loader__sub{max-width:300px;font-weight:500;transition:opacity .2s,transform .2s;color:#475569!important;margin:0 0 22px!important;padding:0!important;font-size:15px!important;line-height:1.55!important}.swal-op-loader__bar{background:var(--op-track);border-radius:99px;width:100%;max-width:240px;height:5px;position:relative;overflow:hidden}.swal-op-loader__bar:before{content:"";background:linear-gradient(90deg, var(--op-from), var(--op-to));width:40%;height:100%;box-shadow:0 0 12px var(--op-shadow);border-radius:99px;animation:1.4s cubic-bezier(.65,0,.35,1) infinite opBarSlide;position:absolute;top:0;left:-40%}.swal-op-loader__dots{gap:7px;margin-top:16px;display:inline-flex}.swal-op-loader__dots span{background:var(--op-from);opacity:.35;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite opDot}.swal-op-loader__dots span:nth-child(2){animation-delay:.18s}.swal-op-loader__dots span:nth-child(3){animation-delay:.36s}.swal-op-popup[data-variant=create]{--op-from:#6366f1;--op-to:#4338ca;--op-shadow:#4338ca6b;--op-soft:#6366f11f;--op-track:#6366f124}.swal-op-popup[data-variant=edit]{--op-from:#f59e0b;--op-to:#d97706;--op-shadow:#d977066b;--op-soft:#f59e0b24;--op-track:#f59e0b29}.swal-op-popup[data-variant=delete]{--op-from:#ef4444;--op-to:#b91c1c;--op-shadow:#b91c1c73;--op-soft:#ef44441f;--op-track:#ef444426}.swal-op-popup[data-variant=extend]{--op-from:#10b981;--op-to:#047857;--op-shadow:#0478576b;--op-soft:#10b98121;--op-track:#10b98129}.swal-op-popup[data-variant=default]{--op-from:#64748b;--op-to:#334155;--op-shadow:#33415566;--op-soft:#64748b1f;--op-track:#64748b29}@media (prefers-reduced-motion:reduce){.swal-op-popup:before,.swal-op-icon,.swal-op-icon:before,.swal-op-icon:after,.swal-op-loader__bar:before,.swal-op-loader__dots span,.swal-op-icon.swal2-icon-show{animation:none!important}}.swal-op-result-popup{width:420px!important;padding:36px 32px 32px!important}.swal-op-result-popup .swal2-html-container{z-index:1;position:relative;margin:0!important;padding:0!important;overflow:visible!important}.swal-op-result-popup .swal2-title{z-index:1;position:relative}.swal-op-result-icon-container{border:none!important;width:72px!important;height:72px!important;margin:0 auto 16px!important}.swal-op-result-icon{border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;animation:.45s cubic-bezier(.34,1.56,.64,1) both opResultPopIn;display:flex}.swal-op-result-icon svg{width:32px;height:32px}.swal-op-result-icon--success{color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 12px 28px -8px #16a34a73,0 0 0 8px #22c55e1f}.swal-op-result-icon--error{color:#fff;background:linear-gradient(135deg,#ef4444,#b91c1c);box-shadow:0 12px 28px -8px #b91c1c73,0 0 0 8px #ef44441f}.swal-op-result__text{text-align:center;max-width:320px;font-weight:400;color:#475569!important;margin:4px 0 10px!important;font-size:14.5px!important;line-height:1.55!important}.swal-op-result-confirm{background:var(--c-primary)!important;color:#fff!important;border:none!important;border-radius:10px!important;padding:10px 28px!important;font-size:14px!important;font-weight:600!important;transition:all .2s!important;box-shadow:0 2px 8px #4f46e540!important}.swal-op-result-confirm:hover{transform:translateY(-1px)!important;box-shadow:0 4px 14px #4f46e559!important}.swal-op-result-confirm--danger{background:var(--c-danger)!important;box-shadow:0 2px 8px #dc262640!important}.swal-op-result-confirm--danger:hover{box-shadow:0 4px 14px #dc262659!important}.swal-op-result-popup[data-variant=create]{--op-from:#6366f1;--op-to:#4338ca}.swal-op-result-popup[data-variant=edit]{--op-from:#f59e0b;--op-to:#d97706}.swal-op-result-popup[data-variant=delete]{--op-from:#ef4444;--op-to:#b91c1c}.swal-op-result-popup[data-variant=extend]{--op-from:#10b981;--op-to:#047857}.swal-op-result-popup[data-variant=default]{--op-from:#64748b;--op-to:#334155}@media (prefers-reduced-motion:reduce){.swal-op-result-icon{animation:none!important}}.swal-toast-popup.swal2-toast{--toast-accent:#16a34a;--toast-accent-soft:#16a34a1a;--toast-icon-bg:#16a34a1f;border:1px solid #0f172a12!important;border-left:4px solid var(--toast-accent)!important;-webkit-backdrop-filter:blur(12px)!important;background:#fff!important;border-radius:14px!important;gap:0!important;min-width:300px!important;max-width:380px!important;padding:14px 18px 14px 16px!important;box-shadow:0 20px 40px -10px #0f172a2e,0 6px 16px -4px #0f172a14,inset 0 0 0 1px #ffffffe6!important}.swal-toast-popup.swal2-toast:not(.swal2-hide){animation:.4s cubic-bezier(.34,1.56,.64,1) both toastSlideIn!important}.swal-toast-popup.swal2-toast .swal2-icon{flex-shrink:0;background:var(--toast-icon-bg)!important;border-width:2px!important;width:36px!important;min-width:36px!important;height:36px!important;margin:0 12px 0 0!important}.swal-toast-popup.swal2-toast .swal2-icon.swal2-success{border-color:var(--toast-accent)!important;color:var(--toast-accent)!important;background:#16a34a1a!important}.swal-toast-popup.swal2-toast .swal2-icon.swal2-success [class^=swal2-success-line]{background-color:var(--toast-accent)!important}.swal-toast-popup.swal2-toast .swal2-icon.swal2-success .swal2-success-ring{border-color:#16a34a40!important}.swal-toast-popup.swal2-toast .swal2-icon.swal2-error{--toast-accent:#dc2626;--toast-icon-bg:#dc26261a;color:#dc2626!important;background:#dc26261a!important;border-color:#dc2626!important}.swal-toast-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark]{color:#dc2626!important}.swal-toast-popup.swal2-toast .swal2-icon.swal2-info{--toast-accent:#4f46e5;--toast-icon-bg:#4f46e51a;color:#4f46e5!important;background:#4f46e51a!important;border-color:#4f46e5!important}.swal-toast-popup.swal2-toast .swal2-icon.swal2-warning{--toast-accent:#d97706;--toast-icon-bg:#d977061a;color:#d97706!important;background:#d977061a!important;border-color:#d97706!important}.swal-toast-popup.swal2-toast .swal2-title{color:#0f172a!important;letter-spacing:-.01em!important;text-align:left!important;margin:0 0 2px!important;padding:0!important;font-size:14px!important;font-weight:700!important;line-height:1.3!important}.swal-toast-popup.swal2-toast .swal2-html-container{color:#64748b!important;text-align:left!important;margin:0!important;padding:0!important;font-size:12.5px!important;font-weight:400!important;line-height:1.45!important}.swal-toast-popup.swal2-toast .swal2-timer-progress-bar{background:var(--toast-accent)!important;opacity:.55!important;border-radius:0 0 10px!important;height:2px!important}.swal-toast-popup.swal2-toast .swal2-timer-progress-bar-container{border-radius:0 0 14px 14px!important;overflow:hidden!important}.swal-toast-popup.swal2-toast:has(.swal2-error){border-left-color:#dc2626!important}.swal-toast-popup.swal2-toast:has(.swal2-info){border-left-color:#4f46e5!important}.swal-toast-popup.swal2-toast:has(.swal2-warning){border-left-color:#d97706!important}@media (prefers-reduced-motion:reduce){.swal-toast-popup.swal2-toast{animation:none!important}}.sso-backdrop[data-v-dbfca733]{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0f1ef5;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.sso-card[data-v-dbfca733]{text-align:center;background:#fff;border-radius:24px;width:min(92vw,440px);padding:2.5rem 2.25rem;animation:.4s cubic-bezier(.16,1,.3,1) card-in-dbfca733;box-shadow:0 0 0 1px #ffffff14,0 24px 64px #00000080}@keyframes card-in-dbfca733{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.sso-gears[data-v-dbfca733]{color:#f59e0b;width:120px;height:100px;margin:0 auto 1.5rem;position:relative}.gear[data-v-dbfca733]{position:absolute;overflow:visible}.gear--lg[data-v-dbfca733]{filter:drop-shadow(0 2px 8px #f59e0b59);width:76px;height:76px;animation:4s linear infinite spin-cw-dbfca733;top:0;left:0}.gear--sm[data-v-dbfca733]{color:#fbbf24;filter:drop-shadow(0 1px 4px #fbbf244d);width:48px;height:48px;animation:2.5s linear infinite spin-ccw-dbfca733;bottom:0;right:0}@keyframes spin-cw-dbfca733{to{transform:rotate(360deg)}}@keyframes spin-ccw-dbfca733{to{transform:rotate(-360deg)}}.sso-wifi-icon[data-v-dbfca733]{color:#64748b;justify-content:center;align-items:center;margin-bottom:1.5rem;display:inline-flex;position:relative}.sso-wifi-pulse[data-v-dbfca733]{background:radial-gradient(circle,#64748b26,#0000 70%);border-radius:50%;animation:2s ease-in-out infinite pulse-ring-dbfca733;position:absolute;inset:-12px}@keyframes pulse-ring-dbfca733{0%,to{opacity:.6;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.sso-badge[data-v-dbfca733]{letter-spacing:.04em;text-transform:uppercase;border-radius:20px;align-items:center;gap:6px;margin-bottom:1rem;padding:4px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.sso-badge--server[data-v-dbfca733]{color:#92400e;background:#fef3c7}.sso-badge--offline[data-v-dbfca733]{color:#475569;background:#f1f5f9}.sso-badge__dot[data-v-dbfca733]{background:currentColor;border-radius:50%;width:7px;height:7px;animation:1.4s ease-in-out infinite dot-blink-dbfca733}@keyframes dot-blink-dbfca733{0%,to{opacity:1}50%{opacity:.3}}.sso-title[data-v-dbfca733]{color:#0f172a;letter-spacing:-.01em;margin:0 0 .6rem;font-size:1.25rem;font-weight:700}.sso-body[data-v-dbfca733]{color:#475569;margin:0 0 1.5rem;font-size:.875rem;line-height:1.6}.sso-retry[data-v-dbfca733]{margin-bottom:.75rem}.sso-retry__bar-track[data-v-dbfca733]{background:#f1f5f9;border-radius:4px;height:4px;margin-bottom:8px;overflow:hidden}.sso-retry__bar-fill[data-v-dbfca733]{background:linear-gradient(90deg,#f59e0b,#fbbf24);border-radius:4px;height:100%;transition:width 1s linear}.sso-retry__label[data-v-dbfca733]{color:#94a3b8;font-size:.8rem}.sso-retry__label--active[data-v-dbfca733]{color:#f59e0b;font-weight:600}.sso-offline-hint[data-v-dbfca733]{color:#94a3b8;align-items:center;gap:6px;margin-bottom:.75rem;font-size:.8rem;display:inline-flex}.sso-divider[data-v-dbfca733]{background:#f1f5f9;height:1px;margin:1.25rem 0}.sso-contact[data-v-dbfca733]{color:#64748b;margin:0;font-size:.82rem}.sso-contact strong[data-v-dbfca733]{color:#1e293b}.sso-attempts[data-v-dbfca733]{color:#cbd5e1;margin:.5rem 0 0;font-size:.75rem}.overlay-fade-enter-active[data-v-dbfca733],.overlay-fade-leave-active[data-v-dbfca733]{transition:opacity .3s}.overlay-fade-enter-from[data-v-dbfca733],.overlay-fade-leave-to[data-v-dbfca733]{opacity:0}.idle-backdrop[data-v-2a33e406]{z-index:9998;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0f1ef0;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.idle-card[data-v-2a33e406]{text-align:center;background:#fff;border-radius:24px;width:min(92vw,440px);padding:2.5rem 2.25rem;animation:.4s cubic-bezier(.16,1,.3,1) idle-card-in-2a33e406;box-shadow:0 0 0 1px #ffffff14,0 24px 64px #00000080}@keyframes idle-card-in-2a33e406{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.idle-icon[data-v-2a33e406]{color:#b45309;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;margin:0 auto 1.25rem;animation:2s ease-in-out infinite idle-pulse-2a33e406;display:inline-flex}@keyframes idle-pulse-2a33e406{0%,to{box-shadow:0 0 #f59e0b66}50%{box-shadow:0 0 0 14px #f59e0b00}}.idle-badge[data-v-2a33e406]{letter-spacing:.04em;text-transform:uppercase;color:#92400e;background:#fef3c7;border-radius:20px;align-items:center;gap:6px;margin-bottom:1rem;padding:4px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.idle-badge__dot[data-v-2a33e406]{background:currentColor;border-radius:50%;width:7px;height:7px;animation:1.4s ease-in-out infinite idle-blink-2a33e406}@keyframes idle-blink-2a33e406{0%,to{opacity:1}50%{opacity:.3}}.idle-title[data-v-2a33e406]{color:#0f172a;letter-spacing:-.01em;margin:0 0 .6rem;font-size:1.25rem;font-weight:700}.idle-body[data-v-2a33e406]{color:#475569;margin:0 0 1.25rem;font-size:.875rem;line-height:1.6}.idle-countdown[data-v-2a33e406]{margin-bottom:.75rem}.idle-countdown__time[data-v-2a33e406]{font-variant-numeric:tabular-nums;color:#0f172a;letter-spacing:-.02em;font-size:2.5rem;font-weight:700;line-height:1}.idle-countdown__label[data-v-2a33e406]{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-size:.75rem}.idle-progress[data-v-2a33e406]{background:#f1f5f9;border-radius:6px;height:6px;margin-bottom:1.5rem;overflow:hidden}.idle-progress__fill[data-v-2a33e406]{background:linear-gradient(90deg,#f59e0b,#fbbf24);border-radius:6px;height:100%;transition:width 1s linear,background .3s}.idle-progress__fill--urgent[data-v-2a33e406]{background:linear-gradient(90deg,#dc2626,#ef4444);animation:.8s ease-in-out infinite urgent-pulse-2a33e406}@keyframes urgent-pulse-2a33e406{0%,to{opacity:1}50%{opacity:.7}}.idle-actions[data-v-2a33e406]{flex-direction:column;gap:.5rem;display:flex}.idle-btn[data-v-2a33e406]{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:.75rem 1.25rem;font-size:.9rem;font-weight:600;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.idle-btn--primary[data-v-2a33e406]{color:#fff;background:linear-gradient(#10b981,#059669);box-shadow:0 2px 8px #05966959}.idle-btn--primary[data-v-2a33e406]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #05966973}.idle-btn--primary[data-v-2a33e406]:active{transform:translateY(0)}.idle-btn--ghost[data-v-2a33e406]{color:#64748b;background:#f1f5f9}.idle-btn--ghost[data-v-2a33e406]:hover{color:#475569;background:#e2e8f0}.idle-fade-enter-active[data-v-2a33e406],.idle-fade-leave-active[data-v-2a33e406]{transition:opacity .3s}.idle-fade-enter-from[data-v-2a33e406],.idle-fade-leave-to[data-v-2a33e406]{opacity:0}
