/* Modern supplier workspace · 2026-09-07 */
:root{
  --navy-950:#071b2f;--navy-900:#0a2947;--navy-800:#0c3b65;
  --blue:#0b5fa5;--blue2:#083b67;--blue-soft:#eaf4fb;
  --yellow:#ffd51f;--yellow-soft:#fff8cf;--ink:#102a43;--muted:#61758a;
  --line:#dbe5ed;--line-strong:#c7d5e0;--bg:#f3f6f9;--card:#fff;
  --success:#178451;--danger:#b42318;
  --shadow-sm:0 1px 2px rgba(7,27,47,.04),0 8px 24px rgba(7,27,47,.05);
  --shadow-md:0 16px 40px rgba(7,27,47,.1)
}
html{background:var(--bg);scroll-behavior:smooth}
body{min-width:320px;overflow-x:hidden;background:var(--bg);font-family:Inter,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;color:var(--ink);line-height:1.55}
button,input,select,textarea{font-family:inherit}
button,a,input,select,textarea{transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(255,213,31,.7);outline-offset:2px}
button{border-radius:9px;background:var(--blue);padding:11px 17px;box-shadow:none}
button:hover:not(:disabled){background:#084f8a}
.ghost{border-color:var(--line-strong);background:#fff;color:var(--blue2)}
.ghost:hover:not(:disabled){border-color:#9bb5c9;background:var(--blue-soft);color:var(--navy-900)}

.supplier-auth-boot{min-height:100svh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,var(--navy-950),var(--navy-800) 62%,#0e6aa8)}
.supplier-auth-boot.hidden{display:none}
.supplier-auth-boot-card{display:flex;align-items:center;gap:16px;width:min(430px,100%);padding:24px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:var(--shadow-md)}
.supplier-auth-boot-card img{width:72px;height:48px;object-fit:contain}.supplier-auth-boot-card>span{width:24px;height:24px;flex:0 0 24px;border:3px solid #d8e6ef;border-top-color:var(--blue);border-radius:50%;animation:supplier-auth-spin .8s linear infinite}.supplier-auth-boot-card strong{display:block;color:var(--ink)}.supplier-auth-boot-card p{margin:5px 0 0;color:var(--muted);font-size:13px}@keyframes supplier-auth-spin{to{transform:rotate(360deg)}}

.login-shell{position:relative;isolation:isolate;min-height:100svh;padding:40px 24px;background:linear-gradient(135deg,var(--navy-950),var(--navy-800) 62%,#0e6aa8)}
.login-shell::before,.login-shell::after{content:"";position:absolute;z-index:-1;border-radius:999px;filter:blur(1px);pointer-events:none}
.login-shell::before{width:430px;height:430px;right:-130px;top:-180px;background:radial-gradient(circle,rgba(255,213,31,.32),rgba(255,213,31,0) 70%)}
.login-shell::after{width:560px;height:560px;left:-260px;bottom:-300px;background:radial-gradient(circle,rgba(83,178,231,.26),rgba(83,178,231,0) 70%)}
.login-card{width:min(430px,100%);padding:42px 40px 34px;border:1px solid rgba(255,255,255,.7);border-top:0;border-radius:20px;box-shadow:0 30px 90px rgba(0,0,0,.3)}
.brand-logo{width:188px;margin-bottom:30px}
.login-card h1{font-size:1.75rem;letter-spacing:-.02em}
.login-card p{margin:8px 0 28px;font-size:.94rem}
.login-card label,dialog label{gap:7px;margin:16px 0;color:#243f57;font-size:.9rem}
.login-card input,dialog input{min-height:46px;border-color:var(--line-strong);border-radius:9px;padding:11px 13px}
.login-card button{min-height:48px;margin-top:14px;background:var(--navy-900)}
.login-card button:hover{background:var(--navy-800)}

.portal-layout{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100svh;background:var(--bg)}
.portal-sidebar{position:sticky;top:0;z-index:30;display:flex;flex-direction:column;height:100svh;padding:26px 18px 20px;background:linear-gradient(180deg,var(--navy-950),var(--navy-900));color:#fff;box-shadow:8px 0 32px rgba(7,27,47,.08)}
.portal-sidebar .brand{gap:12px;padding:0 8px 26px;border-bottom:1px solid rgba(255,255,255,.11)}
.portal-sidebar .brand img{display:block;width:72px;height:auto;max-height:48px;object-fit:contain;border-radius:7px;background:transparent;filter:none}
.portal-sidebar .brand div{min-width:0}.portal-sidebar .brand strong{font-size:1rem;line-height:1.3;white-space:nowrap}
.portal-sidebar .brand span{margin-top:4px;color:#a8bfd2;font-size:.75rem;letter-spacing:.06em}
.portal-sidebar nav{display:grid;gap:5px;margin:22px 0 18px;padding:0;background:transparent;box-shadow:none;overflow:visible}
.portal-sidebar .nav{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:45px;padding:10px 12px;border:1px solid transparent;border-radius:10px;background:transparent;color:#c5d6e4;font-size:.9rem;font-weight:650;text-align:left}
.portal-nav-icon{flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:rgba(255,255,255,.08);color:#dce9f3}.portal-nav-icon svg{width:17px;height:17px;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.portal-sidebar .nav:hover{background:rgba(255,255,255,.08);color:#fff}
.portal-sidebar .nav.active{border-color:rgba(255,255,255,.12);background:#fff;color:var(--navy-900);box-shadow:0 9px 22px rgba(0,0,0,.18)}
.portal-sidebar .nav.active .portal-nav-icon{background:var(--yellow);color:var(--navy-950);box-shadow:0 4px 10px rgba(255,213,31,.24)}
.portal-sidebar .portal-erp-entry{margin-top:6px;border-color:rgba(255,255,255,.11);background:rgba(255,255,255,.035);color:#aebfcd;text-decoration:none}.portal-sidebar .portal-erp-entry:hover{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff}.portal-erp-entry b{margin-left:auto;color:#8fa8bb;font-size:.8rem;font-weight:700}
.sidebar-note{margin-top:auto;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.06)}
.sidebar-note span{color:var(--yellow);font-size:.75rem;font-weight:800;letter-spacing:.08em}
.sidebar-note p{margin:6px 0 0;color:#c2d3df;font-size:.82rem;line-height:1.7}

.portal-workspace{min-width:0}.portal-topbar{position:sticky;top:0;z-index:25;height:72px;padding:0 32px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.94);box-shadow:0 6px 20px rgba(7,27,47,.035);backdrop-filter:blur(14px)}
.topbar-title{display:grid;gap:1px}.topbar-title span{color:var(--muted);font-size:.75rem}.topbar-title strong{font-size:1.05rem}
.topbar-actions{display:flex;align-items:center;gap:12px}.supplier-chip{display:flex;align-items:center;gap:8px;max-width:440px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#f8fafc;color:#38526a;font-size:.82rem;white-space:nowrap;overflow:hidden}
.supplier-chip span{overflow:hidden;text-overflow:ellipsis}.supplier-chip i,.status-dot i{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:#22a866;box-shadow:0 0 0 4px rgba(34,168,102,.12)}
.portal-topbar .ghost{min-height:38px;padding:8px 13px;font-size:.82rem}

.content{width:100%;max-width:1540px;margin:0 auto;padding:32px clamp(22px,3vw,46px) 64px}
.welcome{position:relative;overflow:hidden;align-items:center;margin-bottom:28px;padding:24px 26px;border:1px solid #d3e2ec;border-radius:16px;background:linear-gradient(115deg,#fff 0%,#f6fbff 72%,#edf7fd 100%);box-shadow:var(--shadow-sm)}
.welcome::after{content:"";position:absolute;right:-35px;bottom:-75px;width:190px;height:190px;border:34px solid rgba(11,95,165,.055);border-radius:50%}
.welcome h2,.panel-title h2{margin:5px 0 0;font-size:clamp(1.45rem,2vw,1.85rem);letter-spacing:-.025em}
.welcome p{margin:7px 0 0;color:var(--muted);font-size:.9rem}.eyebrow{color:var(--blue);font-size:.75rem;letter-spacing:.1em}
.status-dot{position:relative;z-index:1;display:inline-flex;align-items:center;gap:9px;border:1px solid #cce8d8;background:#f1fbf5;color:#176b43;font-weight:700}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.section-heading>span{color:var(--muted);font-size:.78rem}
.workspace-section-title{margin:4px 0 0;font-size:1.18rem}

.task-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.task-grid.row{display:flex;gap:0}.task-grid .task-col{display:flex;min-width:0}.task-grid .task-col:has(>.task-card.hidden){display:none}.task-grid .task-card{width:100%;height:100%}
.task-card{position:relative;min-height:205px;display:flex;flex-direction:column;align-items:flex-start;gap:15px;overflow:hidden;padding:20px;border:1px solid var(--line);border-top:1px solid var(--line);border-radius:14px;background:#fff;text-align:left;box-shadow:var(--shadow-sm)}
.task-card::after{content:"";position:absolute;right:-26px;top:-34px;width:100px;height:100px;border-radius:50%;background:var(--task-soft,#eef6fb)}
.task-card:hover:not(:disabled){border-color:#a9c1d1;background:#fff;color:var(--ink);transform:translateY(-3px);box-shadow:var(--shadow-md)}
.task-card .task-icon{position:relative;z-index:1;width:44px;height:44px;border-radius:11px;background:var(--task-soft,#eef6fb);color:var(--task-color,var(--blue));font-size:1.08rem}
.task-card>span:nth-child(2){gap:5px}.task-card small{color:var(--task-color,var(--blue));font-size:.75rem;font-weight:800;letter-spacing:.05em}.task-card strong{font-size:1.05rem;line-height:1.35}.task-card em{min-height:40px;font-size:.78rem;line-height:1.55}
.task-card b{display:flex;align-items:center;gap:7px;margin-top:auto;color:var(--task-color,var(--blue));font-size:.82rem}.task-card b i{font-size:1rem;font-style:normal}
.task-card.inventory{--task-color:#087c70;--task-soft:#e8f7f3}.task-card.finance{--task-color:#977000;--task-soft:#fff7d1}.task-card.fulfillment{--task-color:#0b5fa5;--task-soft:#eaf4fb}.task-card.rewards{--task-color:#b35b1e;--task-soft:#fff0e5}
.workspace-hint{margin:12px 2px 28px;font-size:.82rem}

.prelearn-section{margin:0;padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow-sm)}
.prelearn-heading{align-items:center;margin-bottom:15px}.prelearn-heading h3{font-size:1.12rem}.prelearn-heading p{margin:5px 0 0;color:var(--muted);font-size:.82rem}.prelearn-heading .ghost{font-size:.82rem}
.prelearn-grid{gap:12px}.prelearn-card{min-height:94px;padding:16px;border-radius:12px;box-shadow:none}.prelearn-card:hover:not(.is-pending){border-color:#9cbdd1;background:#f9fcfe;transform:translateY(-1px)}
.prelearn-number{width:38px;height:38px;border-radius:10px;font-size:.84rem}.prelearn-card strong{font-size:.93rem}.prelearn-card small,.prelearn-card b{font-size:.78rem}

.panel{padding:26px;border-color:var(--line);border-radius:16px;box-shadow:var(--shadow-sm)}
.panel-title{align-items:center;margin-bottom:20px;padding-bottom:18px}.panel-title .pill{flex:0 0 auto}.pill{border:1px solid #cce8d8;background:#f1fbf5;color:#176b43;font-weight:700}
.hint{color:var(--muted);font-size:.88rem;line-height:1.75}.alert{border:1px solid #ffd0cc;background:#fff5f4}
.form-card{border-color:var(--line);border-radius:14px;background:#f9fbfc;box-shadow:none}.form-card h3{margin:0 0 10px;font-size:1.05rem}.form-card label{color:#304b63;font-size:.86rem}
.supplier-profile-panel{max-width:980px}
.supplier-profile-panel>.hint{margin:-4px 0 22px;line-height:1.7}
.supplier-profile-identity{display:grid;grid-template-columns:minmax(130px,1fr) minmax(220px,2fr) minmax(120px,1fr) minmax(130px,1fr);gap:12px;margin-bottom:20px}
.supplier-profile-identity>div{min-width:0;padding:17px 19px;border:1px solid var(--line);border-radius:12px;background:#fff}
.supplier-profile-identity small{display:block;margin-bottom:8px;color:var(--muted);font-size:.8rem}
.supplier-profile-identity strong{display:block;overflow-wrap:anywhere;color:var(--ink);font-size:1rem}
.supplier-profile-onboarding{margin:0 0 20px;padding:20px 22px;border:1px solid #cfe0ed;border-radius:13px;background:linear-gradient(115deg,#f2f8fd,#fff)}
.supplier-profile-onboarding-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.supplier-profile-onboarding-head small{color:var(--blue2);font-size:.78rem;font-weight:700}
.supplier-profile-onboarding-head h3{margin:4px 0 0;color:var(--ink);font-size:1.06rem}
.supplier-profile-onboarding-head>span{padding:5px 10px;border-radius:999px;background:#e8f1f8;color:#285b7e;font-size:.78rem;font-weight:700;white-space:nowrap}
.supplier-profile-onboarding p{margin:10px 0 0;color:var(--muted);font-size:.88rem;line-height:1.65}
.supplier-profile-onboarding button{margin-top:15px;min-height:40px;padding:0 15px}
.supplier-profile-form{padding:22px}
.supplier-profile-form-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.supplier-profile-form-heading h3{margin:0 0 4px;font-size:1.08rem}.supplier-profile-form-heading p{margin:0;color:var(--muted);font-size:.86rem}
.supplier-profile-form-heading>span{flex:0 0 auto;color:var(--blue2);font-size:.8rem;font-weight:700}
.supplier-profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
.supplier-profile-fields.row,.finance-declaration-grid.row{display:flex;gap:0}
.supplier-profile-fields.row>label,.finance-declaration-grid.row>label{min-width:0}
.supplier-profile-fields label{display:grid;gap:7px;margin:0;font-weight:600}
.supplier-profile-fields input{width:100%;min-width:0;min-height:44px;border:1px solid var(--line-strong);border-radius:9px;background:#fff;padding:10px 12px;font-size:.92rem;font-weight:400}
.supplier-profile-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:22px}
.supplier-profile-actions small{color:var(--muted);font-size:.8rem}.supplier-profile-actions>div{display:flex;gap:10px}.supplier-profile-actions button{min-width:120px}
.supplier-profile-form .message{margin-top:10px}
.form-card>button[type="submit"]{display:block;width:auto;min-width:190px;margin:20px 0 0 auto}.form-grid{gap:2px 18px}
input,select,textarea{min-height:42px;border-color:var(--line-strong);border-radius:8px;background:#fff;font-size:.88rem}
input:hover,select:hover,textarea:hover{border-color:#9fb6c8}input:focus,select:focus,textarea:focus{outline:3px solid rgba(255,213,31,.35);border-color:var(--blue);box-shadow:0 0 0 1px var(--blue)}
.finance-declaration{padding-bottom:18px;border-bottom:1px solid var(--line)}.finance-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:10px}.finance-form-heading span{display:block;margin-bottom:3px;color:var(--blue);font-size:.72rem;font-weight:800;letter-spacing:.06em}.finance-form-heading h3{margin:0}.finance-form-heading p{max-width:330px;margin:0;color:var(--muted);font-size:.78rem;line-height:1.6;text-align:right}.finance-confirmed-note{display:flex;align-items:center;gap:11px;padding:14px 16px;border:1px solid #cce8d8;border-radius:11px;background:#f1fbf5}.finance-confirmed-note>span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#178451;color:#fff;font-weight:900}.finance-confirmed-note>div{display:grid;gap:2px}.finance-confirmed-note strong{color:#126b41;font-size:.9rem}.finance-confirmed-note small{color:#537568;font-size:.76rem}.finance-evidence{display:flex!important;align-items:center;justify-content:space-between;gap:18px;margin-top:16px!important;padding:14px 16px;border:1px dashed #d89b45;border-radius:11px;background:#fff9ed}.finance-evidence.hidden{display:none!important}.finance-evidence>span{display:grid;gap:3px}.finance-evidence strong{color:#8a5b16;font-size:.88rem}.finance-evidence small{color:#806c4e;font-size:.74rem;font-weight:500;line-height:1.5}.finance-evidence input{flex:0 1 360px;min-width:220px;margin:0;background:#fff}

.balance-card{gap:18px;padding:20px;border-radius:13px;background:#fff}.balance-card strong{display:block;margin-top:4px;font-size:1.35rem}.balance-question{display:block;margin-bottom:10px;color:var(--navy-900);font-size:.92rem;font-weight:800}.balance-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.balance-decision{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-width:0;min-height:66px;margin:0;padding:10px 12px;border:1px solid var(--line-strong);border-radius:11px;background:#fff;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}.balance-decision:hover{border-color:#91acbf;background:#f9fbfd;transform:translateY(-1px)}.balance-decision input{position:absolute;width:1px;height:1px;min-height:0;margin:0;opacity:0;pointer-events:none}.balance-decision:focus-within{outline:3px solid rgba(255,213,31,.55);outline-offset:2px}.balance-decision-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid #c7d5e0;border-radius:9px;background:#f1f5f8;color:#6d8091;font-size:.95rem;font-weight:900}.balance-decision-copy{min-width:0;display:grid;gap:2px}.balance-decision .balance-decision-copy strong{margin:0;color:var(--ink);font-size:.94rem;line-height:1.3}.balance-decision-copy small{overflow:hidden;color:var(--muted);font-size:.72rem;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.balance-decision.is-match:has(input:checked){border-color:#37a36c;background:#f0faf4;box-shadow:0 0 0 2px rgba(23,132,81,.1)}.balance-decision.is-match:has(input:checked) .balance-decision-icon{border-color:var(--success);background:var(--success);color:#fff}.balance-decision.is-match:has(input:checked) .balance-decision-copy strong{color:#126b41}.balance-decision.is-different:has(input:checked){border-color:#e18b80;background:#fff5f3;box-shadow:0 0 0 2px rgba(180,35,24,.08)}.balance-decision.is-different:has(input:checked) .balance-decision-icon{border-color:var(--danger);background:var(--danger);color:#fff}.balance-decision.is-different:has(input:checked) .balance-decision-copy strong{color:var(--danger)}
.table-wrap{position:relative;max-height:calc(100svh - 270px);border-color:var(--line);border-radius:12px;background:#fff;scrollbar-color:#aebfcd #edf2f5;scrollbar-width:thin}
table{font-size:.84rem}th{position:sticky;top:0;z-index:4;padding:12px 10px;background:var(--navy-900);font-size:.78rem;font-weight:700;letter-spacing:.02em}td{padding:10px;border-bottom-color:#e5ebf0;background:#fff}
tbody tr:nth-child(even) td{background:#fafcfd}tbody tr:hover td{background:#f1f7fb}td input,td select{min-width:112px;padding:8px;font-size:.82rem}.sku-cell{min-width:260px}.sku-cell strong{color:var(--navy-900)}
.fulfillment-state-summary{border:1px solid #cfe3f2;background:#f0f7fc;color:var(--blue2);font-size:.84rem}
#fulfillmentPanel .actions{position:sticky;bottom:14px;z-index:12;flex-wrap:wrap;padding:12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 12px 35px rgba(7,27,47,.14);backdrop-filter:blur(12px)}
#fulfillmentPanel th:nth-child(1),#fulfillmentPanel td:nth-child(1){position:sticky;left:0;z-index:6;width:64px;min-width:64px}
#fulfillmentPanel th:nth-child(2),#fulfillmentPanel td:nth-child(2){position:sticky;left:64px;z-index:6;width:270px;min-width:270px}
#fulfillmentPanel th:nth-child(3),#fulfillmentPanel td:nth-child(3){position:sticky;left:334px;z-index:6;width:220px;min-width:220px;box-shadow:8px 0 14px rgba(7,27,47,.06)}
#fulfillmentPanel th:nth-child(-n+3){z-index:8;background:var(--navy-900)}
.warehouse-picker{width:210px;min-width:210px}.warehouse-picker-trigger{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:var(--ink);font-weight:500;text-align:left}
.warehouse-picker-trigger::after{content:"⌄";grid-column:2;grid-row:1 / span 2;color:var(--muted);font-size:1rem;line-height:1}.warehouse-picker-trigger:hover:not(:disabled){border-color:#8eafc5;background:#f8fbfd;color:var(--ink)}
.warehouse-picker-trigger[aria-expanded="true"]{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,165,.12)}.warehouse-picker-trigger>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.warehouse-picker-trigger>small{grid-column:1;color:var(--muted);font-size:.75rem;line-height:1.2}
.warehouse-picker-popover{position:fixed;z-index:1000;overflow:hidden;padding:8px;border:1px solid var(--line-strong);border-radius:12px;background:#fff;box-shadow:0 20px 55px rgba(7,27,47,.22)}
.warehouse-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 8px 10px;border-bottom:1px solid var(--line)}.warehouse-picker-heading strong{font-size:.88rem}.warehouse-picker-heading span{color:var(--muted);font-size:.75rem}
.warehouse-picker-options{display:grid;gap:3px;max-height:240px;margin:6px 0;overflow-y:auto}.warehouse-picker-options label{display:flex;align-items:center;gap:10px;margin:0;padding:9px 8px;border-radius:7px;color:var(--ink);font-size:.84rem;font-weight:500;cursor:pointer}.warehouse-picker-options label:hover{background:#f1f7fb}.warehouse-picker-options label:has(input:checked){background:var(--blue-soft);color:var(--blue)}
.warehouse-picker-options input{width:17px;height:17px;min-height:0;flex:0 0 auto;margin:0;accent-color:var(--blue)}.warehouse-picker-options p{margin:12px 8px;color:var(--muted);font-size:.82rem}.warehouse-picker-done{width:100%;min-height:38px;padding:8px 12px;font-size:.82rem}
#fulfillmentRows tr[data-id]>td{height:96px;vertical-align:middle}

.learning-tabs{gap:3px;padding:4px;border:1px solid var(--line);border-radius:11px;background:#f2f6f8}.learning-tab{margin:0;border:0;border-radius:8px;background:transparent}.learning-tab.active{border:0;background:#fff;color:var(--blue);box-shadow:0 3px 10px rgba(7,27,47,.08)}
.resource-link{min-height:40px;border-radius:8px;font-size:.82rem}.guide-image-frame{padding:10px;border-radius:12px;background:#f1f5f8}.brand-manual-frame{border-radius:12px}.learning-empty{border:1px dashed var(--line-strong);border-radius:14px;background:#fafcfd}
.delivery-hero{display:grid;grid-template-columns:minmax(0,1fr) 290px;align-items:stretch;gap:18px;margin-bottom:22px;padding:22px;border:1px solid #d4e2ec;border-radius:16px;background:linear-gradient(125deg,#f4f9fd 0%,#fff 58%,#fff9d7 100%);box-shadow:var(--shadow-sm)}
.delivery-intro{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;padding:8px 6px}.delivery-label{display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--blue-soft);color:var(--blue);font-size:.72rem;font-weight:800;letter-spacing:.08em}.delivery-intro h4{margin:12px 0 7px;color:var(--navy-900);font-size:clamp(1.45rem,2.3vw,2rem);letter-spacing:-.025em}.delivery-intro>p{max-width:680px;margin:0;color:var(--muted);font-size:.9rem;line-height:1.8}.delivery-purpose{display:flex;flex-wrap:wrap;gap:10px;margin-top:19px}.delivery-purpose>span{display:grid;gap:2px;min-width:150px;padding:11px 13px;border:1px solid #cbdde9;border-radius:10px;background:#fff}.delivery-purpose b{color:var(--blue2);font-size:.86rem}.delivery-purpose small{color:var(--muted);font-size:.73rem}
.delivery-code-card{position:relative;display:grid;justify-items:center;align-content:center;margin:0;padding:16px;border:2px solid #f3ca00;border-radius:15px;background:#fff;box-shadow:0 14px 34px rgba(7,27,47,.11)}.delivery-code-card::before{position:absolute;inset:7px;border:1px solid #ffe56a;border-radius:10px;pointer-events:none;content:""}.delivery-code-card>span{position:relative;z-index:1;margin-bottom:8px;padding:5px 10px;border-radius:999px;background:var(--yellow);color:var(--navy-950);font-size:.72rem;font-weight:900}.delivery-code-card img{position:relative;z-index:1;display:block;width:min(220px,100%);aspect-ratio:1;object-fit:contain;background:#fff}.delivery-code-card figcaption{position:relative;z-index:1;display:grid;justify-items:center;gap:1px;margin-top:7px}.delivery-code-card figcaption strong{color:var(--navy-900);font-size:.92rem}.delivery-code-card figcaption small{color:var(--muted);font-size:.72rem}
.delivery-deck{padding:20px;border:1px solid var(--line);border-radius:16px;background:#f7f9fb}.delivery-deck-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.delivery-deck-heading h4{margin:4px 0 0;color:var(--navy-900);font-size:1.16rem}.delivery-slide-status{display:grid;justify-items:end;gap:1px}.delivery-slide-status strong{color:var(--blue);font-size:.86rem}.delivery-slide-status span{color:var(--muted);font-size:.74rem}.delivery-slide-stage{display:grid;place-items:center;overflow:hidden;aspect-ratio:16/9;border:1px solid #c5d3df;border-radius:12px;background:#dfe7ed;box-shadow:0 10px 28px rgba(7,27,47,.11)}.delivery-slide-stage img{display:block;width:100%;height:100%;object-fit:contain;background:#fff}.delivery-slide-controls{display:grid;grid-template-columns:auto minmax(120px,1fr) auto auto;align-items:center;gap:10px;margin:14px 0}.delivery-slide-controls button{min-width:86px}.delivery-slide-progress{height:7px;overflow:hidden;border-radius:999px;background:#dce5ec}.delivery-slide-progress i{display:block;width:7.14%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),#2e86c8);transition:width .2s ease}.delivery-slide-controls .resource-link{min-height:40px;white-space:nowrap}
.delivery-chapters{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:0;padding:0;border:0;background:transparent;box-shadow:none;overflow:visible}.delivery-chapters button{min-width:0;min-height:38px;padding:7px 6px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#496176;font-size:.7rem;font-weight:700;white-space:nowrap;box-shadow:none}.delivery-chapters button:hover{border-color:#96b4c9;background:#f1f7fb;color:var(--blue)}.delivery-chapters button.active{border-color:var(--blue);background:var(--blue);color:#fff}.delivery-chapters button[aria-current="page"]{box-shadow:0 0 0 3px rgba(11,95,165,.12)}
.recon-guide{--recon-blue:#1559d6;--recon-blue-soft:#edf4ff;--recon-yellow:#fff8dc;--recon-red:#d92d20;color:#17324d}
.recon-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;height:auto;min-height:132px;margin-bottom:16px;padding:25px 28px;border:0;border-radius:15px;background:linear-gradient(125deg,#123f8b,#1b65de);color:#fff;box-shadow:0 12px 30px rgba(21,89,214,.16)}
.recon-hero span{display:inline-flex;margin-bottom:9px;padding:5px 10px;border-radius:999px;background:var(--yellow);color:#17324d;font-size:.72rem;font-weight:850}.recon-hero h4{margin:0;font-size:clamp(1.35rem,2.2vw,1.9rem);letter-spacing:-.02em}.recon-hero p{margin:9px 0 0;color:#dce9ff;font-size:.88rem}.recon-hero>b{flex:0 0 auto;padding:7px 10px;border:1px solid rgba(255,255,255,.35);border-radius:8px;background:rgba(255,255,255,.12);font-size:.72rem;letter-spacing:.08em}
.recon-quicknav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0 0 18px;padding:8px;border:1px solid var(--line);border-radius:13px;background:#f5f8fb;box-shadow:none;overflow:visible}
.recon-quicknav a{display:flex;align-items:center;gap:8px;min-width:0;padding:9px;border-radius:8px;color:#38526a;text-decoration:none;font-size:.77rem;font-weight:700}.recon-quicknav a:hover{background:#fff;color:var(--recon-blue);box-shadow:0 2px 9px rgba(7,27,47,.07)}.recon-quicknav b{display:grid;place-items:center;flex:0 0 auto;width:25px;height:25px;border-radius:7px;background:#dfeafb;color:var(--recon-blue);font-size:.68rem}.recon-quicknav span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.recon-module{scroll-margin-top:92px;margin:0 0 16px;padding:21px;border:1px solid #d8e3ec;border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(7,27,47,.045)}
.recon-module-title{display:flex;align-items:center;gap:11px;margin-bottom:15px}.recon-module-title>span{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border-radius:10px;background:var(--recon-blue);color:#fff;font-size:.83rem;font-weight:850;box-shadow:0 5px 12px rgba(21,89,214,.2)}.recon-module-title small{display:block;margin-bottom:2px;color:#6c8193;font-size:.68rem;font-weight:700}.recon-module-title h4{margin:0;color:#173f87;font-size:1.06rem;line-height:1.35}
.recon-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.recon-flow article{position:relative;display:grid;justify-items:center;align-content:start;min-height:140px;padding:16px 12px;border:1px solid #d3dfec;border-radius:11px;background:#fbfdff;text-align:center}.recon-flow article:not(:last-child)::after{content:"›";position:absolute;right:-8px;top:50%;z-index:2;display:grid;place-items:center;width:15px;height:24px;background:#fff;color:var(--recon-blue);font-size:1.25rem;font-weight:900;transform:translateY(-50%)}.recon-flow i{display:grid;place-items:center;width:30px;height:30px;margin-bottom:10px;border-radius:50%;background:var(--recon-blue);color:#fff;font-size:.75rem;font-style:normal;font-weight:850}.recon-flow strong{font-size:.88rem}.recon-flow p{margin:7px 0 0;color:#62788b;font-size:.76rem;line-height:1.55}
.recon-callout{margin:12px 0 0;padding:12px 14px;border:1px solid;border-radius:9px;font-size:.82rem;line-height:1.7}.recon-callout strong{margin-right:7px}.recon-callout.info{border-color:#bfd6fb;background:var(--recon-blue-soft);color:#244b87}.recon-callout.warning{border-color:#f1d56a;background:#fffbed;color:#8a5700}.recon-callout.danger{border-color:#ffc8c3;background:#fff5f4;color:var(--recon-red)}
.recon-rule-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.recon-rule-grid article{display:flex;gap:10px;grid-column:span 2;padding:15px;border:1px solid #d8e3ec;border-radius:11px;background:#fbfdff}.recon-rule-grid article:nth-child(n+4){grid-column:span 3}.recon-rule-grid article>b{display:grid;place-items:center;flex:0 0 auto;width:25px;height:25px;border-radius:6px;background:var(--recon-blue);color:#fff;font-size:.68rem}.recon-rule-grid strong{display:block;color:#1c5dcc;font-size:.86rem}.recon-rule-grid p{margin:6px 0 0;font-size:.78rem;line-height:1.65}.recon-rule-grid article:nth-child(2) p,.recon-rule-grid article:nth-child(3) p,.recon-rule-grid article:nth-child(5) p{color:#4f6578}.recon-rule-grid article:nth-child(2) p::first-line,.recon-rule-grid article:nth-child(3) p::first-line,.recon-rule-grid article:nth-child(5) p::first-line{color:#17324d}
.recon-field-grid,.recon-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.recon-field-grid article,.recon-card-grid article{padding:15px;border:1px solid #d8e3ec;border-radius:11px;background:#fbfdff}.recon-field-grid strong,.recon-card-grid strong{display:block;color:#1c5dcc;font-size:.88rem}.recon-field-grid p,.recon-card-grid p{margin:7px 0 0;font-size:.79rem;line-height:1.6}.recon-card-grid small{display:block;margin-top:9px;padding:8px;border-radius:7px;background:#f1f5f8;color:#65798a;font-size:.72rem;line-height:1.55}.recon-card-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.recon-card-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.recon-card-grid .danger-card strong,.recon-card-grid .danger-card p{color:var(--recon-red)}
.recon-equality{display:flex;align-items:stretch;justify-content:center;gap:9px;margin:12px 0;padding:18px;border:1px solid #d8e3ec;border-radius:11px;background:#fbfdff}.recon-equality span{display:grid;place-items:center;min-width:0;padding:10px 12px;border:2px solid #2a6df0;border-radius:9px;color:#173f87;font-size:.78rem;font-weight:850;text-align:center}.recon-equality i{display:grid;place-items:center;color:var(--recon-red);font-size:1rem;font-style:normal;font-weight:900}
.recon-standard-list{display:grid;gap:9px}.recon-standard-list article{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:start;gap:10px;padding:13px 14px;border:1px solid #bfd6fb;border-radius:9px;background:var(--recon-blue-soft)}.recon-standard-list b{display:grid;place-items:center;width:27px;height:27px;border-radius:7px;background:#fff;color:var(--recon-blue);font-size:.7rem}.recon-standard-list p{margin:2px 0 0;color:#244b87;font-size:.81rem;line-height:1.65}.recon-standard-list em{color:var(--recon-red);font-style:normal;font-weight:800}
.recon-mail-flow{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr);align-items:center;margin-top:10px;padding:14px;border:1px solid #d8e3ec;border-radius:11px;background:#fbfdff}.recon-mail-flow>span{display:grid;justify-items:center;gap:3px;text-align:center;font-size:.82rem;font-weight:800}.recon-mail-flow b{display:grid;place-items:center;width:27px;height:27px;margin-bottom:3px;border-radius:50%;background:var(--recon-blue);color:#fff;font-size:.7rem}.recon-mail-flow small{color:#718496;font-size:.7rem;font-weight:500}.recon-mail-flow>i{color:var(--recon-blue);font-style:normal;font-weight:900;text-align:center}.recon-card-grid.numbered article{min-height:132px}
.recon-check-note{margin:-5px 0 12px;color:var(--muted);font-size:.76rem}.recon-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.recon-checklist label{display:flex;align-items:flex-start;gap:10px;margin:0;padding:11px 12px;border:1px solid #d8e3ec;border-radius:9px;background:#fbfdff;color:#304b63;font-size:.79rem;font-weight:600;line-height:1.5;cursor:pointer}.recon-checklist label:hover{border-color:#9bbce9;background:#f5f9ff}.recon-checklist label:has(input:checked){border-color:#72b88e;background:#f0faf4;color:#176b43}.recon-checklist input{flex:0 0 auto;width:18px;height:18px;min-height:0;margin:1px 0 0;accent-color:#16814e}.recon-finish{margin:12px 0 0;padding:13px;border:1px solid #f1d56a;border-radius:9px;background:#fffbed;color:#8a5700;font-size:.84rem;font-weight:800;text-align:center}
.recon-original{margin-top:18px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.recon-original summary{padding:14px 16px;color:var(--blue2);font-size:.84rem;font-weight:800;cursor:pointer}.recon-original>p{margin:0;padding:0 16px 12px;color:var(--muted);font-size:.78rem}.recon-original .guide-image-frame{max-width:820px;margin:0 auto 16px}
.inventory-filters{padding:12px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.inventory-filters button{min-width:92px}.inventory-pagination .secondary{border:1px solid var(--line-strong);background:#fff;color:var(--blue2)}
#inventoryPanel .table-wrap{max-height:none;overflow:visible}#inventoryPanel table{width:100%;min-width:0;table-layout:fixed}#inventoryPanel th,#inventoryPanel td{padding:9px 11px}#inventoryPanel th:nth-child(1){width:13%}#inventoryPanel th:nth-child(2){width:25%}#inventoryPanel th:nth-child(3){width:25%}#inventoryPanel th:nth-child(4){width:12%}#inventoryPanel th:nth-child(5){width:7%}#inventoryPanel th:nth-child(6){width:18%}#inventoryPanel #inventoryRows td{min-width:0;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}#inventoryPanel #inventoryRows .inventory-product{white-space:normal;overflow-wrap:anywhere;line-height:1.4}#inventoryPanel .inventory-warehouse{min-width:0;display:grid;gap:1px;line-height:1.3}#inventoryPanel .inventory-warehouse>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#inventoryPanel .inventory-warehouse small{color:var(--muted);font-size:.72rem}#inventoryPanel .inventory-time time{display:grid;gap:1px;font-variant-numeric:tabular-nums;line-height:1.3}#inventoryPanel .inventory-time small{color:var(--muted);font-size:.72rem}
.portal-reward-list{gap:14px}.portal-reward-card{border-radius:13px;box-shadow:none}.portal-reward-head>span{border:1px solid #f2d77e}.portal-reward-card dl>div{grid-template-columns:120px 1fr}.portal-reward-action{background:#f8fafc}.message{font-size:.84rem}
dialog{border:1px solid rgba(255,255,255,.7);border-radius:16px;box-shadow:0 30px 90px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(7,27,47,.72);backdrop-filter:blur(3px)}

@media(max-width:1180px){
  .portal-layout{grid-template-columns:220px minmax(0,1fr)}.portal-sidebar{padding-inline:14px}.portal-sidebar .brand{padding-inline:5px}.portal-sidebar .brand img{width:58px}.portal-sidebar .brand strong{font-size:.9rem}
  .task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.task-card{min-height:185px}
}
@media(max-width:820px){
  .portal-layout{display:block}.portal-sidebar{position:sticky;height:auto;padding:10px 12px 8px;box-shadow:0 7px 24px rgba(7,27,47,.16)}
  .portal-sidebar .brand{padding:0 2px 9px;border:0}.portal-sidebar .brand img{width:60px}.portal-sidebar .brand strong{font-size:.86rem}.portal-sidebar .brand span{display:none}
  .portal-sidebar nav{display:flex;gap:6px;margin:0;overflow-x:auto;scrollbar-width:none}.portal-sidebar nav::-webkit-scrollbar{display:none}.portal-sidebar .nav{flex:0 0 auto;width:auto;min-height:38px;padding:7px 11px;font-size:.8rem}.portal-sidebar .portal-nav-icon{display:none}.sidebar-note{display:none}
  .portal-topbar{top:94px;height:62px;padding:0 14px}.topbar-title span{display:none}.topbar-title strong{font-size:.95rem}.supplier-chip{max-width:44vw;padding:7px 10px}.portal-topbar .ghost{padding:7px 10px}
  .content{padding:20px 14px 48px}.welcome{align-items:flex-start;flex-direction:column;padding:20px}.welcome h2{font-size:1.4rem}.section-heading{align-items:flex-start}.section-heading>span{display:none}
  .task-grid{grid-template-columns:1fr 1fr}.task-card{display:flex;min-height:180px;padding:17px}.task-card b{display:flex}.task-card em{min-height:auto}
  .prelearn-heading,.lesson-heading,.panel-title{align-items:flex-start;flex-direction:column}.prelearn-section,.panel{padding:18px}.prelearn-grid{grid-template-columns:1fr}
  .delivery-hero{grid-template-columns:minmax(0,1fr) 250px;padding:18px}.delivery-chapters{grid-template-columns:repeat(4,minmax(0,1fr))}
  .recon-quicknav{grid-template-columns:repeat(3,minmax(0,1fr))}.recon-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.recon-flow article:nth-child(2)::after{display:none}.recon-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recon-rule-grid article,.recon-rule-grid article:nth-child(n+4){grid-column:span 1}.recon-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recon-equality{display:grid;grid-template-columns:1fr}.recon-equality i{height:14px}.recon-card-grid.three{grid-template-columns:1fr 1fr}.recon-card-grid.three article:last-child{grid-column:1 / -1}.recon-checklist{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}.form-card>button[type="submit"]{width:100%}.balance-card{grid-template-columns:1fr}.table-wrap{max-height:calc(100svh - 250px)}
  #fulfillmentPanel th:nth-child(2),#fulfillmentPanel td:nth-child(2){width:230px;min-width:230px}#fulfillmentPanel th:nth-child(3),#fulfillmentPanel td:nth-child(3){left:294px;width:210px;min-width:210px}.brand-manual-frame{min-height:460px}
  .warehouse-picker-popover{max-width:calc(100vw - 24px)}
}
@media(max-width:560px){
  .portal-sidebar{padding-top:8px}.portal-sidebar .brand{display:none}.portal-topbar{top:54px}.supplier-chip{max-width:52vw;border:0;background:transparent;padding-inline:0}.supplier-chip i{display:none}.supplier-chip span{font-size:.75rem}.portal-topbar .ghost{font-size:.75rem}
  .task-grid{grid-template-columns:1fr}.task-card{min-height:165px}.prelearn-card{grid-template-columns:auto 1fr}.prelearn-card>b{grid-column:2}.panel{padding:15px}.panel-title h2{font-size:1.3rem}.actions{justify-content:stretch}.actions button{flex:1 1 140px}.balance-decision-grid{grid-template-columns:1fr}.balance-decision{min-height:62px}.finance-form-heading,.finance-evidence{align-items:stretch;flex-direction:column}.finance-form-heading p{max-width:none;text-align:left}.finance-evidence input{min-width:0;width:100%}
  .delivery-hero{grid-template-columns:1fr;padding:14px}.delivery-intro{padding:2px}.delivery-purpose{display:grid;width:100%;grid-template-columns:1fr 1fr}.delivery-purpose>span{min-width:0}.delivery-code-card{width:min(310px,100%);margin:0 auto}.delivery-deck{padding:12px}.delivery-deck-heading{align-items:flex-start;flex-direction:column}.delivery-slide-status{justify-items:start}.delivery-slide-controls{grid-template-columns:1fr 1fr}.delivery-slide-progress{grid-column:1/-1;grid-row:1}.delivery-slide-controls .resource-link{grid-column:1/-1}.delivery-chapters{display:flex;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.delivery-chapters button{flex:0 0 auto;padding-inline:10px}
  .recon-hero{display:block;padding:20px}.recon-hero>b{display:inline-flex;margin-top:14px}.recon-quicknav{grid-template-columns:repeat(2,minmax(0,1fr))}.recon-module{padding:16px}.recon-module-title{align-items:flex-start}.recon-flow,.recon-rule-grid,.recon-field-grid,.recon-card-grid.two,.recon-card-grid.three{grid-template-columns:1fr}.recon-card-grid.three article:last-child{grid-column:auto}.recon-flow article{min-height:auto}.recon-flow article::after{display:none!important}.recon-mail-flow{grid-template-columns:1fr}.recon-mail-flow>i{transform:rotate(90deg)}
  #fulfillmentPanel{padding-inline:10px}#fulfillmentPanel .table-wrap{margin-inline:-2px}
}
@media(max-width:640px){#inventoryPanel .table-wrap{overflow:visible}#inventoryPanel table{table-layout:auto}#inventoryPanel #inventoryRows td{overflow:visible;text-overflow:clip}#inventoryPanel .inventory-warehouse{justify-items:end}#inventoryPanel .inventory-time time{display:flex;gap:6px;align-items:center}}
@media(max-width:700px){.supplier-profile-identity{grid-template-columns:1fr 1fr}.supplier-profile-identity>div:nth-child(2){grid-column:1/-1;grid-row:2}.supplier-profile-fields{grid-template-columns:1fr}.supplier-profile-form{padding:17px}.supplier-profile-actions{align-items:stretch;flex-direction:column}.supplier-profile-actions>div{display:grid;grid-template-columns:1fr 1fr}.supplier-profile-actions button{width:100%;min-width:0}}
.portal-nav-count{display:grid;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;border-radius:999px;background:var(--yellow);color:var(--navy-950);font-size:.68rem}.portal-nav-count.hidden{display:none}.home-announcement-card{margin:0 0 22px;padding:18px 20px;border:1px solid #cddde8;border-radius:16px;background:#fff;box-shadow:var(--shadow-sm)}.home-announcement-card.hidden{display:none}.home-announcement-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:11px}.home-announcement-heading h3{margin:3px 0 0;color:var(--navy-900);font-size:1.08rem}.home-announcement-list{display:grid;gap:7px}.home-announcement-list>button{display:grid;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:13px;padding:11px 13px;border:1px solid #dce5eb;border-radius:10px;background:#fafcfd;color:var(--navy-900);text-align:left;cursor:pointer}.home-announcement-list>button:hover{border-color:#8eb6cf;background:#f2f8fc}.home-announcement-list>button.important{border-left:4px solid #e7841d}.home-announcement-list>button.read{opacity:.76}.home-announcement-list span{color:var(--blue);font-size:.72rem;font-weight:800}.home-announcement-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem}.home-announcement-list small{color:var(--muted);font-size:.71rem;white-space:nowrap}
.announcement-view-tabs{display:inline-flex;gap:5px;margin:0 0 15px;padding:5px;border:1px solid var(--line);border-radius:11px;background:#f3f6f8}.announcement-view-tabs button{min-height:34px;padding:7px 14px;border:0;border-radius:7px;background:transparent;color:#546b7d;font-size:.78rem;font-weight:750;box-shadow:none}.announcement-view-tabs button:hover:not(:disabled){background:#e7f0f6;color:var(--blue2)}.announcement-view-tabs button.active,.announcement-view-tabs button.active:hover:not(:disabled){background:#fff;color:var(--blue);box-shadow:0 3px 10px rgba(7,27,47,.08)}.portal-announcement-list{display:grid;gap:9px}.portal-announcement-card{display:grid;grid-template-columns:5px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;min-height:94px;padding:15px 17px;border:1px solid #d9e4eb;border-radius:12px;background:#fff;color:var(--navy-900);text-align:left;box-shadow:none;cursor:pointer}.portal-announcement-list>button.portal-announcement-card:hover:not(:disabled){border-color:#8bb2cb;background:#f4f8fb;color:var(--navy-900);box-shadow:0 8px 20px rgba(7,27,47,.07);transform:translateY(-1px)}.portal-announcement-list>button.portal-announcement-card.read:hover:not(:disabled){background:#f5f7f9}.portal-announcement-list>button.portal-announcement-card:hover:not(:disabled) .portal-announcement-card-copy small{color:var(--blue)}.portal-announcement-list>button.portal-announcement-card:hover:not(:disabled) .portal-announcement-card-copy em{color:#526b7e}.portal-announcement-card.read{background:#fafbfc}.portal-announcement-card-mark{align-self:stretch;border-radius:999px;background:#2b82b9}.portal-announcement-card.important .portal-announcement-card-mark{background:#e6821d}.portal-announcement-card-copy{display:grid;gap:5px;min-width:0}.portal-announcement-card-copy small{color:var(--blue);font-size:.71rem;font-weight:750}.portal-announcement-card-copy strong{font-size:.96rem}.portal-announcement-card-copy em{overflow:hidden;color:#64798a;font-size:.77rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.portal-announcement-card-state{padding:5px 9px;border-radius:999px;background:#eaf4fb;color:#0d5f91;font-size:.72rem;font-weight:800}.portal-announcement-card.read .portal-announcement-card-state{background:#eef2f4;color:#657886}
.portal-announcement-dialog{width:min(760px,calc(100vw - 28px));max-height:90vh;padding:0;border:1px solid #d7e3eb;color:var(--navy-900)}.portal-announcement-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:21px 23px;border-bottom:1px solid var(--line);background:#f7fafc}.portal-announcement-dialog-head>div{display:grid;gap:5px}.portal-announcement-dialog-head span{color:var(--blue);font-size:.72rem;font-weight:850;letter-spacing:.06em}.portal-announcement-dialog-head h2{margin:0;font-size:1.3rem}.portal-announcement-dialog-head small{color:var(--muted);font-size:.74rem}.portal-announcement-dialog-head .ghost{display:grid;place-items:center;width:36px;min-width:36px;height:36px;padding:0;border-radius:50%;font-size:1.25rem}.portal-announcement-dialog-body{padding:23px;color:#29445a;font-size:.9rem;line-height:1.9;overflow-wrap:anywhere}.portal-announcement-dialog-files{display:grid;gap:7px;padding:0 23px 20px}.portal-announcement-dialog-files:empty{display:none}.portal-announcement-dialog-files a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 12px;border:1px solid #d6e2ea;border-radius:9px;background:#f8fafc;color:#0c6198;text-decoration:none}.portal-announcement-dialog-files small{color:#708393;font-size:.7rem}.portal-announcement-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 23px;border-top:1px solid var(--line);background:#f8fafc}.portal-announcement-dialog-footer>span{color:#5b7183;font-size:.78rem}.portal-announcement-dialog-footer button.hidden{display:none}
@media(max-width:640px){.home-announcement-list>button{grid-template-columns:1fr}.home-announcement-list strong{white-space:normal}.portal-announcement-card{grid-template-columns:5px minmax(0,1fr)}.portal-announcement-card-state{grid-column:2;justify-self:start}.portal-announcement-dialog-footer{align-items:stretch;flex-direction:column}.portal-announcement-dialog-footer button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
/* Supplier business functions share one workspace and one primary navigation. */
.collaboration-center{min-width:0}
.collaboration-center-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 18px}
.collaboration-center-heading h2{font-size:22px;margin:5px 0 0}
.collaboration-center-heading p{font-size:13px;color:var(--muted);margin:0}
.collaboration-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:7px;margin-bottom:20px;background:#e9eff4;border:1px solid #dbe5ed;border-radius:12px}
.collaboration-tabs button{font:inherit;font-size:13px;min-height:40px;padding:9px 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:#567085;box-shadow:none}
.collaboration-tabs button:hover:not(:disabled){background:#f7fafc;color:#12334c}
.collaboration-tabs button.active{background:#fff;color:#0f5483;border-color:#dce6ed;box-shadow:0 2px 5px #0b29440a;font-weight:700}
.collaboration-tabs button:focus-visible{outline:3px solid #83bde1;outline-offset:2px}
.collaboration-frame-wrap{min-width:0}
#collaborationFrame{display:block;border:0;width:100%;height:760px;background:transparent}
#collaborationPanel>.panel{margin-top:0}
#companyPanel{padding:6px 0 0;border:0;box-shadow:none;background:transparent}
.finance-monthly-heading{display:flex;gap:12px;justify-content:space-between;align-items:center;margin:0 0 16px}
.finance-monthly-heading h3{margin:0;font-size:17px}
#financeSubmitStatus{font-size:12px;color:#176a62;background:#edf7f4;border-radius:7px;padding:7px 10px}
.finance-monthly-submit{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;margin:18px 0 24px;background:#f0f6fa;border:1px solid #dbe7ef;border-radius:12px}
.finance-monthly-submit p{margin:0;color:#587085;font-size:13px;line-height:1.7}
#financeForm .finance-submit{width:auto;flex-shrink:0;white-space:nowrap;padding:12px 20px;background:#105a89;color:#fff;border:1px solid #105a89;border-radius:8px;font-size:14px;font-weight:650}
#financeForm .finance-submit:hover:not(:disabled){background:#0c4971;color:#fff}
#financeForm .finance-submit:disabled{opacity:.5;cursor:not-allowed}
.finance-first-submit{margin-top:18px}
@media(max-width:820px){.collaboration-center-heading{display:block}.collaboration-center-heading p{margin-top:10px}.collaboration-tabs{gap:4px}.collaboration-tabs button{padding:8px 10px;font-size:12px}.finance-monthly-submit{align-items:stretch;flex-direction:column}.finance-monthly-heading{align-items:flex-start}}
@media(max-width:640px){.portal-topbar{gap:10px}.portal-topbar .topbar-title{min-width:0;flex:1}.portal-topbar .topbar-title strong{font-size:12px;line-height:1.5}.portal-topbar .topbar-actions{gap:8px;flex:0 0 auto}.portal-topbar .supplier-chip{max-width:100px}.portal-topbar #logoutButton{white-space:nowrap}}

/* 2026-09 business workspace refinement: denser Ant-style surfaces, no business rule changes. */
.portal-workspace{background:#f3f6f9}.portal-topbar{border-bottom:1px solid #dfe7ed;background:rgba(255,255,255,.97);box-shadow:0 1px 2px rgba(15,43,66,.04)}
.content{max-width:1680px;padding:24px 28px 40px}.welcome{margin-bottom:18px;padding:20px 22px;border:1px solid #dbe5ec;border-radius:10px;background:#fff;box-shadow:0 1px 2px rgba(15,43,66,.04)}
.welcome h2{font-size:1.55rem}.home-announcement-card,.prelearn-section,.panel{border-radius:10px;box-shadow:0 1px 3px rgba(15,43,66,.045)}
.task-card{min-height:166px;border-radius:10px;box-shadow:0 1px 3px rgba(15,43,66,.05)}.task-card:hover{box-shadow:0 7px 18px rgba(15,43,66,.09);transform:translateY(-1px)}
.task-card .task-icon{border-radius:8px}.section-heading{margin:22px 0 12px}.eyebrow{letter-spacing:.04em}.panel-title h2{font-size:1.4rem}
.collaboration-tabs{border-radius:9px}.collaboration-tabs button{border-radius:6px}.form-card,.balance-card{border-radius:9px}.table-wrap{border-radius:8px}

#fulfillmentPanel .fulfillment-compact-wrap{max-height:calc(100svh - 300px);overflow:auto}
#fulfillmentPanel .fulfillment-compact-table{width:100%;min-width:1040px;table-layout:fixed}
#fulfillmentPanel .fulfillment-compact-table th,#fulfillmentPanel .fulfillment-compact-table td{position:static;width:auto;min-width:0;padding:13px 12px;vertical-align:middle}
#fulfillmentPanel .fulfillment-compact-table th:nth-child(1){width:64px}
#fulfillmentPanel .fulfillment-compact-table th:nth-child(2){width:260px}
#fulfillmentPanel .fulfillment-compact-table th:nth-child(3){width:250px}
#fulfillmentPanel .fulfillment-compact-table th:nth-child(4){width:210px}
#fulfillmentPanel .fulfillment-compact-table th:nth-child(5){width:130px}
#fulfillmentPanel .fulfillment-compact-table th:nth-child(6){width:90px}
#fulfillmentPanel .fulfillment-compact-table th:nth-child(7){width:88px}
#fulfillmentPanel .sku-cell strong{white-space:normal;line-height:1.45}#fulfillmentPanel .sku-cell small{display:block;margin-top:4px;color:#6b7e8e}
#fulfillmentPanel .fulfillment-state{display:table-cell}.fulfillment-row-action>input[type="hidden"]{display:none}.fulfillment-row-action button{min-width:60px;padding:7px 12px}
#fulfillmentPanel [data-lead-summary],#fulfillmentPanel [data-moq-summary]{color:#17364d;font-size:.86rem;font-variant-numeric:tabular-nums}

.fulfillment-editor-dialog{width:min(980px,calc(100vw - 32px));max-width:none;height:min(820px,calc(100dvh - 32px));max-height:none;padding:0;border:1px solid #cfdce5;border-radius:12px;background:#fff;color:#17364d;box-shadow:0 24px 70px rgba(4,31,51,.22);overflow:hidden}
.fulfillment-editor-dialog::backdrop{background:rgba(6,27,43,.46);backdrop-filter:blur(2px)}.fulfillment-editor-shell{display:grid;height:100%;grid-template-rows:auto minmax(0,1fr) auto}
.fulfillment-editor-shell>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 24px;border-bottom:1px solid #e0e8ee;background:#f8fafc}.fulfillment-editor-shell>header span{color:#0b65a2;font-size:.72rem;font-weight:800;letter-spacing:.08em}.fulfillment-editor-shell>header h2{margin:4px 0 0;font-size:1.25rem}.fulfillment-editor-shell>header p{margin:6px 0 0;color:#667b8c;font-size:.78rem}.fulfillment-editor-shell>header .ghost{display:grid;width:36px;min-width:36px;height:36px;padding:0;place-items:center;border-radius:50%;font-size:1.25rem}
.fulfillment-editor-body{display:grid;gap:18px;padding:20px 24px 28px;overflow:auto}.fulfillment-editor-body section{padding-bottom:18px;border-bottom:1px solid #e5ebef}.fulfillment-editor-body section:last-child{padding-bottom:0;border-bottom:0}.fulfillment-editor-body h3{margin:0 0 12px;color:#17364d;font-size:.95rem}
.fulfillment-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.fulfillment-editor-grid>label{display:grid;gap:7px;color:#344f63;font-size:.78rem;font-weight:700}.fulfillment-editor-grid input,.fulfillment-editor-grid select,.fulfillment-editor-grid textarea{width:100%;min-height:40px;padding:9px 11px;border:1px solid #cbd8e2;border-radius:7px;background:#fff;color:#17364d;font:inherit;font-weight:500}.fulfillment-editor-grid input:focus,.fulfillment-editor-grid select:focus,.fulfillment-editor-grid textarea:focus{border-color:#287eb5;outline:3px solid rgba(40,126,181,.13)}.fulfillment-editor-grid input:disabled,.fulfillment-editor-grid select:disabled,.fulfillment-editor-grid textarea:disabled{background:#f2f5f7;color:#667b8c}.fulfillment-editor-wide{grid-column:1/-1}
.fulfillment-editor-warehouses{grid-column:1/-1;margin:0;padding:0;border:0}.fulfillment-editor-warehouses legend{margin-bottom:9px;color:#344f63;font-size:.78rem;font-weight:800}.fulfillment-editor-warehouses legend small{margin-left:5px;color:#758897;font-weight:500}.fulfillment-editor-warehouses>div{display:flex;flex-wrap:wrap;gap:8px}.fulfillment-editor-warehouses label{position:relative;display:inline-flex;align-items:center}.fulfillment-editor-warehouses input{position:absolute;width:1px;height:1px;opacity:0}.fulfillment-editor-warehouses span{display:inline-flex;min-height:36px;align-items:center;padding:7px 12px;border:1px solid #cbd8e2;border-radius:7px;background:#fff;color:#405d72;font-size:.78rem;cursor:pointer}.fulfillment-editor-warehouses input:checked+span{border-color:#287eb5;background:#eaf4fb;color:#0b5f96;box-shadow:inset 0 0 0 1px #287eb5}.fulfillment-editor-warehouses input:focus-visible+span{outline:3px solid rgba(40,126,181,.18);outline-offset:1px}.fulfillment-editor-warehouses:disabled span{background:#f2f5f7;color:#718493;cursor:default}
.fulfillment-editor-shell>footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 24px;border-top:1px solid #dfe7ed;background:#f8fafc}.fulfillment-editor-shell>footer>span{max-width:610px;color:#667b8c;font-size:.75rem;line-height:1.55}.fulfillment-editor-shell>footer>div{display:flex;gap:9px;flex-shrink:0}.fulfillment-editor-shell>footer button{min-height:38px;padding:8px 14px;border-radius:7px}
@media(max-width:900px){.content{padding:20px 18px 34px}.fulfillment-editor-dialog{width:calc(100vw - 18px);height:calc(100dvh - 18px)}.fulfillment-editor-grid{grid-template-columns:1fr}.fulfillment-editor-wide{grid-column:auto}.fulfillment-editor-shell>footer{align-items:stretch;flex-direction:column}.fulfillment-editor-shell>footer>div{justify-content:flex-end}}
@media(max-width:560px){.content{padding:14px 10px 28px}.welcome{padding:16px}.fulfillment-editor-dialog{width:100vw;height:100dvh;border:0;border-radius:0}.fulfillment-editor-shell>header,.fulfillment-editor-body,.fulfillment-editor-shell>footer{padding-inline:16px}.fulfillment-editor-shell>footer button{flex:1}.fulfillment-editor-shell>footer>div{width:100%}}
