.auth-page{background:radial-gradient(ellipse 80% 60% at 10% 0%, color-mix(in srgb, var(--accent-rose,#e879a9) 12%, transparent), transparent), radial-gradient(ellipse 70% 50% at 90% 100%, color-mix(in srgb, var(--brand-bright,#9d4edd) 14%, transparent), transparent), linear-gradient(165deg, var(--brand-tint-2,#faf5ff) 0%, var(--surface-1,#fff) 55%, var(--brand-tint,#f3e8ff) 100%);place-items:center;min-height:100vh;padding:1.5rem 1rem;display:grid;position:relative}.auth-lang{top:.75rem;right:max(.75rem, env(safe-area-inset-right,0));z-index:20;position:absolute}.auth-shell{background:var(--surface-1,#fff);width:min(100%,56rem);height:40rem;max-height:calc(100vh - 2rem);box-shadow:0 32px 64px -28px color-mix(in srgb, var(--ink,#240046) 28%, transparent), 0 0 0 1px color-mix(in srgb, var(--ink) 6%, transparent);border-radius:1.25rem;grid-template-columns:17.5rem 1fr;display:grid;overflow:hidden}.auth-rail{background:linear-gradient(165deg, var(--brand-tint,#f3e8ff) 0%, color-mix(in srgb, var(--accent-rose,#e879a9) 18%, var(--brand-tint)) 100%);min-height:0;color:var(--ink,#240046);flex-direction:column;padding:1.75rem 1.35rem 1.5rem;display:flex;position:relative;overflow:hidden}.auth-rail:before,.auth-rail:after{content:"";pointer-events:none;opacity:.35;border-radius:50%;position:absolute}.auth-rail:before{border:1px solid color-mix(in srgb, var(--accent-ink) 20%, transparent);width:11rem;height:11rem;top:-3.5rem;right:-2.5rem}.auth-rail:after{background:color-mix(in srgb, var(--brand-bright) 12%, transparent);width:7rem;height:7rem;bottom:1.5rem;left:-2rem}.auth-rail-brand{z-index:1;flex-shrink:0;align-items:center;gap:.75rem;margin-bottom:0;display:flex;position:relative}.auth-rail-mark{background:var(--surface-1,#fff);color:var(--accent-ink,#5a189a);box-shadow:0 8px 20px -10px color-mix(in srgb, var(--accent-ink) 35%, transparent)}.auth-rail-list{z-index:1;flex-direction:column;flex:1;justify-content:center;gap:1.1rem;margin:0;padding:0;list-style:none;display:flex;position:relative}.auth-rail-list li{align-items:flex-start;gap:.65rem;font-size:.8125rem;line-height:1.45;display:flex}.auth-rail-list strong{margin-bottom:.15rem;font-size:.8125rem;font-weight:700;display:block}.auth-rail-list span{color:color-mix(in srgb, var(--ink) 72%, transparent)}.auth-rail-icon{box-sizing:border-box;background:color-mix(in srgb, var(--surface-1) 88%, transparent);width:2rem;height:2rem;color:var(--accent-ink,#5a189a);box-shadow:0 4px 12px -8px color-mix(in srgb, var(--accent-ink) 40%, transparent);border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;line-height:0;display:inline-flex}.auth-rail-icon svg{flex:none;width:1rem;max-width:1rem;height:1rem;max-height:1rem;display:block}.auth-rail-foot{z-index:1;color:color-mix(in srgb, var(--ink) 65%, transparent);flex-shrink:0;margin:0;font-size:.75rem;line-height:1.45;position:relative}.auth-main{flex-direction:column;justify-content:safe center;min-width:0;min-height:0;padding:2rem 2.25rem;display:flex;overflow-y:auto}.auth-main-inner{flex-shrink:0;width:100%;max-width:26rem;margin-inline:auto}.auth-main-head{margin-bottom:1.5rem}.auth-main-title{letter-spacing:-.02em;color:var(--ink,#240046);margin:0 0 .35rem;font-size:1.35rem;font-weight:700}.auth-main-sub{color:var(--muted,#64748b);margin:0;font-size:.875rem;line-height:1.5}.auth-main-body{width:100%}.password-input{width:100%;position:relative}.password-input__field{padding-right:2.75rem}.password-input__toggle{border-radius:var(--radius-sm,8px);width:2.25rem;height:2.25rem;color:var(--muted,#64748b);cursor:pointer;background:0 0;border:0;place-items:center;transition:color .15s,background .15s;display:grid;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.password-input__toggle:hover{color:var(--accent-ink,#5a189a);background:var(--brand-tint-2,#faf5ff)}.password-input__toggle:focus-visible{outline:2px solid var(--brand,#7b2cbf);outline-offset:1px}@media (width<=768px){.auth-shell{grid-template-columns:1fr;height:auto;min-height:min(40rem,100vh - 2rem);max-height:none}.auth-rail-list,.auth-main{justify-content:flex-start}.auth-rail{padding-bottom:1.25rem}.auth-rail-list{flex-flow:wrap;gap:.5rem}.auth-rail-list li{flex:calc(50% - .5rem);min-width:9rem}.auth-rail-list span,.auth-rail-foot{display:none}.auth-main{padding:1.5rem 1.25rem 1.25rem}}:root{--gradient-1:linear-gradient(135deg, #7209b7, #5a189a);--primary:#7209b7;--primary-dark:#5a189a;--ink:#240046;--ink-2:#3c096c;--brand:#7209b7;--brand-bright:#9d4edd;--brand-tint:#f3e8ff;--brand-tint-2:#faf5ff;--accent-rose:#e879a9;--row-expanded-bg:#fce7f3;--row-expanded-head-bg:#fbcfe8;--row-expanded-hover-bg:#fbcfe8;--row-expanded-border:#f9a8d4;--accent:#9d4edd;--accent-ink:#5a189a;--accent-tint:#f3e8ff;--success:#2e7d5b;--success-ink:#1c5c3f;--success-tint:#dbefe4;--warn-ink:#6b4a12;--warn-tint:#fbebce;--danger-ink:#8a2a20;--danger-tint:#f7deda;--info-ink:#5a189a;--info-tint:#f3e8ff;--paper:#fffbfe;--surface:#fff;--surface-2:#fdf8fc;--line:#ede9f4;--line-strong:#ddd6e8;--skeleton-strong:#8f84a8;--text:#1a1a2e;--muted:#5c5470;--muted-2:#6f6788;--ch-outlook:#0f6cbd;--ch-teams:#7209b7;--ch-wecom:#2db87a;--ch-outlook-ink:#0e63ad;--ch-teams-ink:#7209b7;--ch-wecom-ink:#137045;--ch-wecom-strong:#137045;--focus:#7209b7;--focus-on-dark:#e0aaff;--background:var(--paper);--foreground:var(--text);--card:var(--surface);--card-foreground:var(--text);--border:var(--line);--muted-foreground:var(--muted);--ring:var(--focus);--radius:14px;--radius-sm:10px;--radius-pill:999px;--shadow-sm:0 1px 2px #7209b70f, 0 1px 1px #7209b70a;--shadow:0 8px 24px -12px #7209b747;--shadow-lg:0 24px 60px -24px #7209b766;--sidebar-w:248px;--topbar-h:72px;--page-pad:22px}@media (width<=768px){:root{--page-pad:14px}}.dark{--ch-outlook-ink:#6cb4f0;--ch-teams-ink:#c77dff;--ch-wecom-ink:#5fd6a0;--paper:#160029;--surface:#1e0540;--surface-2:#260a4d;--line:#34186b;--line-strong:#432080;--skeleton-strong:#7565a8;--text:#f3eafe;--ink:#f3eafe;--ink-2:#e6d8ff;--muted:#c4b3e6;--muted-2:#a991d6;--brand-tint:#2e1259;--brand-tint-2:#241047;--row-expanded-bg:#3a1230;--row-expanded-head-bg:#4d1a40;--row-expanded-hover-bg:#4d1a40;--shadow-sm:0 1px 2px #0006;--shadow:0 8px 24px -12px #0009;--shadow-lg:0 24px 60px -24px #000000b3}*,:before,:after,::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:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Hanken Grotesk,system-ui,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:IBM Plex Mono,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family: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:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-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{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}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{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--paper);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Hanken Grotesk,system-ui,sans-serif;font-size:14px;line-height:1.5}h1,h2,h3,h4{color:var(--ink);letter-spacing:-.01em;margin:0;font-family:Sora,sans-serif}a{color:var(--brand)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:6px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.\!container{width:100%!important}.container{width:100%}@media (width>=640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (width>=768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (width>=1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (width>=1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (width>=1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.mono{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{background:var(--ink);color:#fff;z-index:200;border-radius:8px;padding:10px 16px;transition:top .15s;position:absolute;top:-50px;left:12px}.skip:focus{top:12px}.pill{border-radius:var(--radius-pill);white-space:nowrap;align-items:center;gap:6px;height:24px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.p-green{background:var(--success-tint);color:var(--success-ink)}.p-amber{background:var(--warn-tint);color:var(--warn-ink)}.p-red{background:var(--danger-tint);color:var(--danger-ink)}.p-blue{background:var(--info-tint);color:var(--info-ink)}.p-brass{background:var(--accent-tint);color:var(--accent-ink)}.p-grey{color:#3c4847;background:#eaedea}.p-brand{background:var(--brand-tint);color:var(--brand)}.\!btn{border:1px solid var(--line-strong)!important;background:var(--surface)!important;height:40px!important;color:var(--ink)!important;cursor:pointer!important;border-radius:11px!important;align-items:center!important;gap:8px!important;padding:0 16px!important;font-size:13.5px!important;font-weight:600!important;transition:all .15s!important;display:inline-flex!important}.btn{border:1px solid var(--line-strong);background:var(--surface);height:40px;color:var(--ink);cursor:pointer;border-radius:11px;align-items:center;gap:8px;padding:0 16px;font-size:13.5px;font-weight:600;transition:all .15s;display:inline-flex}.\!btn:hover{background:var(--surface-2)!important;border-color:var(--brand)!important}.btn:hover{background:var(--surface-2);border-color:var(--brand)}.\!btn:active{transform:scale(.98)!important}.btn:active{transform:scale(.98)}.btn-primary{background:var(--gradient-1);border-color:var(--brand);color:#fff}.btn-primary:hover{background:var(--primary-dark);border-color:var(--primary-dark)}.btn-sm{border-radius:9px;height:34px;padding:0 12px;font-size:13px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.\!input{border:1px solid var(--line-strong)!important;border-radius:var(--radius-sm)!important;background:var(--surface)!important;width:100%!important;height:42px!important;color:var(--text)!important;padding:0 13px!important;font-size:13.5px!important}.input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;height:42px;color:var(--text);padding:0 13px;font-size:13.5px}.\!input:focus{border-color:var(--brand)!important}.input:focus{border-color:var(--brand)}.lbl{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.chip-btn{border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:var(--surface);height:36px;color:var(--ink);cursor:pointer;align-items:center;gap:7px;padding:0 13px;font-size:13px;font-weight:600;display:inline-flex}.chip-btn:hover{border-color:var(--brand);background:var(--brand-tint-2)}.seg{background:var(--surface);border:1px solid var(--line);border-radius:11px;gap:2px;padding:3px;display:flex}.seg button{height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:flex}.seg button[aria-pressed=true]{background:var(--brand-tint);color:var(--brand)}.avatar{color:#fff;background:var(--avatar-bg,var(--gradient-1));border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-family:Sora;font-size:12px;font-weight:700;display:grid}.avatar-xs{color:#fff;background:var(--avatar-bg,var(--gradient-1));border-radius:50%;place-items:center;width:24px;height:24px;font-family:Sora;font-size:10px;font-weight:700;display:inline-grid}.avatar-lg{color:#fff;background:var(--avatar-bg,var(--gradient-1));border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-family:Sora;font-size:13px;font-weight:700;display:grid}.view-enter{animation:.25s fade}.app-grid{grid-template-columns:1fr;height:100vh;display:grid}@media (width>=1024px){.app-grid{grid-template-columns:var(--sidebar-w) 1fr}.app-grid.sidebar-collapsed{grid-template-columns:60px 1fr}.app-grid.sidebar-collapsed .sidebar{padding:16px 6px}.app-grid.sidebar-collapsed .brand{justify-content:center;gap:0;padding:8px 0 14px}.app-grid.sidebar-collapsed .brand-name,.app-grid.sidebar-collapsed .brand-sub,.app-grid.sidebar-collapsed .nav-label,.app-grid.sidebar-collapsed .nav-badge,.app-grid.sidebar-collapsed .nav-item>span{display:none}.app-grid.sidebar-collapsed .nav-item{justify-content:center;gap:0;padding:10px 0}}.sidebar-scrim{z-index:110;background:#24004666;position:fixed;inset:0}@media (width>=1024px){.sidebar-scrim{display:none}}.sidebar{background:var(--surface);color:var(--ink);border-right:1px solid var(--line);min-height:0;width:var(--sidebar-w);z-index:120;flex-direction:column;gap:6px;padding:16px 14px;transition:transform .25s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.is-open{box-shadow:var(--shadow-lg);transform:none}@media (width>=1024px){.sidebar{box-shadow:none;z-index:auto;width:auto;position:static;transform:none}}.brand{border-bottom:1px solid var(--line);align-items:center;gap:11px;margin-bottom:8px;padding:8px 8px 14px;display:flex}.brand-mark{background:var(--gradient-1);color:#fff;border-radius:10px;flex:none;place-items:center;width:38px;height:38px;display:grid;box-shadow:inset 0 0 0 1px #7209b71f}.brand-name{color:var(--brand);letter-spacing:.02em;font-family:Sora;font-size:15px;font-weight:700;line-height:1.1}.brand-sub{letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);font-size:11px}.nav-label{letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);padding:10px 10px 4px;font-size:10.5px;font-weight:600}.nav{flex-direction:column;gap:3px;display:flex}.nav-item{text-align:left;width:100%;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:0;align-items:center;gap:12px;min-height:42px;padding:10px 11px;font-size:13.5px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex;position:relative}.nav-item>svg{color:var(--brand);flex:none;transition:color .15s}.nav-item:hover{background:var(--brand-tint-2);color:var(--brand)}.nav-item.is-active{background:var(--brand-tint);color:var(--accent-ink);box-shadow:inset 3px 0 0 var(--brand);font-weight:600}.nav-item.is-active>svg{color:currentColor}.nav-badge{background:var(--brand-tint);color:var(--brand);border-radius:999px;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;display:grid}.nav-item.is-active .nav-badge{background:var(--brand-tint-2);color:var(--brand)}.sidebar-spacer{flex:1}.sidebar-foot{border-top:1px solid var(--line);flex-direction:column;gap:2px;padding-top:8px;display:flex}.main-col{flex-direction:column;min-width:0;display:flex;overflow:hidden}.topbar{height:var(--topbar-h);background:linear-gradient(180deg, var(--brand-tint-2) 0%, var(--surface) 78%);border-bottom:1px solid var(--line);padding:0 var(--page-pad);color:var(--ink);flex:none;align-items:center;gap:14px;display:flex}@media (width<=767px){.topbar{gap:10px}}.topbar-left{flex:none;align-items:center;gap:12px;min-width:0;display:flex}.topbar-page-copy{flex-direction:column;gap:1px;min-width:0;display:flex}.page-kicker{letter-spacing:.04em;color:var(--brand);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;line-height:1.2;overflow:hidden}.page-title{letter-spacing:-.02em;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-family:Sora,sans-serif;font-size:17px;font-weight:700;line-height:1.15;overflow:hidden}.topbar-greeting-line{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;margin-top:2px;font-size:12px;font-weight:500;line-height:1.2;display:flex;overflow:hidden}.topbar-greeting-text{color:var(--ink-2);font-weight:600}.topbar-greeting-sep{color:var(--muted-2)}.topbar-greeting-hint{color:var(--muted)}@media (width<=767px){.topbar-greeting-hint,.topbar-greeting-sep{display:none}.page-title{font-size:15px}}.topbar-divider{background:var(--line-strong);flex:none;align-self:stretch;width:1px;margin:10px 0}.topbar-right{flex:none;align-items:center;gap:10px;margin-left:auto;display:flex}.topbar-utilities{align-items:center;gap:4px;display:flex}.topbar-search{flex:1;align-items:center;min-width:0;max-width:400px;display:flex;position:relative}.topbar-search>svg{color:var(--brand);position:absolute;left:12px}.topbar-search input{background:var(--surface-2);width:100%;height:40px;color:var(--text);border:none;border-radius:0;padding:0 16px 0 38px;font-size:13.5px}.topbar-search input:focus{background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--brand);outline:none}.top-right{align-items:center;gap:8px;margin-left:auto;display:flex}.sync-chip{background:color-mix(in srgb, var(--success-tint) 55%, transparent);height:34px;color:var(--success-ink);white-space:nowrap;align-items:center;gap:8px;padding:0 10px;font-size:12px;font-weight:600;display:flex}.sync-chip-icon{background:var(--surface);width:24px;height:24px;color:var(--success-ink);border:1px solid color-mix(in srgb, var(--success-ink) 18%, var(--line));flex:none;place-items:center;display:grid}.user-chip{cursor:pointer;color:var(--ink);background:0 0;border:none;align-items:center;gap:10px;padding:4px 8px 4px 4px;display:flex}.user-chip:hover{background:var(--brand-tint-2)}.topbar-avatar-ring{background:linear-gradient(135deg, var(--brand-bright), var(--accent-rose));border-radius:50%;place-items:center;padding:2px;display:grid}.topbar-avatar-ring .avatar-lg{box-shadow:0 0 0 2px var(--surface)}.user-meta b{color:var(--ink);font-size:13px;font-weight:600}.user-meta span{color:var(--muted-2);font-size:11px;display:block}.scroll-area{padding:var(--page-pad);flex:1;overflow:auto}.scroll-area--fixed{overflow:hidden}.scroll-area--bleed{padding:0;overflow:hidden}.dashboard-panel .table-wrap table.data-grid tbody tr td{border-bottom:1px solid var(--line);vertical-align:middle;color:var(--text);background:var(--surface);padding:15px 12px;transition:background .12s}.dashboard-panel .table-wrap table.data-grid tbody tr:hover td{background:var(--brand-tint-2)}.dashboard-panel .table-wrap table.data-grid tbody tr:last-child td{border-bottom:1px solid var(--line)}.sourcing-shell{min-height:0;height:calc(100vh - var(--topbar-h) - 2 * var(--page-pad));max-height:calc(100vh - var(--topbar-h) - 2 * var(--page-pad));box-sizing:border-box;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:1fr;gap:5px;padding:0 4px 2px 0;display:grid;overflow:hidden}.sourcing-search-card{flex-shrink:0;grid-area:1/1}.sourcing-search-card.card{border-radius:0!important;padding:10px 12px!important}.sourcing-search-layout{flex-direction:column;align-items:stretch;gap:0;display:flex}.sourcing-search-image-split{grid-template-columns:minmax(200px,.82fr) minmax(0,1.45fr);align-items:start;gap:0 16px;min-width:0;display:grid}.sourcing-search-text-split{grid-template-columns:minmax(0,1fr) auto;gap:0 12px}.sourcing-search-split-refine{min-width:0;padding-left:4px}.sourcing-search-split-upload{border-right:1px solid var(--line);flex-direction:column;gap:8px;min-width:0;height:min(320px,42vh);padding-right:16px;display:flex;overflow:auto}.sourcing-refine-panel--split{box-shadow:none;background:0 0;border:none;min-width:0}.sourcing-refine-panel--split .sourcing-refine-head{margin-bottom:2px}.sourcing-refine-head--mode-only{justify-content:flex-end;margin-bottom:0}.sourcing-search-mode-aside{justify-content:flex-end;padding-top:2px;display:flex}.sourcing-refine-head-start{flex:auto;align-items:center;gap:8px;min-width:0;display:flex}.sourcing-refine-head-end{flex:none;margin-left:auto}.sourcing-refine-panel--split .sourcing-mode-tabs{flex-shrink:0}.sourcing-refine-panel--split .sourcing-mode-tab{height:30px;padding:0 10px;font-size:11px}.sourcing-refine-panel--split .sourcing-refine-hint{color:var(--muted);margin:0 0 10px;font-size:11px;line-height:1.45}.sourcing-search-split-upload .sourcing-search-image{flex-direction:column;flex:auto;min-width:0;display:flex}.sourcing-drop-zone--attach{flex:auto;gap:6px;min-height:132px;padding:16px 12px}.sourcing-drop-zone--attach .sourcing-drop-zone-icon{width:1.5rem;height:1.5rem}.sourcing-drop-zone--attach .sourcing-drop-zone-lead{font-size:13px;font-weight:600}.sourcing-drop-zone--attach .sourcing-drop-zone-hint{max-width:none;font-size:11px;line-height:1.35}.sourcing-drop-zone--attach.has-preview{flex-direction:column;align-items:center;padding:12px}.sourcing-drop-zone--attach.has-preview .sourcing-drop-zone-preview{max-width:100%;max-height:88px}.sourcing-drop-zone--attach.has-preview .sourcing-drop-zone-copy{text-align:center;align-items:center;width:100%}.sourcing-drop-zone .sourcing-drop-zone-preview-stack{pointer-events:auto;width:100%;max-width:100%}.sourcing-drop-zone--attach.has-preview .sourcing-drop-zone-preview-stack{min-height:0}.sourcing-region-selector{flex-direction:column;align-items:stretch;gap:0;width:100%;max-width:100%;display:flex}.sourcing-region-canvas{cursor:crosshair;touch-action:none;justify-content:center;align-items:center;width:100%;min-height:164px;padding:8px 8px 6px;display:flex;position:relative}.sourcing-region-selector.is-disabled .sourcing-region-canvas{cursor:wait}.sourcing-region-preview-img{width:auto;max-width:100%;height:auto;max-height:168px!important}.sourcing-region-footer{border-top:1px solid color-mix(in srgb, var(--line) 85%, transparent);flex-direction:column;align-items:center;gap:5px;width:100%;margin-top:2px;padding:6px 4px 2px;display:flex}.sourcing-region-rect{box-sizing:border-box;border:2px solid var(--brand);background:color-mix(in srgb, var(--brand) 22%, transparent);pointer-events:none;border-radius:4px;position:absolute}.sourcing-region-actions{flex-wrap:wrap;justify-content:center;gap:4px;width:100%;display:flex}.sourcing-region-btn{border:1px solid var(--line);background:var(--surface);min-height:24px;color:var(--ink);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:4px 8px;font-size:11px;font-weight:600;line-height:1.15;display:inline-flex}.sourcing-region-btn:disabled{opacity:.45;cursor:not-allowed}.sourcing-region-btn--primary{border-color:color-mix(in srgb, var(--brand) 40%, var(--line));background:var(--brand-tint-2);color:var(--brand)}.sourcing-region-btn--ghost{color:var(--muted);background:0 0;border-color:#0000}.sourcing-region-hint{color:var(--muted);text-align:center;max-width:22rem;margin:0;font-size:10px;line-height:1.3}.sourcing-save-recent--attach,.sourcing-save-recent--text{color:var(--muted-2);align-items:flex-start;gap:8px;font-size:11px;line-height:1.35;display:flex}.sourcing-save-recent--attach{margin-top:2px}.sourcing-save-recent--text{margin-top:0}@media (width<=820px){.sourcing-search-image-split{grid-template-columns:1fr;gap:12px 0}.sourcing-search-split-refine{order:2;padding-left:0}.sourcing-search-split-upload{border-right:none;border-bottom:1px solid var(--line);order:1;padding-bottom:12px;padding-right:0}.sourcing-drop-zone--attach{min-height:100px}}@media (width<=900px){.sourcing-search-split-refine .sourcing-refine-row--triple{grid-template-columns:repeat(2,minmax(0,1fr))}}.sourcing-refine-panel--stacked{display:contents}.sourcing-refine-stack-trigger{white-space:nowrap;border:1px solid var(--line-strong);background:var(--surface);border-radius:0;align-self:stretch;height:auto;min-height:44px;margin:0;padding:8px 12px}.sourcing-refine-stack-trigger .sourcing-refine-title-short{font-weight:600}.sourcing-refine-stack-body{border-top:1px solid var(--line);margin-top:2px;padding-top:8px}.sourcing-refine-stack-body .sourcing-refine-hint{margin-top:0}.sourcing-search-image .sourcing-search-file-input,.sourcing-drop-zone>*{pointer-events:none}.sourcing-panel.card{background:var(--surface);border:1px solid var(--line)!important;box-shadow:0 1px 2px color-mix(in srgb, var(--ink) 6%, transparent), 0 8px 24px color-mix(in srgb, var(--ink) 4%, transparent)!important;border-radius:0!important}.sourcing-field-label{letter-spacing:.02em;text-transform:none;color:var(--muted);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.sourcing-field{min-width:180px}.sourcing-select{border:1px solid var(--line-strong);background:var(--surface);width:100%;height:36px;color:var(--ink);box-shadow:none;border-radius:0;padding:0 10px;font-size:13px;font-weight:500;transition:border-color .12s,box-shadow .12s}.sourcing-select:focus{border-color:color-mix(in srgb, var(--brand) 55%, var(--line));box-shadow:0 0 0 3px var(--brand-tint-2);outline:none}.sourcing-input{border:1px solid var(--line-strong);background:var(--surface);width:100%;height:40px;color:var(--ink);box-shadow:none;border-radius:0;padding:0 12px;font-size:13px;font-weight:500;transition:border-color .12s,box-shadow .12s}.sourcing-input:focus{border-color:color-mix(in srgb, var(--brand) 55%, var(--line));box-shadow:0 0 0 3px var(--brand-tint-2);outline:none}.sourcing-input::placeholder{color:var(--muted-2)}.sourcing-action{border:1px solid var(--line-strong);background:var(--surface);height:36px;color:var(--ink);letter-spacing:.01em;text-transform:none;cursor:pointer;box-shadow:none;border-radius:0;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:600;transition:background .12s,border-color .12s,box-shadow .12s;display:inline-flex}.sourcing-action:hover{background:var(--brand-tint-2);border-color:color-mix(in srgb, var(--brand) 35%, var(--line))}.sourcing-action svg{color:var(--brand);flex:none}.sourcing-action-value{color:var(--ink);text-transform:none;letter-spacing:.02em;font-weight:800}.sourcing-drop-zone{text-align:center;cursor:pointer;border:1px dashed color-mix(in srgb, var(--brand) 28%, var(--line-strong));background:color-mix(in srgb, var(--brand-tint-2) 45%, var(--surface));border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;min-height:160px;padding:28px 20px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.sourcing-drop-zone-copy{flex-direction:column;align-items:flex-start;gap:1px;min-width:0;display:flex}.sourcing-drop-zone--compact .sourcing-drop-zone-icon{flex:none;width:1.25rem;height:1.25rem}.sourcing-drop-zone--compact .sourcing-drop-zone-lead{font-size:13px;font-weight:600}.sourcing-drop-zone--compact.has-preview .sourcing-drop-zone-preview{flex:none;max-width:40px;max-height:40px}.sourcing-drop-zone--compact .sourcing-drop-zone-filename{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;font-weight:600;overflow:hidden}.sourcing-drop-zone-hint--inline{color:var(--muted);font-size:11px;line-height:1.35}.sourcing-drop-zone:hover{border-color:color-mix(in srgb, var(--brand) 45%, var(--line));background:var(--brand-tint-2)}.sourcing-drop-zone.is-active{border-color:var(--brand);background:var(--brand-tint);box-shadow:0 0 0 3px var(--brand-tint-2);border-style:solid}.sourcing-drop-zone-icon{width:2rem;height:2rem;color:var(--brand);opacity:.85}.sourcing-drop-zone-lead{color:var(--ink);font-size:15px;font-weight:600}.sourcing-drop-zone-hint{color:var(--muted);max-width:22rem;font-size:12px;line-height:1.45}.sourcing-drop-zone-preview{-o-object-fit:contain;object-fit:contain;border:1px solid var(--line);background:var(--surface);border-radius:0;max-width:100%;max-height:120px}.sourcing-drop-zone-filename{color:var(--muted);font-size:11px;font-weight:600}.sourcing-pill{border:1px solid var(--line);letter-spacing:.01em;text-transform:none;white-space:nowrap;border-radius:6px;align-items:center;height:28px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.sourcing-pill--grey{background:var(--surface-2);color:var(--ink);box-shadow:none}.sourcing-pill--brand{background:var(--brand-tint);color:var(--brand);box-shadow:none;border:1px solid color-mix(in srgb, var(--brand) 25%, transparent)}.sourcing-mode-tabs{background:var(--surface-2);border:1px solid var(--line);border-radius:0;flex-wrap:wrap;gap:0;margin-bottom:0;padding:3px;display:inline-flex}.sourcing-mode-tab{height:34px;color:var(--muted);letter-spacing:.01em;text-transform:none;cursor:pointer;box-shadow:none;background:0 0;border:none;border-radius:0;align-items:center;padding:0 14px;font-size:13px;font-weight:600;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.sourcing-mode-tab.is-selected{background:var(--surface);color:var(--brand);box-shadow:0 1px 3px color-mix(in srgb, var(--ink) 8%, transparent)}.sourcing-mode-tab:disabled{opacity:.55;cursor:not-allowed}.sourcing-source-tabs{flex-wrap:wrap;gap:6px;display:flex}.sourcing-source-tab{border:2px solid var(--ink);background:var(--surface);height:32px;color:var(--ink);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:2px 2px 0 color-mix(in srgb, var(--muted-2) 70%, var(--ink));align-items:center;gap:6px;padding:0 10px;font-size:10px;font-weight:800;display:inline-flex}.sourcing-source-tab.is-selected{background:var(--ink);color:#fff;box-shadow:2px 2px 0 var(--brand)}.sourcing-source-tab-count{background:color-mix(in srgb, currentColor 12%, transparent);justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:800;display:inline-flex}.sourcing-source-pill{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:#fff;border:2px solid #0000;border-radius:0;align-items:center;height:24px;padding:0 9px;font-size:10px;font-weight:800;display:inline-flex}.sourcing-result-tile-source,.sourcing-text-page-tile-source{z-index:5;text-overflow:ellipsis;max-width:calc(100% - 16px);position:absolute;bottom:8px;left:8px;overflow:hidden}.sourcing-result-tile-source.sourcing-source-pill--jerhel,.sourcing-text-page-tile-source.sourcing-source-pill--jerhel{color:#fff;background-color:#7c3aed;border-color:#6d28d9;box-shadow:0 2px 8px #5b21b68c}.sourcing-result-tile-source.sourcing-source-pill--ecatalogue,.sourcing-text-page-tile-source.sourcing-source-pill--ecatalogue{color:#fff;background-color:#db2777;border-color:#be185d;box-shadow:0 2px 8px #be185d8c}.sourcing-warnings{color:#92400e;background:#fffbeb;border:2px solid #d97706;align-items:flex-start;gap:10px;margin-bottom:12px;padding:10px 12px;display:flex}.sourcing-warnings-icon{flex:none;margin-top:2px}.sourcing-warnings-title{margin:0 0 4px;font-size:12px;font-weight:800}.sourcing-warnings-list{margin:0;padding-left:16px;font-size:11px;line-height:1.45}.sourcing-warnings-dismiss{flex:none;margin-left:auto}.sourcing-search-text{flex-direction:column;gap:8px;min-width:0;padding:6px 4px 4px 2px;display:flex}.sourcing-search-split-primary{border-right:1px solid var(--line);min-width:0;padding-right:16px}.sourcing-text-search-form{grid-template-columns:9.5rem minmax(0,1fr) minmax(6.75rem,auto);align-items:center;gap:8px;width:min(100%,36rem);min-width:0;max-width:100%;display:grid}.sourcing-text-search-category-field{min-width:0;min-height:0}.sourcing-text-search-category{width:100%;min-width:0}.sourcing-text-search-input{width:100%;min-width:0;max-width:100%}.sourcing-text-search-form .sourcing-field{min-width:0}.sourcing-text-search-form .sourcing-select,.sourcing-text-search-form .sourcing-input{height:32px;box-shadow:1px 1px 0 color-mix(in srgb, var(--brand) 35%, transparent);border-width:1px;padding:0 10px;font-size:12px}.sourcing-text-search-form .sourcing-select:focus,.sourcing-text-search-form .sourcing-input:focus{box-shadow:2px 2px 0 var(--brand)}.sourcing-text-search-submit{letter-spacing:.08em;width:100%;min-width:6.75rem;height:32px;box-shadow:1px 1px 0 var(--brand);border-width:1px;flex:none;justify-self:stretch;gap:6px;padding:0 12px;font-size:10px}.sourcing-text-search-submit:hover{box-shadow:2px 2px 0 var(--brand)}.sourcing-text-page-tile{background:var(--surface);border:1px solid var(--line-strong);transition:transform .15s,box-shadow .15s,border-color .15s;overflow:hidden}.sourcing-text-page-tile-hit{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block}.sourcing-text-page-tile:hover{border-color:#7c3aed;transform:translateY(-2px);box-shadow:3px 3px #7c3aed40}.sourcing-text-page-tile-media{background:var(--surface-2);border-bottom:1px solid var(--line);isolation:isolate;justify-content:center;align-items:center;height:180px;padding:12px;display:flex;position:relative;overflow:hidden}.sourcing-text-page-tile-page{z-index:5;color:#fff;letter-spacing:.06em;text-transform:uppercase;background:#5b21b6;padding:4px 8px;font-size:10px;font-weight:800;position:absolute;top:0;right:0}.sourcing-text-page-tile-page-view{z-index:0;pointer-events:none;background:#fff;border:0;width:100%;height:100%;min-height:156px;position:relative}.sourcing-text-page-tile-empty{z-index:0;color:var(--muted-2);flex-direction:column;align-items:center;gap:6px;display:flex;position:relative}.sourcing-text-page-tile-body{padding:12px}.sourcing-text-page-tile-vendor{letter-spacing:.08em;text-transform:uppercase;color:#5b21b6;font-size:10px;font-weight:800}.sourcing-text-page-tile-title{color:var(--ink);margin-top:4px;font-size:14px;font-weight:700}.sourcing-text-page-tile-snippet{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:6px;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.sourcing-text-page-tile-pdf{color:var(--muted-2);text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:10px;line-height:1.35;overflow:hidden}.sourcing-drawer-kicker-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.sourcing-detail-desc--highlight{background:#f5f3ff;border-left:3px solid #7c3aed;padding:10px 12px}.sourcing-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sourcing-refine-panel--inline{box-shadow:none;background:0 0;border:none}.sourcing-refine-collapse-trigger{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:0;align-items:center;gap:8px;width:100%;margin:0 0 4px;padding:8px 4px;transition:background .12s;display:flex}.sourcing-refine-collapse-trigger:hover{background:var(--surface-2)}.sourcing-refine-collapse-trigger:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.sourcing-refine-collapse-trigger .sourcing-refine-title{flex:1}.sourcing-refine-optional{color:var(--muted);margin-left:4px;font-weight:500}.sourcing-refine-chevron{color:var(--muted);flex:none;transition:transform .15s}.sourcing-refine-chevron.is-open{transform:rotate(180deg)}.sourcing-refine-panel.is-collapsed .sourcing-refine-collapse-trigger{margin-bottom:0}.sourcing-refine-head{justify-content:space-between;align-items:center;gap:10px 12px;width:100%;margin-bottom:4px;display:flex}.sourcing-refine-title{letter-spacing:.01em;text-transform:none;color:var(--ink);align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600;display:inline-flex}.sourcing-refine-title svg{color:var(--brand)}.sourcing-refine-active-pill{background:var(--brand-tint);height:22px;color:var(--brand);letter-spacing:.02em;text-transform:none;border:none;border-radius:999px;align-items:center;padding:0 8px;font-size:11px;font-weight:600;display:inline-flex}.sourcing-refine-panel--inline .sourcing-refine-hint{color:var(--muted);margin:0 0 10px;font-size:10px;line-height:1.4}.sourcing-refine-form{flex-direction:column;gap:10px;min-width:0;display:flex}.sourcing-refine-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:10px 14px;display:grid}.sourcing-refine-row--desc-cap{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.sourcing-refine-row--triple{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px}.sourcing-refine-row--triple .sourcing-refine-range-inputs{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:5px;display:grid}.sourcing-refine-row--triple .sourcing-refine-bound{min-width:0}.sourcing-refine-row--triple .sourcing-refine-unit{width:auto;min-width:1.5rem;padding-left:2px}.sourcing-refine-desc{flex-direction:column;min-width:0;display:flex}.sourcing-refine-desc .sourcing-field-label{margin-bottom:4px}.sourcing-refine-range{border:none;min-width:0;margin:0;padding:0}.sourcing-refine-range-label{letter-spacing:.02em;text-transform:none;color:var(--muted);margin-bottom:5px;font-size:11px;font-weight:600;display:block}.sourcing-refine-range-inputs{align-items:center;gap:6px;min-width:0;display:flex}.sourcing-refine-bound{flex:1;min-width:0}.sourcing-refine-input{width:100%;height:34px!important;padding:0 8px!important;font-size:12px!important}.sourcing-refine-num{min-width:0}.sourcing-refine-range-sep{color:var(--muted);flex:none;font-size:11px;font-weight:700;line-height:1}.sourcing-refine-unit{text-align:right;letter-spacing:.06em;text-transform:uppercase;width:1.75rem;color:var(--muted);flex:none;font-size:10px;font-weight:700}.sourcing-refine-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;display:flex}@media (width<=520px){.sourcing-refine-row,.sourcing-refine-row--triple{grid-template-columns:1fr}}.sourcing-refine-apply{background:var(--brand-tint-2)}.sourcing-menu{border:2px solid var(--ink)!important;box-shadow:4px 4px 0 color-mix(in srgb, var(--brand) 35%, var(--ink))!important;border-radius:0!important;padding:4px!important}.sourcing-menu-item{border-radius:0!important;font-size:12px!important;font-weight:600!important}.sourcing-menu-item[aria-checked=true]{background:var(--brand-tint)!important;color:var(--brand)!important;font-weight:800!important}.sourcing-main-column{flex-direction:column;grid-area:2/1;min-height:0;display:flex;overflow:hidden}.sourcing-recent-panel{flex-direction:column;grid-area:3/1;min-height:0;display:flex}@media (width>=1024px){.sourcing-shell{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr 300px}.sourcing-recent-panel{grid-area:1/2/-1}}.sourcing-recent-layout{flex-direction:column;flex:1;gap:6px;min-height:0;display:flex}.sourcing-recent-head{flex-shrink:0}.sourcing-results-head{flex:none}.sourcing-results-body,.sourcing-recent-body{flex:1;min-height:0;overflow:auto}.sourcing-recent-title{letter-spacing:.02em;text-transform:none;width:100%;color:var(--ink);border-bottom:1px solid var(--line);align-items:center;gap:8px;margin:0;padding-bottom:5px;font-size:13px;font-weight:600;display:inline-flex}.sourcing-recent-title svg{color:var(--brand);flex:none}.sourcing-recent-list{flex-direction:column;gap:6px;display:flex}.sourcing-recent-item{border:1px solid var(--line);background:var(--surface);min-height:52px;box-shadow:none;border-radius:10px;align-items:stretch;transition:border-color .12s,background .12s,box-shadow .12s;display:flex;overflow:hidden}.sourcing-recent-item:hover{border-color:color-mix(in srgb, var(--brand) 30%, var(--line));background:var(--surface-2);box-shadow:0 2px 8px color-mix(in srgb, var(--ink) 5%, transparent)}.sourcing-recent-item-main{cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:10px;min-width:0;padding:8px 10px;display:flex}.sourcing-recent-item-main:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.sourcing-recent-item-remove{border:none;border-left:1px solid var(--line);background:var(--surface-2);width:36px;color:var(--muted);cursor:pointer;border-radius:0 10px 10px 0;flex:none;place-items:center;padding:0;transition:background .12s,color .12s;display:grid}.sourcing-recent-item-remove:hover:not(:disabled){color:#b91c1c;background:#fef2f2}.sourcing-recent-item-remove:disabled{opacity:.45;cursor:not-allowed}.sourcing-recent-notice{border:1px solid var(--brand);background:var(--brand-tint);color:var(--ink);margin:0 0 10px;padding:8px 10px;font-size:11px;line-height:1.45}.sourcing-save-recent{color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:8px;margin:0;font-size:12px;display:inline-flex}.sourcing-save-recent input{accent-color:var(--brand)}.sourcing-recent-item-icon{border:1px solid var(--line-strong);background:var(--surface-2);color:#7c3aed;border-radius:0;flex:none;place-items:center;width:32px;height:32px;display:grid;overflow:hidden}.sourcing-recent-item-thumb{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.sourcing-recent-item-icon--catalogue{background:var(--surface);border-color:var(--line)}.sourcing-recent-item-brand-icon{-o-object-fit:contain;object-fit:contain;width:22px;height:22px;display:block}.sourcing-recent-item-text{flex:1;min-width:0}.sourcing-recent-item-label{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;line-height:1.25;display:block;overflow:hidden}.sourcing-recent-item-context{letter-spacing:.03em;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;font-weight:600;display:block;overflow:hidden}.sourcing-ref-panel{z-index:80;background:var(--surface);border:2px solid var(--ink);width:148px;box-shadow:4px 4px 0 color-mix(in srgb, var(--brand) 35%, var(--ink));position:fixed;bottom:20px;right:20px}.sourcing-ref-panel.is-positioned{bottom:auto;right:auto}.sourcing-ref-panel.is-dragging{-webkit-user-select:none;user-select:none}.sourcing-ref-panel-head{border-bottom:1px solid var(--line);background:var(--surface-2);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:4px;padding:6px 6px 6px 8px;display:flex}.sourcing-ref-panel.is-dragging .sourcing-ref-panel-head{cursor:grabbing}.sourcing-ref-panel-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--brand);align-items:center;gap:5px;font-size:9px;font-weight:700;display:inline-flex}.sourcing-ref-panel-close{border:1px solid var(--line-strong);background:var(--surface);width:28px;height:28px;border-radius:0!important}.sourcing-ref-panel-close:hover{border-color:var(--brand);background:var(--brand-tint-2)}.sourcing-ref-panel-frame{aspect-ratio:1;background:repeating-linear-gradient(-45deg, var(--surface-2), var(--surface-2) 4px, var(--surface) 4px, var(--surface) 8px);place-items:center;padding:8px;display:grid}.sourcing-ref-panel-img{-o-object-fit:contain;object-fit:contain;max-width:100%;max-height:100%}.sourcing-ref-panel-label{color:var(--muted);border-top:1px solid var(--line);text-overflow:ellipsis;white-space:nowrap;margin:0;padding:6px 8px;font-size:10px;line-height:1.35;overflow:hidden}.sourcing-ref-restore{z-index:80;border:2px solid var(--ink);background:var(--surface);height:40px;color:var(--ink);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;box-shadow:3px 3px 0 var(--brand);align-items:center;gap:8px;padding:0 14px;font-size:11px;font-weight:700;transition:transform .12s,box-shadow .12s;display:inline-flex;position:fixed;bottom:20px;right:20px}.sourcing-ref-restore:hover{box-shadow:4px 4px 0 var(--brand);transform:translate(-1px,-1px)}.sourcing-ref-restore svg{color:var(--brand)}@media (width>=1024px){.sourcing-ref-panel:not(.is-positioned),.sourcing-ref-restore{right:324px}}.sourcing-result-tile{background:var(--surface);border:1px solid var(--line-strong);text-align:left;flex-direction:column;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;overflow:hidden}.sourcing-result-tile:hover{border-color:var(--brand);box-shadow:3px 3px 0 color-mix(in srgb, var(--brand) 25%, transparent);transform:translateY(-2px)}.sourcing-result-tile-media{background:var(--surface-2);border-bottom:1px solid var(--line);isolation:isolate;justify-content:center;align-items:center;height:180px;padding:12px;display:flex;position:relative;overflow:hidden}.sourcing-result-tile-tag{z-index:5;background:var(--ink);color:#fff;letter-spacing:.06em;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;max-width:58%;padding:4px 8px;font-size:10px;font-weight:700;position:absolute;top:0;left:0;overflow:hidden}.sourcing-result-tile-match{z-index:5;background:var(--success-ink);color:#fff;letter-spacing:.04em;padding:4px 8px;font-size:11px;font-weight:800;position:absolute;top:0;right:0}.sourcing-result-tile-img{z-index:0;-o-object-fit:contain;object-fit:contain;max-width:100%;max-height:100%;position:relative}.sourcing-result-tile-empty{z-index:0;color:var(--muted-2);flex-direction:column;align-items:center;gap:6px;display:flex;position:relative}.sourcing-result-tile-body{flex:auto;min-height:0;padding:12px 12px 10px}.sourcing-result-tile-title{color:var(--ink);font-size:14px;font-weight:700}.sourcing-result-tile-desc{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:4px;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.sourcing-result-tile-actions{border-top:1px solid var(--line);background:var(--surface-2);flex-wrap:nowrap;flex-shrink:0;gap:0;margin-top:auto;display:flex}.sourcing-result-tile-actions .sourcing-tile-action{border:none;border-left:1px solid var(--line);min-width:0;min-height:30px;color:var(--ink);letter-spacing:.02em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;flex:1 1 0;justify-content:center;align-items:center;gap:3px;padding:0 2px;font-size:9px;font-weight:700;line-height:1.1;transition:background .12s,color .12s;display:inline-flex}.sourcing-result-tile-actions .sourcing-tile-action:first-child{border-left:none}.sourcing-result-tile-actions .sourcing-tile-action:hover:not(:disabled){background:var(--brand-tint);color:var(--brand)}.sourcing-result-tile-actions .sourcing-tile-action.is-active{background:var(--ink);color:#fff}.sourcing-result-tile-actions .sourcing-tile-action.is-active:hover:not(:disabled){background:var(--brand);color:#fff}.sourcing-result-tile-actions .sourcing-tile-action-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sourcing-tile-action{border:1px solid var(--line-strong);background:var(--surface);height:32px;color:var(--ink);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:700;transition:border-color .12s,background .12s,color .12s;display:inline-flex}.sourcing-tile-action:hover:not(:disabled){border-color:var(--brand);background:var(--brand-tint);color:var(--brand)}.sourcing-tile-action:disabled{opacity:.55;cursor:not-allowed}.sourcing-tile-action svg{flex:none}.sourcing-compare-overlay{z-index:95;pointer-events:none;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.sourcing-compare-modal{pointer-events:auto;background:var(--surface);border:2px solid var(--ink);width:min(960px,100%);max-height:calc(100vh - 32px);box-shadow:8px 8px 0 color-mix(in srgb, var(--brand) 40%, var(--ink));flex-direction:column;display:flex}.sourcing-compare-header{border-bottom:2px solid var(--ink);background:var(--surface-2);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.sourcing-compare-header-title{letter-spacing:.08em;text-transform:uppercase;color:var(--ink);align-items:center;gap:10px;font-family:Sora,sans-serif;font-size:14px;font-weight:800;display:inline-flex}.sourcing-compare-body{flex:1;grid-template-columns:1fr 2px 1fr;min-height:0;display:grid;overflow:hidden}@media (width<=767px){.sourcing-compare-body{grid-template-rows:1fr 2px 1fr;grid-template-columns:1fr}}.sourcing-compare-divider{background:var(--ink)}.sourcing-compare-pane{flex-direction:column;min-width:0;min-height:0;display:flex}.sourcing-compare-pane-head{border-bottom:1px solid var(--line);background:var(--surface);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.sourcing-compare-kicker{letter-spacing:.16em;text-transform:uppercase;color:var(--brand);font-size:9px;font-weight:700}.sourcing-compare-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.sourcing-magnifier{background:repeating-linear-gradient(0deg, var(--surface-2), var(--surface-2) 12px, var(--surface) 12px, var(--surface) 24px);flex-direction:column;flex:1;min-height:280px;max-height:52vh;padding:0;display:flex;position:relative;overflow:hidden}.sourcing-magnifier-viewport{cursor:crosshair;touch-action:none;flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;position:relative;overflow:hidden}.sourcing-magnifier-layer{transform-origin:50%;justify-content:center;align-items:center;max-width:100%;max-height:100%;display:flex}.sourcing-magnifier.is-zoomed .sourcing-magnifier-viewport{cursor:grab}.sourcing-magnifier.is-zoomed .sourcing-magnifier-viewport:active{cursor:grabbing}.sourcing-magnifier--detail .sourcing-magnifier-viewport{cursor:default}.sourcing-magnifier--detail.is-zoomed .sourcing-magnifier-viewport{cursor:grab}.sourcing-magnifier--detail .sourcing-magnifier-viewport{flex:none;height:280px;min-height:280px}.sourcing-magnifier-controls{z-index:6;border:2px solid var(--ink);background:var(--surface);box-shadow:2px 2px 0 var(--brand);align-items:center;gap:4px;padding:4px;display:inline-flex;position:absolute;top:10px;right:10px}.sourcing-magnifier-zoom-btn{border:1px solid var(--line-strong)!important;border-radius:0!important;width:32px!important;height:32px!important}.sourcing-magnifier-zoom-btn:disabled{opacity:.45;cursor:not-allowed}.sourcing-magnifier-zoom-level{text-align:center;letter-spacing:.06em;min-width:44px;color:var(--ink);font-size:10px;font-weight:800}.sourcing-magnifier-img{-o-object-fit:contain;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.sourcing-magnifier--detail .sourcing-magnifier-img{max-height:280px}.sourcing-magnifier-lens{pointer-events:none;z-index:5;border:2px solid var(--ink);background-repeat:no-repeat;background-color:var(--surface);position:absolute;box-shadow:inset 0 0 0 1px #fff,4px 4px #24004640}.sourcing-magnifier-hint{z-index:4;background:var(--ink);color:#fff;letter-spacing:.1em;text-transform:uppercase;pointer-events:none;opacity:.88;align-items:center;gap:5px;padding:4px 8px;font-size:9px;font-weight:700;display:inline-flex;position:absolute;bottom:10px;left:10px}.sourcing-magnifier-empty{min-height:200px;color:var(--muted-2);background:var(--surface-2);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex}@media (pointer:coarse){.sourcing-magnifier{cursor:default}.sourcing-magnifier-lens,.sourcing-magnifier-hint{display:none}}.sourcing-detail-drawer{width:min(520px,94vw)}.sourcing-detail-drawer--catalogue-pdf{width:min(1280px,98vw)}.sourcing-shortlist-drawer{width:min(520px,94vw)}.sourcing-drawer{border-left:2px solid var(--ink);box-shadow:-8px 0 0 color-mix(in srgb, var(--brand) 35%, var(--ink));border-radius:0;animation:.22s cubic-bezier(.4,0,.2,1) slide-in}.sourcing-drawer-head{border-bottom:2px solid var(--ink);background:var(--surface-2);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.sourcing-drawer-kicker{letter-spacing:.16em;text-transform:uppercase;color:var(--brand);margin-bottom:4px;font-size:9px;font-weight:700;display:block}.sourcing-drawer-title{color:var(--ink);margin:0;font-family:Sora,sans-serif;font-size:18px;font-weight:800;line-height:1.2}.sourcing-drawer-sub{color:var(--muted);margin:4px 0 0;font-size:12px}.sourcing-drawer-close{border:1px solid var(--line-strong);border-radius:0!important}.sourcing-drawer-body{flex:1;min-height:0;padding:16px;overflow:auto}.sourcing-drawer-foot{border-top:2px solid var(--ink);background:var(--surface-2);flex-shrink:0;padding:12px 16px}.sourcing-detail-hero{border:1px solid var(--line-strong);background:repeating-linear-gradient(-45deg, var(--surface-2), var(--surface-2) 6px, var(--surface) 6px, var(--surface) 12px);place-items:center;min-height:220px;margin-bottom:16px;padding:16px;display:grid}.sourcing-detail-hero--magnifier{min-height:280px;padding:0;overflow:hidden}.sourcing-detail-hero--magnifier .sourcing-magnifier{border:none;height:280px;min-height:280px;max-height:280px;margin:0}.sourcing-detail-view-toggle{border:1px solid var(--line-strong);background:var(--surface-2);gap:0;margin-bottom:12px;display:flex}.sourcing-detail-view-tab{letter-spacing:.04em;color:var(--muted);cursor:pointer;background:0 0;border:none;flex:1;padding:8px 10px;font-size:11px;font-weight:600;transition:background .12s,color .12s}.sourcing-detail-view-tab.is-active{color:var(--ink);background:var(--surface);box-shadow:inset 0 -2px 0 var(--brand)}.sourcing-catalogue-parent{width:100%;min-height:240px;max-height:320px}.sourcing-catalogue-parent-canvas{justify-content:center;align-items:center;width:100%;height:100%;min-height:240px;padding:12px;display:flex;position:relative}.sourcing-catalogue-parent-img{-o-object-fit:contain;object-fit:contain;width:auto;max-width:100%;height:auto;max-height:296px}.sourcing-catalogue-parent-rect{box-sizing:border-box;border:2px solid var(--brand);background:color-mix(in srgb, var(--brand) 22%, transparent);pointer-events:none;border-radius:4px;position:absolute}.sourcing-drawer-body--catalogue-pdf{flex-direction:column;flex:1;gap:12px;min-height:0;padding:0 0 16px;display:flex;overflow:hidden}.sourcing-catalogue-pdf-context{z-index:3;border-bottom:1px solid var(--line-strong);background:var(--surface);box-shadow:0 1px 0 color-mix(in srgb, var(--ink) 6%, transparent);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 20px;padding:12px 16px;display:grid;position:sticky;top:0}.sourcing-catalogue-pdf-context-section{margin-bottom:0}.sourcing-catalogue-pdf-context .sourcing-detail-section-title{margin-bottom:4px}.sourcing-catalogue-pdf-meta{gap:4px 12px;display:grid}.sourcing-catalogue-pdf-reader{flex-direction:column;flex:1;gap:8px;min-height:0;padding:0 16px;display:flex}.sourcing-catalogue-pdf-reader-hint{color:var(--muted);margin:0;font-size:11px;line-height:1.45}.sourcing-catalogue-pdf-reader-frame-wrap{border:1px solid var(--line-strong);background:#fff;flex:1;min-height:480px}.sourcing-catalogue-pdf-reader-frame{background:#fff;border:0;width:100%;height:100%;min-height:480px;display:block}.sourcing-catalogue-pdf-reader-empty{justify-content:center;min-height:480px}.sourcing-detail-hero-empty{color:var(--muted-2);flex-direction:column;align-items:center;gap:8px;display:flex}.sourcing-detail-section{margin-bottom:16px}.sourcing-detail-section-title{letter-spacing:.14em;text-transform:uppercase;color:var(--brand);margin:0 0 8px;font-size:10px;font-weight:700}.sourcing-detail-desc{color:var(--ink);border:1px solid var(--line);background:var(--surface-2);margin:0;padding:12px;font-size:13px;line-height:1.55}.sourcing-detail-gallery-count{border:1px solid var(--line-strong);background:var(--surface-2);letter-spacing:.06em;min-width:1.25rem;height:18px;color:var(--muted);justify-content:center;align-items:center;margin-left:8px;padding:0 6px;font-size:10px;font-weight:800;display:inline-flex}.sourcing-detail-thumb-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;display:grid}.sourcing-detail-thumb{border:2px solid var(--line-strong);background:var(--surface);cursor:pointer;flex-direction:column;gap:4px;min-width:0;padding:4px;transition:border-color .12s,box-shadow .12s,transform .12s;display:flex}.sourcing-detail-thumb:hover{border-color:var(--brand);box-shadow:2px 2px 0 color-mix(in srgb, var(--brand) 45%, transparent);transform:translate(-1px,-1px)}.sourcing-detail-thumb.is-selected{border-color:var(--brand);background:var(--brand-tint-2);box-shadow:2px 2px 0 var(--brand)}.sourcing-detail-thumb-img{aspect-ratio:1;-o-object-fit:contain;object-fit:contain;background:var(--surface-2);width:100%}.sourcing-detail-thumb-empty{aspect-ratio:1;background:var(--surface-2);place-items:center;width:100%;display:grid}.sourcing-detail-thumb-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center;white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-weight:700;overflow:hidden}.sourcing-meta-grid{border:1px solid var(--line-strong);grid-template-columns:1fr 1fr;display:grid}@media (width<=520px){.sourcing-meta-grid{grid-template-columns:1fr}}.sourcing-meta-row{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:8px;padding:8px 10px;font-size:12px;display:grid}.sourcing-meta-row:last-child{border-bottom:0}.sourcing-meta-row dt{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:700}.sourcing-meta-row dd{color:var(--ink);text-align:right;margin:0;font-weight:600}.sourcing-shortlist-count{background:var(--brand);color:#fff;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:800;display:inline-grid}.sourcing-shortlist-notice{color:var(--danger-ink);font-size:11px;font-weight:600}.sourcing-shortlist-body{padding:0!important}.sourcing-shortlist-list{flex-direction:column;display:flex}.sourcing-shortlist-row{border-bottom:1px solid var(--line);grid-template-columns:112px 1fr auto;align-items:stretch;gap:12px;padding:12px 16px;display:grid}.sourcing-shortlist-row:hover{background:var(--brand-tint-2)}.sourcing-shortlist-row-aside{flex-direction:column;align-self:stretch;gap:6px;width:112px;min-width:0;min-height:0;display:flex}.sourcing-shortlist-row-media{border:1px solid var(--line-strong);background:var(--surface-2);flex:1;place-items:center;width:100%;min-height:112px;padding:6px;display:grid}.sourcing-shortlist-row-aside .sourcing-actions-stack{flex:none;width:100%;margin-top:0}.sourcing-shortlist-row-aside .sourcing-tile-action{justify-content:center;width:100%;height:30px;padding:0 8px;font-size:10px}.sourcing-shortlist-row-media img{-o-object-fit:contain;object-fit:contain;max-width:100%;max-height:100%}.sourcing-shortlist-row-body{min-width:0}.sourcing-shortlist-row-title{color:var(--ink);font-size:13px;font-weight:700}.sourcing-shortlist-row-meta{color:var(--muted);margin-top:2px;font-size:11px}.sourcing-shortlist-row-desc{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 0;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.sourcing-shortlist-row-specs{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 20px;margin:8px 0 0;display:grid}.sourcing-shortlist-spec-col{flex-direction:column;gap:4px;min-width:0;display:flex}.sourcing-shortlist-spec-cell{align-items:baseline;gap:5px;min-width:0;display:flex}.sourcing-shortlist-spec-cell dt{letter-spacing:.04em;color:var(--muted);text-transform:uppercase;flex:none;margin:0;font-size:10px;font-weight:700}.sourcing-shortlist-spec-cell dd{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:11px;font-weight:600;overflow:hidden}.sourcing-shortlist-remove{border:1px solid var(--line-strong)!important;border-radius:0!important;width:32px!important;height:32px!important}.sourcing-shortlist-remove:hover{border-color:var(--danger-ink)!important;color:var(--danger-ink)!important}.sourcing-shortlist-empty{text-align:center;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:48px 24px;display:flex}.sourcing-shortlist-empty p{color:var(--ink);margin:0;font-size:14px;font-weight:700}.sourcing-shortlist-empty span{max-width:260px;font-size:12px;line-height:1.45}.sourcing-tile-action.is-active{border-color:var(--brand);background:var(--ink);color:#fff}.sourcing-tile-action.is-active:hover{background:var(--brand);border-color:var(--brand);color:#fff}.sourcing-actions-stack{flex-direction:column;gap:6px;margin-top:10px;display:flex}.pricer-shell{min-height:0;height:calc(100vh - var(--topbar-h) - 2 * var(--page-pad));max-height:calc(100vh - var(--topbar-h) - 2 * var(--page-pad));flex-direction:column;display:flex;overflow:hidden}.pricer-panel,.pricer-tab{flex-direction:column;flex:1;min-height:0;display:flex}.pricer-table-scroll{flex:1;min-height:0;overflow:auto}.jps-shell{min-height:0;height:calc(100vh - var(--topbar-h) - 2 * var(--page-pad));max-height:calc(100vh - var(--topbar-h) - 2 * var(--page-pad));flex-direction:column;gap:10px;display:flex;overflow:hidden}.jps-top-row{flex:none;grid-template-columns:1fr;align-items:stretch;gap:10px;display:grid}@media (width>=1280px){.jps-top-row{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}}.jps-top-row .dash-hub-strip.jps-top-hub-pipeline{grid-template-columns:1fr}.jps-top-row .dash-hub-strip.jps-top-hub-pipeline .dash-hub-section--jps{flex:1;min-width:0}.jps-top-row .dash-hub-strip.jps-top-hub-pipeline .dash-hub-section--jps .dash-hub-metrics{flex:1;gap:4px;padding:4px 6px}.jps-top-row .dash-hub-strip.jps-top-hub-pipeline .dash-hub-metric__label{font-size:11px}.jps-top-row .dash-hub-strip.jps-top-hub-coms{grid-template-columns:1fr}@media (width>=640px){.jps-top-row .dash-hub-strip.jps-top-hub-coms{grid-template-columns:repeat(3,minmax(0,1fr))}}.jps-pipeline-stat{border:1px solid var(--pipeline-stat-border,var(--line));background:var(--pipeline-stat-bg,var(--surface-2));border-radius:0;align-items:center;gap:8px;min-height:44px;padding:8px 10px;transition:transform .12s,box-shadow .12s;display:flex;box-shadow:0 1px 2px #0f172a0a}.jps-pipeline-stat:hover{transform:translateY(-1px);box-shadow:0 3px 8px #0f172a12}.jps-pipeline-stat--wide{align-items:flex-start;min-height:52px}.jps-top-row .card,.jps-top-row .chip-btn{border-radius:0}.jps-pipeline-stat__icon{background:color-mix(in srgb, var(--pipeline-stat-fg,var(--brand)) 12%, var(--surface));width:28px;height:28px;color:var(--pipeline-stat-fg,var(--brand));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--pipeline-stat-fg,var(--brand)) 16%, transparent);border-radius:0;flex:none;place-items:center;margin-top:1px;display:grid}.jps-pipeline-stat__body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.jps-pipeline-stat__headline{align-items:baseline;gap:6px;display:flex}.jps-pipeline-stat__value{font-family:var(--font-display);color:var(--ink);letter-spacing:-.02em;flex:none;font-size:22px;font-weight:700;line-height:1}.jps-pipeline-stat__headline-label{font-family:var(--font-display);color:var(--ink);letter-spacing:-.01em;font-size:15px;font-weight:700;line-height:1.1}.jps-pipeline-stat__label{letter-spacing:.02em;text-transform:uppercase;color:var(--muted);white-space:nowrap;text-align:right;margin-left:auto;font-size:10px;font-weight:700}.jps-pipeline-stat__breakdown{flex-wrap:wrap;align-items:center;gap:2px 0;min-width:0;display:flex}.jps-pipeline-stat__breakdown-item{white-space:nowrap;align-items:center;display:inline-flex}.jps-pipeline-stat__sep{color:var(--muted-2);-webkit-user-select:none;user-select:none;margin:0 5px;font-size:10px;font-weight:500}.jps-pipeline-stat__part{font-size:10px;font-weight:600;line-height:1.25}.jps-pipeline-stat__part-label{color:var(--pipeline-part-color,var(--muted))}.jps-pipeline-stat__part-value{color:var(--pipeline-part-color,var(--ink));font-weight:800}.jps-workspace{border-radius:0;flex-direction:column;flex:1;min-height:0;padding:10px 12px;display:flex;overflow:hidden}.jps-workspace-toolbar{--jps-toolbar-h:36px;flex:none}.jps-workspace-toolbar .seg{height:var(--jps-toolbar-h);box-sizing:border-box;border-radius:0;align-items:stretch;padding:2px}.jps-workspace-toolbar .seg button{border-radius:0;height:auto;font-size:12px}.jps-workspace-toolbar .chip-btn{height:var(--jps-toolbar-h);border-radius:0;font-size:12px}.jps-workspace-toolbar .jps-toolbar-search{height:var(--jps-toolbar-h);box-sizing:border-box;border-radius:0}.jps-sync-bar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.jps-sync-chip{white-space:nowrap;border-radius:0;flex-shrink:1;align-items:center;gap:6px;max-width:100%;height:26px;padding:0 8px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.jps-sync-bar .chip-btn.jps-sync-bar__action{border-radius:0;flex-shrink:0;height:26px;padding:0 8px;font-size:12px}.jps-workspace-body{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.jps-workspace-body>*{flex-direction:column;flex:1;min-height:0;display:flex}.jps-board-scroll{flex:1;min-height:0;overflow:auto}.table-wrap{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:0;overflow:auto}table.data-grid{border-collapse:separate;border-spacing:0;width:100%;min-width:1280px;font-size:13px}table.data-grid.jps-data-grid{min-width:2800px;font-size:12px}table.data-grid.jps-data-grid col.jps-col-w-default{width:120px}table.data-grid.jps-data-grid col.col-req{width:175px}table.data-grid.jps-data-grid col.col-item-no{width:130px}table.data-grid.jps-data-grid col.col-desc{width:160px}table.data-grid.jps-data-grid col.col-status{width:112px}table.data-grid.jps-data-grid col.col-sales-status{width:148px}table.data-grid.jps-data-grid col.col-source-team{width:128px}table.data-grid.jps-data-grid col.col-notes{width:130px}table.data-grid.jps-data-grid>tbody>tr.main-row>td{padding:5px 7px}table.data-grid.jps-data-grid .col-req{white-space:nowrap;width:175px;min-width:175px}table.data-grid.jps-data-grid .col-item-no{white-space:nowrap;width:130px;min-width:130px}table.data-grid.jps-data-grid .col-desc{max-width:160px}table.data-grid.jps-data-grid .col-status{width:112px;min-width:112px;max-width:112px}table.data-grid.jps-data-grid .col-sales-status{width:148px;min-width:148px;max-width:148px}table.data-grid.jps-data-grid .col-source-team{width:128px;min-width:128px;max-width:128px}table.data-grid.jps-data-grid .col-notes{max-width:130px;font-size:11px}table.data-grid.jps-data-grid .jps-cell-fill-label{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;display:block;overflow:hidden}table.data-grid.jps-data-grid .pill{border-radius:0}table.data-grid.jps-data-grid>tbody>tr.main-row>td.jps-cell-fill{vertical-align:stretch;height:1px;padding:0}table.data-grid.jps-data-grid td.jps-cell-fill>span{width:100%;display:block}table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill-layout{align-items:stretch;width:100%;height:100%;min-height:100%;display:flex}table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill__main{flex-direction:column;flex:1;justify-content:center;min-width:0;padding:5px 8px;display:flex}table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill-prior{margin-bottom:2px}table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill-trigger{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0;display:block}table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill-trigger:hover{opacity:.92}table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill__rail{box-sizing:border-box;border-left:1px solid color-mix(in srgb, currentColor 14%, transparent);flex-direction:column;flex-shrink:0;justify-content:center;align-self:stretch;gap:2px;width:30px;min-height:100%;padding:4px 3px;display:flex}table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill-rail-btn{box-sizing:border-box;width:100%;min-height:24px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;flex:none;align-self:stretch;place-items:center;margin:0;padding:3px 2px;transition:background .12s,opacity .12s;display:grid}table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill__rail>.jps-cell-fill-rail-btn:only-child{flex:auto;min-height:0}table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill-rail-btn--expand{opacity:.85}table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill-rail-btn:hover,table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill-rail-btn:focus-visible{background:color-mix(in srgb, currentColor 10%, transparent);opacity:1}table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill-rail-btn.jps-cell-history-btn,table.data-grid.jps-data-grid td.jps-cell-fill .jps-cell-fill-rail-btn.cell-history-btn{opacity:.7;width:100%;height:auto;margin-top:0;position:static;transform:none}table.data-grid.jps-data-grid td.jps-cell-fill.cell-has-history .jps-cell-fill-rail-btn.jps-cell-history-btn{opacity:.55}table.data-grid.jps-data-grid td.jps-cell-fill.cell-has-history:hover .jps-cell-fill-rail-btn.jps-cell-history-btn,table.data-grid.jps-data-grid td.jps-cell-fill.cell-has-history:focus-within .jps-cell-fill-rail-btn.jps-cell-history-btn{opacity:1}table.data-grid.jps-data-grid td.jps-cell-fill[data-pill=p-green]{background:var(--success-tint);color:var(--success-ink)}table.data-grid.jps-data-grid td.jps-cell-fill[data-pill=p-amber]{background:var(--warn-tint);color:var(--warn-ink)}table.data-grid.jps-data-grid td.jps-cell-fill[data-pill=p-red]{background:var(--danger-tint);color:var(--danger-ink)}table.data-grid.jps-data-grid td.jps-cell-fill[data-pill=p-blue]{background:var(--info-tint);color:var(--info-ink)}table.data-grid.jps-data-grid td.jps-cell-fill[data-pill=p-brass]{background:var(--accent-tint);color:var(--accent-ink)}table.data-grid.jps-data-grid td.jps-cell-fill[data-pill=p-grey]{color:#3c4847;background:#eaedea}table.data-grid.jps-data-grid td.jps-cell-fill[data-pill=p-brand]{background:var(--brand-tint);color:var(--brand)}table.data-grid.jps-data-grid tbody tr.main-row:hover>td.jps-cell-fill[data-pill=p-green],table.data-grid.jps-data-grid tbody tr.main-row.is-expanded>td.jps-cell-fill[data-pill=p-green]{background:var(--success-tint);color:var(--success-ink)}table.data-grid.jps-data-grid tbody tr.main-row:hover>td.jps-cell-fill[data-pill=p-amber],table.data-grid.jps-data-grid tbody tr.main-row.is-expanded>td.jps-cell-fill[data-pill=p-amber]{background:var(--warn-tint);color:var(--warn-ink)}table.data-grid.jps-data-grid tbody tr.main-row:hover>td.jps-cell-fill[data-pill=p-red],table.data-grid.jps-data-grid tbody tr.main-row.is-expanded>td.jps-cell-fill[data-pill=p-red]{background:var(--danger-tint);color:var(--danger-ink)}table.data-grid.jps-data-grid tbody tr.main-row:hover>td.jps-cell-fill[data-pill=p-blue],table.data-grid.jps-data-grid tbody tr.main-row.is-expanded>td.jps-cell-fill[data-pill=p-blue]{background:var(--info-tint);color:var(--info-ink)}table.data-grid.jps-data-grid tbody tr.main-row:hover>td.jps-cell-fill[data-pill=p-brass],table.data-grid.jps-data-grid tbody tr.main-row.is-expanded>td.jps-cell-fill[data-pill=p-brass]{background:var(--accent-tint);color:var(--accent-ink)}table.data-grid.jps-data-grid tbody tr.main-row:hover>td.jps-cell-fill[data-pill=p-grey],table.data-grid.jps-data-grid tbody tr.main-row.is-expanded>td.jps-cell-fill[data-pill=p-grey]{color:#3c4847;background:#eaedea}table.data-grid.jps-data-grid tbody tr.main-row:hover>td.jps-cell-fill[data-pill=p-brand],table.data-grid.jps-data-grid tbody tr.main-row.is-expanded>td.jps-cell-fill[data-pill=p-brand]{background:var(--brand-tint);color:var(--brand)}table.data-grid.jps-data-grid td.jps-cell{position:relative}table.data-grid.jps-data-grid td.cell-has-history:not(.jps-cell-fill){padding-right:22px}table.data-grid.jps-data-grid td:not(.jps-cell-fill) .jps-cell-history-btn{width:18px;height:18px;margin-top:0;position:absolute;top:50%;right:2px;transform:translateY(-50%)}table.data-grid.jps-data-grid .main-row button[class*=px-1\.5]{padding-left:4px;padding-right:4px}table.data-grid.jps-data-grid .main-row button[class*=py-1]{padding-top:1px;padding-bottom:1px}table.data-grid thead th{background:var(--surface-2);text-align:left;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--line-strong);white-space:nowrap;z-index:2;padding:11px 12px;font-size:11px;font-weight:700;position:sticky;top:0}table.data-grid.jps-data-grid>thead>tr>th{letter-spacing:.05em;color:#fff;background:var(--brand);border-bottom:1px solid color-mix(in srgb, #fff 12%, var(--primary-dark));vertical-align:middle;z-index:4;padding:5px 7px}table.data-grid thead th:not(:last-child),table.data-grid>tbody>tr.main-row>td:not(:last-child){border-right:1px solid var(--line)}table.data-grid>tbody>tr.main-row>td{border-bottom:1px solid var(--line);vertical-align:middle;color:var(--text);background:var(--surface);padding:11px 12px}table.data-grid tbody tr.main-row{cursor:pointer;transition:background .12s}table.data-grid tbody tr.main-row:hover>td{background:var(--brand-tint-2)}table.data-grid tbody tr.main-row.is-expanded>td{background:var(--row-expanded-bg);border-bottom-color:var(--row-expanded-border)}table.data-grid tbody tr.main-row.is-expanded>td:not(:last-child){border-right-color:var(--row-expanded-border)}table.data-grid tbody tr.sub-row>td{border-bottom:1px solid var(--line);background:var(--surface-2);padding:0}table.data-grid .col-desc{white-space:nowrap;text-overflow:ellipsis;max-width:220px;overflow:hidden}table.data-grid .col-notes{white-space:nowrap;text-overflow:ellipsis;max-width:180px;color:var(--muted);font-size:12px;overflow:hidden}table.data-grid .cell-strong{color:var(--ink);font-weight:600}table.data-grid td.cell-changed-gz{background:var(--info-tint);box-shadow:inset 3px 0 0 var(--info-ink)}table.data-grid td.cell-changed-nj,table.data-grid td.cell-changed{background:var(--warn-tint);box-shadow:inset 3px 0 0 var(--warn-ink)}table.data-grid td.cell-has-history .cell-history-btn{opacity:.45}table.data-grid td.cell-has-history:hover .cell-history-btn,table.data-grid td.cell-has-history:focus-within .cell-history-btn{opacity:1}.cell-history-btn{width:22px;height:22px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;margin-top:1px;transition:color .12s,background .12s,opacity .12s;display:grid}.cell-history-btn:hover{background:var(--brand-tint-2);color:var(--brand)}table.data-grid tbody tr.main-row.is-new>td:first-child{box-shadow:inset 3px 0 0 var(--warn-ink)}table.data-grid tbody tr.main-row.is-new>td{background:var(--warn-tint)}.table-action-btn.is-open{background:var(--brand-tint);color:var(--brand);border-color:var(--brand)}.jps-table-wrap{flex:1;min-height:0;max-height:none;overflow:auto}.scrim{z-index:90;background:#24004666;position:fixed;inset:0}.drawer{background:var(--surface);z-index:100;width:min(460px,94vw);height:100vh;box-shadow:var(--shadow-lg);flex-direction:column;animation:.26s cubic-bezier(.4,0,.2,1) slide-in;display:flex;position:fixed;top:0;right:0}.drawer.sourcing-detail-drawer{width:min(520px,94vw)}.drawer.sourcing-detail-drawer--catalogue-pdf{width:min(1280px,98vw)}.drawer-wide{width:min(720px,98vw)}.drawer-ref{letter-spacing:.1em;text-transform:uppercase;color:var(--brand);margin-bottom:6px;font-size:14px;font-weight:700}.drawer-head-line{flex-wrap:wrap;align-items:center;gap:6px 12px;min-width:0;display:flex}.drawer-head-title-row{flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:6px;display:flex}.drawer-head-title-row--toolbar{flex-wrap:nowrap;gap:8px;width:100%}.drawer-head-title-row--toolbar .drawer-tabs{min-width:0}.drawer-head-close{border-radius:0!important}.drawer-head-title{color:var(--ink);font-family:Sora,sans-serif;font-size:18px;font-weight:700;line-height:1.3}.drawer-head-line .drawer-ref{text-transform:none;letter-spacing:.04em;flex-shrink:0;margin-bottom:0}.drawer-head-id{flex-shrink:0;font-size:13px;font-weight:600}.drawer-head-detail{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);flex-shrink:0;font-size:12px;font-weight:700}@keyframes slide-in{0%{transform:translate(100%)}to{transform:none}}.drawer-head{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:12px;display:flex}.drawer-tabs{flex-shrink:0}.drawer-tabs .seg{width:fit-content}.drawer-head .drawer-tabs .seg{border-radius:0;padding:2px}.drawer-head .drawer-tabs .seg button{border-radius:0;padding:5px 12px;font-size:12.5px}.drawer-body{flex:1;min-height:0;padding:10px 12px 6px;overflow:auto}.drawer-actions{flex-wrap:nowrap;gap:6px;margin-top:24px;display:flex}.drawer-action-btn{border-radius:8px;flex:1 1 0;justify-content:center;gap:5px;min-width:0;height:30px;padding:0 8px;font-size:11.5px}.field-l{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:5px;font-size:11px;font-weight:700}.form-sheet-wrap{border:1px solid var(--line-strong);border-radius:0;margin-bottom:0;overflow:hidden}.form-sheet{border-radius:0;font-size:12.5px;line-height:1.45}.form-sheet-cell{border:1px solid var(--line-strong);vertical-align:top;color:var(--text);background:var(--surface);border-radius:0;padding:6px 8px}.form-sheet-label{width:118px;color:var(--muted);background:var(--surface-2);white-space:nowrap;font-size:11px;font-weight:700}.form-sheet-title{text-align:center;color:var(--ink);background:var(--surface-2);padding:10px 8px;font-family:Sora,sans-serif;font-size:13px;font-weight:700}.form-sheet-section{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--surface-2);font-size:11px;font-weight:700}.form-sheet-value{color:var(--ink);font-weight:500}.form-sheet-kv-label{color:var(--muted);font-size:11px;font-weight:700}.form-sheet-green .form-sheet-cell{background:#ecfdf3}.form-sheet-highlight{background:#fef9c3!important}.form-sheet-picture{vertical-align:middle;background:var(--surface-2);min-height:120px;padding:12px}.form-sheet-picture-stack{flex-direction:column;gap:16px;display:flex}.form-sheet-picture-card{border:1px solid var(--line);background:var(--surface);border-radius:0;flex-direction:column;gap:10px;padding:12px;display:flex}.form-sheet-picture-preview-wrap{background:var(--surface-2);border:1px solid var(--line);border-radius:0;justify-content:center;align-items:center;min-height:180px;max-height:320px;display:flex;overflow:hidden}.form-sheet-picture-preview{-o-object-fit:contain;object-fit:contain;width:auto;max-width:100%;height:auto;max-height:300px;display:block}.form-sheet-picture-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.form-sheet-picture-meta{text-align:left;min-width:0}.form-sheet-picture-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.form-sheet-picture-size{color:var(--muted);margin-top:2px;font-size:11px}.form-sheet-picture-actions{flex-wrap:wrap;flex-shrink:0;gap:6px;display:flex}.form-sheet-picture-actions .btn{border-radius:0;gap:5px;height:28px;padding:0 9px;font-size:12px;font-weight:600}.form-sheet-picture-actions .\!btn{border-radius:0!important;gap:5px!important;height:28px!important;padding:0 9px!important;font-size:12px!important;font-weight:600!important}.form-sheet-picture-actions .btn svg{width:14px;height:14px}.form-sheet-picture-actions .\!btn svg{width:14px!important;height:14px!important}.ql-wrap{flex-direction:column;gap:14px;display:flex}.ql-wrap--workbook-synced{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--ok) 55%, transparent);border-radius:8px;padding:4px}.ql-sheet-header{flex-direction:column;gap:4px;display:flex}.ql-save-chip{letter-spacing:.02em;background:var(--surface-2);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.ql-save-chip--ok{background:color-mix(in srgb, var(--ok) 18%, var(--surface));color:var(--ok-ink)}.ql-save-chip--err{background:color-mix(in srgb, var(--danger) 14%, var(--surface));color:var(--danger-ink)}.ql-sheet-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ql-ref{color:var(--ink);font-size:15px;font-weight:700}.ql-desc{color:var(--muted);font-size:13px;font-weight:500;line-height:1.4}.ql-section{flex-direction:column;gap:8px;display:flex}.ql-section-head{flex-wrap:wrap;align-items:center;gap:12px 16px;display:flex}.ql-section-title{letter-spacing:.04em;text-transform:uppercase;color:var(--brand);margin:0;font-family:Sora,sans-serif;font-size:13px;font-weight:700}.ql-blocks{flex-direction:column;gap:10px;display:flex}.ql-block{border:1px solid var(--line-strong);background:var(--surface);border-radius:4px;overflow:hidden}.ql-block--target{border-color:color-mix(in srgb, var(--warn-ink) 35%, var(--line-strong))}.ql-target-banner{border-bottom:1px solid var(--line-strong);background:#fef9c3;padding:10px 12px}.ql-target-vendor{color:var(--ink);margin-bottom:4px;font-size:12px;font-weight:700}.ql-target-title{color:var(--ink);font-size:12.5px;font-weight:600;line-height:1.45}.ql-table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:12.5px;line-height:1.45}.ql-cell{border:1px solid var(--line-strong);vertical-align:top;text-align:center;background:var(--surface);color:var(--ink);padding:8px 10px}.ql-row-label{width:108px;color:var(--muted);background:var(--surface-2);text-align:left;white-space:normal;font-size:11px;font-weight:700}.ql-row-label-wrap{align-items:flex-start;gap:4px;width:100%;display:flex}.ql-row-label-text{word-break:break-word;line-height:1.35;display:block}.ql-inline-input--label{text-align:left;min-width:0;color:var(--muted);flex:1;padding:4px 6px;font-size:11px;font-weight:700}.ql-row-remove{width:22px;height:22px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:inline-flex}.ql-row-remove:hover{color:var(--danger-ink);background:color-mix(in srgb, var(--danger-ink) 8%, transparent)}.ql-sheet-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:4px;display:flex}.ql-add-row{color:var(--brand);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:4px 0;font-size:13px;font-weight:600;display:inline-flex}.ql-add-row:hover{opacity:.85}.ql-add-row svg{color:var(--brand);flex-shrink:0}.ql-corner{background:var(--surface-2);vertical-align:middle}.ql-corner-target{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);text-align:left;font-size:11px;font-weight:700}.ql-header-band .ql-col-header{background:#ecfdf3}.ql-col-header{letter-spacing:.03em;text-transform:uppercase;color:var(--ink);font-size:11px;font-weight:700}.ql-col-option-label{text-transform:uppercase;letter-spacing:.03em;font-size:11px}.ql-col-option-label .ql-inline-input--header{text-transform:uppercase;letter-spacing:.03em}.ql-col-target{background:#fef9c3!important}.ql-cell-text{word-break:break-word;text-align:center;font-weight:500;display:block}.ql-cell-text--left{text-align:left}.ql-row-picture .ql-cell{vertical-align:middle;padding:6px}.ql-picture-cell{background:var(--surface-2);border-radius:3px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:96px;display:flex}.ql-picture-cell--target{background:#fef9c3}.ql-picture-cell--editable{background:var(--surface-2);gap:6px;min-height:108px;padding:8px 6px}.ql-picture-cell--editable.ql-picture-cell--target{background:#fef9c3}.ql-picture-cell--editable.ql-picture-cell--target .ql-picture-upload{background:#fefce8}.ql-picture-upload{border:1px dashed var(--line-strong);background:var(--surface);width:100%;min-height:96px;color:var(--brand);cursor:pointer;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:600;transition:border-color .15s,background .15s;display:flex}.ql-picture-upload-copy{text-align:center;flex-direction:column;align-items:center;gap:3px;max-width:100%;padding:0 6px;display:flex}.ql-picture-upload-lead{line-height:1.25}.ql-picture-upload-hint{color:var(--muted);max-width:11rem;font-size:10px;font-weight:500;line-height:1.35}.ql-picture-upload:hover,.ql-picture-cell--editable.is-dragover .ql-picture-upload{border-color:var(--brand);background:var(--brand-tint-2)}.ql-picture-cell--editable.is-dragover:has(.ql-picture-preview){outline:1px dashed var(--brand);outline-offset:-1px}.ql-picture-preview{-o-object-fit:contain;object-fit:contain;border-radius:3px;max-width:100%;max-height:72px}.ql-picture-meta{text-align:center;max-width:100%;font-size:10px;line-height:1.3}.ql-picture-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.ql-link-btn{color:var(--brand);cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;font-weight:600;text-decoration:underline}.ql-link-btn--muted{color:var(--muted)}.ql-cell-editable{padding:4px 6px}.ql-inline-input{border:1px solid var(--line-strong);width:100%;color:var(--ink);background:var(--surface);text-align:center;border-radius:4px;padding:5px 7px;font-size:12px;font-weight:500}.ql-inline-input:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-tint);outline:none}.ql-inline-input--header{text-transform:none;letter-spacing:0;font-size:11px;font-weight:700}.ql-inline-input--area{resize:vertical;text-align:left;min-height:44px;line-height:1.4}.ql-add-option{color:var(--success-ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin-top:4px;padding:4px 0;font-size:13px;font-weight:600;display:inline-flex}.ql-add-option:hover{opacity:.85}.ql-add-option svg{color:var(--success-ink);flex-shrink:0}.messaging{height:auto;margin:calc(var(--page-pad) * -1);background:var(--surface);border-top:1px solid var(--line);display:grid}@media (width>=768px){.messaging{height:calc(100vh - var(--topbar-h))}}.comms-back-btn{color:var(--brand);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:4px 0;font-size:13px;font-weight:600;display:inline-flex}.comms-back-btn:hover{text-decoration:underline}@media (width<=767px){.messaging{min-height:calc(100vh - var(--topbar-h))}}.mail-folders{border-right:1px solid var(--line);background:var(--surface-2);padding:16px 12px;overflow:auto}@media (width<=767px){.mail-folders{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;gap:6px;padding:10px 12px;display:flex;overflow-x:auto}.mail-folders .nav-label{display:none}.fold-item{white-space:nowrap;width:auto}.fold-count{margin-left:6px}}.fold-item{cursor:pointer;color:var(--text);text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;width:100%;padding:9px 11px;font-size:13.5px;font-weight:500;display:flex}.fold-item:hover{background:var(--brand-tint-2)}.fold-item.is-active{background:var(--brand-tint);color:var(--brand);font-weight:600}.\!thread{background:var(--surface-2)!important;flex-direction:column!important;flex:1!important;gap:12px!important;padding:16px!important;display:flex!important;overflow:auto!important}.thread{background:var(--surface-2);flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow:auto}.\!msg{max-width:88%!important;box-shadow:var(--shadow-sm)!important;border-radius:13px!important;padding:10px 13px!important;font-size:13px!important;line-height:1.45!important}.msg{max-width:88%;box-shadow:var(--shadow-sm);border-radius:13px;padding:10px 13px;font-size:13px;line-height:1.45}.msg-in{background:var(--surface);border:1px solid var(--line);border-top-left-radius:4px;align-self:flex-start}.msg-out{background:var(--gradient-1);color:#fff;border-top-right-radius:4px;align-self:flex-end}.msg-meta{opacity:.7;margin-top:5px;font-size:10.5px}.msg-img{border:1px solid var(--line);width:130px;height:130px;color:var(--brand);background:var(--surface);border-radius:12px;align-self:flex-start;place-items:center;display:grid}.\!composer{border-top:1px solid var(--line)!important;background:var(--surface)!important;align-items:center!important;gap:8px!important;padding:11px!important;display:flex!important}.composer{border-top:1px solid var(--line);background:var(--surface);align-items:center;gap:8px;padding:11px;display:flex}.\!composer input{border:1px solid var(--line-strong)!important;border-radius:var(--radius-pill)!important;background:var(--surface-2)!important;flex:1!important;height:38px!important;padding:0 14px!important;font-size:13px!important}.composer input{border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-2);flex:1;height:38px;padding:0 14px;font-size:13px}.\!composer input:focus{background:var(--surface)!important;border-color:var(--brand)!important;outline:none!important}.composer input:focus{background:var(--surface);border-color:var(--brand);outline:none}.send-btn{background:var(--gradient-1);color:#fff;cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;display:grid}.vendor-head{border-bottom:1px solid var(--line);background:var(--surface-2);align-items:center;gap:11px;padding:14px 16px;display:flex}.vendor-av{color:#fff;background:var(--avatar-bg,var(--gradient-1));border-radius:9px;flex:none;place-items:center;width:34px;height:34px;font-family:Sora;font-size:13px;font-weight:700;display:grid}.qr-wrapper{color:var(--text);font-size:13.5px}.qr-wrapper h1{margin:0;font-size:1.35rem;font-weight:700}.qr-wrapper h2{border-bottom:1px solid var(--line);margin:1.25rem 0 .65rem;padding-bottom:.35rem;font-size:1rem;font-weight:700}.qr-header-with-action{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 16px;margin-bottom:12px;display:flex}.qr-multiple-buttons{flex-wrap:wrap;gap:8px;display:flex}.qr-button{border:1px solid var(--line-strong);background:var(--surface-2);height:32px;color:var(--ink);cursor:pointer;border-radius:6px;align-items:center;padding:0 12px;font-size:12.5px;font-weight:600;display:inline-flex}.qr-button:hover{border-color:var(--brand);background:var(--brand-tint-2)}.qr-requests-by-item{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:4px 0;margin:0 0 16px;padding:0;list-style:none;display:flex}.qr-requests-by-item li button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 14px;font-size:13px;font-weight:600}.qr-requests-by-item li button.is-active{color:var(--brand);border-bottom-color:var(--brand)}.qr-requests-by-item li{padding:0}.qr-add-item-btn{color:var(--brand);cursor:pointer;background:0 0;border:0;padding:8px 14px;font-size:13px;font-weight:600}.qr-add-item-btn:hover{text-decoration:underline}.qr-request-detail-grid.three{grid-template-columns:repeat(6,minmax(0,1fr))}.qr-detail-panel{border:1px solid var(--line-strong);border-radius:4px;width:100%;margin-bottom:10px;overflow:hidden}.qr-detail-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13px}.qr-detail-table th,.qr-detail-table td{border:1px solid var(--line-strong);vertical-align:middle;padding:7px 10px}.qr-detail-table th{letter-spacing:.02em;width:15%;color:var(--muted);background:var(--surface-2);text-align:left;white-space:nowrap;font-size:11px;font-weight:700}.qr-detail-table th.qr-detail-th-wrap{white-space:normal;line-height:1.25}.qr-detail-table td{width:18%;color:var(--ink);background:var(--surface);font-weight:500}.qr-detail-table td.qr-detail-empty{background:var(--surface-2)}.qr-request-actions{flex-wrap:wrap;align-items:center;gap:10px 12px;margin-bottom:16px;display:flex}.qr-new-line-item{color:var(--success-ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:4px 0;font-size:13px;font-weight:600;display:inline-flex}.qr-new-line-item svg{color:var(--success-ink);flex-shrink:0}.qr-new-line-item:hover{opacity:.85}.qr-readonly-text{color:var(--ink);border:1px solid var(--line-strong);background:var(--surface-2);border-radius:4px;margin:0;padding:8px 10px;font-size:13.5px;line-height:1.45}.qr-trix-content ul{margin:0;padding-left:1.25rem}.qr-trix-content li{margin-bottom:.35rem}.qr-attachment{text-align:center;margin:12px 0 0}.qr-attachment-preview{border:1px solid var(--line);background:var(--surface-2);text-transform:uppercase;width:112px;height:112px;color:var(--muted);border-radius:4px;place-items:center;margin:0 auto 8px;font-size:10px;font-weight:600;display:grid}.qr-attachment-caption{color:var(--muted);font-size:11.5px}.qr-attachment-name{color:var(--ink);font-weight:600}.qr-link{color:var(--brand);cursor:pointer;font-size:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.qr-line-item-container{margin:0;padding:0;list-style:none}.qr-price-break-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;display:grid}.qr-line-item{border:1px solid var(--line);background:var(--surface);border-radius:4px;margin-bottom:8px;padding:10px 36px 10px 10px;position:relative}.qr-price-break-grid .qr-line-item{margin-bottom:0}.qr-component-line-item .qr-fields{flex-wrap:wrap;gap:8px 12px;display:flex}.qr-fields fieldset{border:0;flex:100px;min-width:100px;margin:0;padding:0}.qr-fields label{color:var(--muted);margin-bottom:3px;font-size:10.5px;font-weight:700;display:block}.qr-fields select,.qr-fields input[type=text]{border:1px solid var(--line-strong);background:var(--surface);width:100%;height:32px;color:var(--ink);border-radius:4px;padding:0 8px;font-size:12.5px}.qr-text-input-smaller{margin-top:4px;height:28px!important;font-size:12px!important}.qr-hanging-deletion{color:#c0392b;cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:11px;font-weight:600;position:absolute;top:8px;right:8px}.qr-hanging-deletion:hover{text-decoration:underline}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-3{inset:.75rem}.inset-x-3{left:.75rem;right:.75rem}.bottom-3{bottom:.75rem}.right-0{right:0}.right-2\.5{right:.625rem}.right-\[9px\]{right:9px}.top-0{top:0}.top-2{top:.5rem}.top-2\.5{top:.625rem}.top-\[calc\(100\%\+8px\)\]{top:calc(100% + 8px)}.z-10{z-index:10}.z-50{z-index:50}.z-\[10000\]{z-index:10000}.z-\[100\]{z-index:100}.z-\[120\]{z-index:120}.z-\[121\]{z-index:121}.z-\[130\]{z-index:130}.z-\[140\]{z-index:140}.z-\[141\]{z-index:141}.z-\[150\]{z-index:150}.z-\[1\]{z-index:1}.z-\[95\]{z-index:95}.m-0{margin:0}.m-4{margin:1rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.-mb-px{margin-bottom:-1px}.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-3\.5{margin-bottom:.875rem}.mb-4{margin-bottom:1rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.\!inline{display:inline!important}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.\!table{display:table!important}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.\!h-9{height:2.25rem!important}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[16px\]{height:16px}.h-\[17px\]{height:17px}.h-\[18px\]{height:18px}.h-\[30px\]{height:30px}.h-\[46px\]{height:46px}.h-\[49px\]{height:49px}.h-auto{height:auto}.h-full{height:100%}.max-h-48{max-height:12rem}.max-h-56{max-height:14rem}.min-h-0{min-height:0}.min-h-72{min-height:18rem}.min-h-\[130px\]{min-height:130px}.min-h-\[24rem\]{min-height:24rem}.min-h-\[28px\]{min-height:28px}.min-h-\[40px\]{min-height:40px}.min-h-\[84px\]{min-height:84px}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-1\/2{width:50%}.w-1\/3{width:33.3333%}.w-1\/4{width:25%}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\/3{width:66.6667%}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-3\/5{width:60%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-5\/6{width:83.3333%}.w-56{width:14rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[140px\]{width:140px}.w-\[17px\]{width:17px}.w-\[18px\]{width:18px}.w-\[30px\]{width:30px}.w-\[46px\]{width:46px}.w-\[min\(260px\,85vw\)\]{width:min(260px,85vw)}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[140px\]{min-width:140px}.min-w-\[180px\]{min-width:180px}.min-w-\[18px\]{min-width:18px}.min-w-\[200px\]{min-width:200px}.min-w-\[20px\]{min-width:20px}.min-w-\[220px\]{min-width:220px}.min-w-\[240px\]{min-width:240px}.min-w-\[26px\]{min-width:26px}.max-w-4xl{max-width:56rem}.max-w-\[180px\]{max-width:180px}.max-w-\[80\%\]{max-width:80%}.max-w-\[84\%\]{max-width:84%}.max-w-\[calc\(100vw-2rem\)\]{max-width:calc(100vw - 2rem)}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1}.flex-none{flex:none}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.border-separate{border-collapse:separate}.border-spacing-0{--tw-border-spacing-x:0px;--tw-border-spacing-y:0px;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y)}.origin-top-right{transform-origin:100% 0}.rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(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)) skewX(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:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-pointer{cursor:pointer}.select-all{-webkit-user-select:all;user-select:all}.resize-y{resize:vertical}.resize{resize:both}.snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}.snap-mandatory{--tw-scroll-snap-strictness:mandatory}.snap-start{scroll-snap-align:start}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[minmax\(0\,1fr\)_96px_96px_110px\]{grid-template-columns:minmax(0,1fr) 96px 96px 110px}.grid-cols-\[minmax\(72px\,120px\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(72px,120px) minmax(0,1fr)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.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-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-3\.5{gap:.875rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-\[7px\]{gap:7px}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-0\.5{row-gap:.125rem}.gap-y-1{row-gap:.25rem}.gap-y-4{row-gap:1rem}.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\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * 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))}.divide-line>:not([hidden])~:not([hidden]){border-color:var(--line)}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:var(--radius)}.rounded-2xl{border-radius:1rem}.rounded-\[10px\]{border-radius:10px}.rounded-\[11px\]{border-radius:11px}.rounded-\[13px\]{border-radius:13px}.rounded-\[3px\]{border-radius:3px}.rounded-\[9px\]{border-radius:9px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-pill{border-radius:var(--radius-pill)}.rounded-sm{border-radius:var(--radius-sm)}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-t-0{border-top-width:0}.border-dashed{border-style:dashed}.border-brand{border-color:var(--brand)}.border-line{border-color:var(--line)}.border-line-strong{border-color:var(--line-strong)}.border-success-ink{border-color:var(--success-ink)}.border-surface{border-color:var(--surface)}.border-transparent{border-color:#0000}.border-l-brand{border-left-color:var(--brand)}.border-l-transparent{border-left-color:#0000}.\!bg-brand-tint{background-color:var(--brand-tint)!important}.bg-\[var\(--accent-rose\)\]{background-color:var(--accent-rose)}.bg-\[var\(--skeleton-strong\)\]{background-color:var(--skeleton-strong)}.bg-accent-tint{background-color:var(--accent-tint)}.bg-black\/30{background-color:#0000004d}.bg-brand{background-color:var(--brand)}.bg-brand-tint{background-color:var(--brand-tint)}.bg-brand-tint-2{background-color:var(--brand-tint-2)}.bg-danger-tint{background-color:var(--danger-tint)}.bg-paper{background-color:var(--paper)}.bg-success{background-color:var(--success)}.bg-success-tint{background-color:var(--success-tint)}.bg-surface{background-color:var(--surface)}.bg-surface-2{background-color:var(--surface-2)}.bg-transparent{background-color:#0000}.bg-warn-tint{background-color:var(--warn-tint)}.bg-white\/25{background-color:#ffffff40}.bg-brand{background-image:var(--gradient-1)}.fill-brand{fill:var(--brand)}.fill-none{fill:none}.stroke-brand{stroke:var(--brand)}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.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-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pr-5{padding-right:1.25rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.font-display{font-family:Sora,sans-serif}.font-mono{font-family:IBM Plex Mono,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10\.5px\]{font-size:10.5px}.text-\[10px\]{font-size:10px}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13\.5px\]{font-size:13.5px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-4{line-height:1rem}.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-brand{color:var(--brand)!important}.text-\[var\(--accent-rose\)\]{color:var(--accent-rose)}.text-accent-ink{color:var(--accent-ink)}.text-brand{color:var(--brand)}.text-danger-ink{color:var(--danger-ink)}.text-ink{color:var(--ink)}.text-muted{color:var(--muted)}.text-muted-2{color:var(--muted-2)}.text-success-ink{color:var(--success-ink)}.text-text{color:var(--text)}.text-warn-ink{color:var(--warn-ink)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/75{color:#ffffffbf}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-\[var\(--brand\)\]{accent-color:var(--brand)}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.\!shadow-none{--tw-shadow:0 0 #0000!important;--tw-shadow-colored:0 0 #0000!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)!important}.shadow{--tw-shadow:var(--shadow);--tw-shadow-colored:var(--shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:var(--shadow-lg);--tw-shadow-colored:var(--shadow-lg);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-sm{--tw-shadow:var(--shadow-sm);--tw-shadow-colored:var(--shadow-sm);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.outline-none{outline-offset:2px;outline:2px solid #0000}.outline{outline-style:solid}.ring{--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(3px + 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-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-brand{--tw-ring-color:var(--brand)}.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)!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.\[scroll-padding-inline\:12px\]{scroll-padding-inline:12px}.sourcing-source-pill.sourcing-source-pill--jerhel{color:#fff!important;background-color:#7c3aed!important;border-color:#6d28d9!important}.sourcing-source-pill.sourcing-source-pill--ecatalogue{color:#fff!important;background-color:#db2777!important;border-color:#be185d!important}.placeholder\:text-muted-2::placeholder{color:var(--muted-2)}.first\:border-t-0:first-child{border-top-width:0}.last\:border-0:last-child{border-width:0}.last\:border-r-0:last-child{border-right-width:0}.focus-within\:border-brand:focus-within{border-color:var(--brand)}.focus-within\:bg-brand-tint-2:focus-within{background-color:var(--brand-tint-2)}.hover\:-translate-y-0\.5:hover{--tw-translate-y:-.125rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-0:hover{border-width:0}.hover\:border-brand:hover{border-color:var(--brand)}.hover\:border-brand-tint:hover{border-color:var(--brand-tint)}.hover\:border-line-strong:hover{border-color:var(--line-strong)}.hover\:bg-accent-tint:hover{background-color:var(--accent-tint)}.hover\:bg-brand-tint:hover{background-color:var(--brand-tint)}.hover\:bg-brand-tint-2:hover{background-color:var(--brand-tint-2)}.hover\:bg-surface:hover{background-color:var(--surface)}.hover\:bg-surface-2:hover{background-color:var(--surface-2)}.hover\:bg-white\/15:hover{background-color:#ffffff26}.hover\:text-brand:hover{color:var(--brand)}.hover\:text-danger-ink:hover{color:var(--danger-ink)}.hover\:text-ink:hover{color:var(--ink)}.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}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow:hover{--tw-shadow:var(--shadow);--tw-shadow-colored:var(--shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow:var(--shadow-sm);--tw-shadow-colored:var(--shadow-sm);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.focus\:border-brand:focus{border-color:var(--brand)}.focus\:outline-none:focus,.focus-visible\:outline-none:focus-visible{outline-offset:2px;outline:2px solid #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-brand:focus-visible{--tw-ring-color:var(--brand)}.focus-visible\:ring-white\/80:focus-visible{--tw-ring-color:#fffc}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.group:hover .group-hover\:opacity-100{opacity:1}@media (prefers-reduced-motion:no-preference){@keyframes fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.motion-safe\:animate-fade{animation:.25s fade}@keyframes pulse{50%{opacity:.5}}.motion-safe\:animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes spin{to{transform:rotate(360deg)}}.motion-safe\:animate-spin{animation:1s linear infinite spin}.motion-safe\:transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}}.dark\:\!text-\[var\(--focus-on-dark\)\]:is(.dark *){color:var(--focus-on-dark)!important}.dark\:text-\[var\(--focus-on-dark\)\]:is(.dark *){color:var(--focus-on-dark)}@media (width>=640px){.sm\:inset-x-auto{left:auto;right:auto}.sm\:bottom-4{bottom:1rem}.sm\:right-4{right:1rem}.sm\:col-span-2{grid-column:span 2/span 2}.sm\:ml-auto{margin-left:auto}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:inline-flex{display:inline-flex}.sm\:w-56{width:14rem}.sm\:w-72{width:18rem}.sm\:w-\[380px\]{width:380px}.sm\:w-auto{width:auto}.sm\:max-w-sm{max-width:24rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=768px){.md\:absolute{position:absolute}.md\:inset-auto{inset:auto}.md\:right-0{right:0}.md\:top-\[calc\(100\%\+8px\)\]{top:calc(100% + 8px)}.md\:z-50{z-index:50}.md\:block{display:block}.md\:inline{display:inline}.md\:grid{display:grid}.md\:hidden{display:none}.md\:max-h-\[min\(640px\,calc\(100vh-96px\)\)\]{max-height:min(640px,100vh - 96px)}.md\:w-\[440px\]{width:440px}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-\[16rem_1fr\]{grid-template-columns:16rem 1fr}.md\:grid-cols-\[260px_1fr\]{grid-template-columns:260px 1fr}.md\:grid-cols-\[minmax\(0\,1fr\)_96px_96px_110px\]{grid-template-columns:minmax(0,1fr) 96px 96px 110px}.md\:justify-center{justify-content:center}.md\:rounded{border-radius:var(--radius)}.md\:border{border-width:1px}.md\:border-line{border-color:var(--line)}.md\:shadow-lg{--tw-shadow:var(--shadow-lg);--tw-shadow-colored:var(--shadow-lg);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}}@media (width>=1024px){.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=1280px){.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=1536px){.\32 xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@supports (height:100dvh){.app-grid{height:100dvh}}@media (width<=1023px){.scroll-area--fixed:not(.scroll-area--bleed){overflow:auto}.jps-shell,.sourcing-shell,.pricer-shell,.dashboard-shell,.settings-page{height:auto;max-height:none;overflow:visible}.settings-content{padding:0;overflow:visible}.settings-grid{border-width:0}.sourcing-shell{grid-template-rows:none}.table-wrap,.pricer-table-scroll{overscroll-behavior-x:contain;max-width:100%}.main-col,.jps-workspace,.jps-workspace-body{min-width:0}}@media (width<=767px){.sourcing-text-search-form{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;width:100%}}@media (width<=479px){.sourcing-text-search-form{grid-template-columns:1fr;width:100%}.sourcing-text-search-submit{justify-self:start}}@media (width<=1023px){table.data-grid.jps-data-grid>tbody>tr.main-row>td.col-item-no{z-index:1;border-right-color:var(--line-strong);position:sticky;left:0}table.data-grid.jps-data-grid>thead>tr>th.col-item-no{z-index:3;border-right-color:var(--line-strong);position:sticky;left:0}}.jps-board-lane{content-visibility:auto;contain-intrinsic-size:auto 16rem}.route-progress{z-index:130;pointer-events:none;height:2px;position:fixed;top:0;left:0;right:0}.route-progress__bar{transform-origin:0;opacity:1;width:100%;height:100%;transform:scaleX(.05)}.route-progress__bar[data-phase=running]{transition:transform 8s cubic-bezier(.1,.6,.2,1);transform:scaleX(.85)}.route-progress__bar[data-phase=completing]{opacity:0;transition:transform .15s ease-out,opacity .25s ease-out .1s;transform:scaleX(1)}@media (prefers-reduced-motion:reduce){.route-progress__bar,.route-progress__bar[data-phase=running],.route-progress__bar[data-phase=completing]{opacity:.6;transition:none;transform:scaleX(.6)}.route-progress__bar[data-phase=completing]{opacity:0}}.sourcing-result-tile{content-visibility:auto;contain-intrinsic-size:auto 17.5rem}.sourcing-result-tile-desc{min-height:2.9em}@media (width<=1023px){body:has(.sourcing-ref-panel) .sourcing-shell{padding-bottom:15rem}body:has(.sourcing-ref-restore) .sourcing-shell{padding-bottom:4rem}.sourcing-results-body{overscroll-behavior:contain;flex:none;height:min(80svh,48rem)}}.sourcing-head-ghost .sourcing-source-tab-count,.sourcing-head-ghost .sourcing-select,.sourcing-head-ghost .sourcing-action{color:#0000}.sourcing-head-ghost .sourcing-source-tab-count{background:color-mix(in srgb, var(--line-strong) 60%, transparent);border-color:#0000}.sourcing-search-image .sourcing-drop-zone{min-height:13rem}:root[data-density=compact]{--page-pad:12px}:root[data-density=compact] .btn{height:34px;padding:0 12px}:root[data-density=compact] .btn-sm{height:30px;padding:0 10px}:root[data-density=compact] .input{height:36px}:root[data-density=compact] .chip-btn{height:32px}
