:root{--navy:#142b40;--navy-soft:#1d3850;--teal:#127f81;--teal-dark:#096468;--teal-pale:#e9f5f2;--canvas:#f3f5f6;--surface:#fff;--ink:#223c4d;--muted:#728491;--line:#dfe6e9;--amber:#a77518;--amber-bg:#fbf5e8;--red:#b84d49;--red-bg:#fcf0ee;--blue:#4275a1;--blue-bg:#edf4fa;--shadow:0 2px 6px #142b4003;--radius:12px;font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none;line-height:1.6;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #4db7bc;outline-offset:3px}h1,h2,h3,h4,p{margin:0}h1{font-size:29px;letter-spacing:-.8px;line-height:1.35;font-weight:720}h2{font-size:17px;line-height:1.5;font-weight:700}h3{font-size:15px}small{font-size:12px}.muted{color:var(--muted)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.nowrap{white-space:nowrap}.break{overflow-wrap:anywhere}.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-200%);z-index:100;background:white;padding:12px;border-radius:8px}.skip-link:focus{transform:none}.initial-loading{min-height:100vh;display:grid;align-content:center;justify-items:center;gap:18px;color:var(--muted)}.spinner{width:25px;height:25px;border:2px solid var(--line);border-top-color:var(--teal);border-radius:50%;display:inline-block;animation:spin .75s linear infinite}.spinner.small{width:16px;height:16px;border-width:2px;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}
.shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:var(--navy);color:#d3e0e7;padding:29px 18px 20px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;gap:11px;align-items:center;color:#fff;padding:0 9px 30px;text-decoration:none!important}.brand img{width:38px;height:38px}.brand-title{font-size:17px;font-weight:700;letter-spacing:.5px}.brand-sub{font-size:10px;color:#8da4b5;letter-spacing:1.3px;text-transform:uppercase;margin-top:1px}.nav-label{font-size:10px;text-transform:uppercase;letter-spacing:1.8px;color:#7591a7;padding:16px 14px 9px}.nav-link{display:flex;align-items:center;gap:12px;border-radius:8px;padding:11px 14px;color:#b6cad8;font-size:14px;margin:3px 0;text-decoration:none!important;transition:background .12s}.nav-link:hover{background:#213c52;color:#fff}.nav-link.active{background:#245267;color:#fff;box-shadow:inset 3px 0 #62cdc0}.nav-link svg{width:18px;height:18px;opacity:.9}.sidebar-spacer{flex:1}.sidebar-note{padding:17px 14px;border:1px solid #31495e;border-radius:9px;margin:22px 7px 0;font-size:11px;line-height:1.8;color:#91aabd}.sidebar-note strong{color:#c8dedf;font-weight:600;font-size:12px}.sidebar-footer{display:flex;align-items:center;gap:10px;padding:20px 11px 0}.avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#344e63;color:#e2ecef;font-size:11px}.sidebar-footer strong{display:block;font-size:12px;color:#e8f0f4;font-weight:500}.sidebar-footer small{font-size:10px;color:#8da4b5}.logout{margin-left:auto;border:0;background:none;color:#91aabd;padding:5px}.logout svg{width:17px}.workspace{grid-column:2;min-width:0}.topbar{height:76px;background:#ffffffc9;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;gap:20px}.breadcrumb{display:flex;align-items:center;gap:11px;font-size:12px;color:#718491}.breadcrumb a{color:#738591}.breadcrumb .slash{color:#c0cbd2}.breadcrumb strong{font-weight:500;color:var(--ink)}.topbar-right{display:flex;align-items:center;gap:15px;color:var(--muted);font-size:11px}.env-label{display:inline-flex;gap:7px;align-items:center;border:1px solid var(--line);padding:4px 10px;border-radius:5px;background:#fff}.env-label:before{content:"";width:5px;height:5px;background:#899ba8;border-radius:50%}.mobile-menu{display:none;background:none;border:0;color:var(--ink);font-size:22px}.main{max-width:1650px;margin:0 auto;padding:33px 38px 38px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:27px}.page-head p{font-size:13px;color:var(--muted);margin-top:8px}.eyebrow{color:var(--teal);font-size:10px;letter-spacing:1.5px;font-weight:700;text-transform:uppercase;margin-bottom:6px}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font-size:12px;font-weight:550;padding:9px 14px;line-height:1.7;text-decoration:none!important;white-space:nowrap}.btn:hover{background:#f7fafb;border-color:#bfccd2}.btn svg{width:15px;height:15px}.btn.primary{background:var(--teal);color:#fff;border-color:var(--teal)}.btn.primary:hover{background:var(--teal-dark)}.btn.subtle{background:transparent}.btn.danger{color:var(--red);border-color:#eccac7}.btn.small{padding:6px 10px;font-size:11px}.btn.icon-only{padding:8px}.text-link{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:550}.text-link svg{width:13px}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:5px;padding:3px 8px;font-size:11px;font-weight:550;line-height:1.6;white-space:nowrap;background:#eff3f5;color:#718490}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.badge.teal{color:var(--teal);background:var(--teal-pale)}.badge.amber{color:var(--amber);background:var(--amber-bg)}.badge.red{color:var(--red);background:var(--red-bg)}.badge.blue{color:var(--blue);background:var(--blue-bg)}.badge.no-dot:before{display:none}.readonly-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 18px;border:1px solid #d3e9e3;background:#f0f8f5;border-radius:8px;margin-bottom:25px;font-size:12px;color:#45665f}.readonly-banner .banner-main{display:flex;align-items:center;gap:10px}.readonly-banner svg{width:17px;height:17px;color:var(--teal);flex-shrink:0}.readonly-banner strong{font-weight:650;color:#35655d}.readonly-banner small{color:#7d938d;font-size:10px;white-space:nowrap}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:24px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;box-shadow:var(--shadow)}.stat-label{display:flex;align-items:center;justify-content:space-between;color:#6f818d;font-size:12px;margin-bottom:11px}.stat-icon{display:flex;color:#8aa0aa}.stat-icon svg{width:17px;height:17px}.stat-value{font-size:34px;font-weight:650;letter-spacing:-1.3px;line-height:1.1;display:flex;align-items:baseline;gap:9px}.stat-value span{font-size:11px;color:var(--muted);font-weight:400;letter-spacing:0}.stat-foot{font-size:10px;color:#91a0a9;margin-top:11px}.stat-value.teal{color:var(--teal)}.two-col{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:22px;align-items:start}.equal-col{display:grid;grid-template-columns:1fr 1fr;gap:22px}.stack{display:grid;gap:22px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 23px;border-bottom:1px solid var(--line)}.panel-head p{font-size:11px;color:var(--muted);margin-top:4px}.panel-head h2{font-size:15px}.panel-body{padding:23px}.panel-footer{padding:14px 23px;border-top:1px solid var(--line);background:#fcfdfd;display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:11px;color:var(--muted)}.section-title{display:flex;justify-content:space-between;align-items:center;margin:29px 0 14px}.section-title h2{font-size:15px}.section-title p{font-size:11px;color:var(--muted)}.empty{padding:45px 24px;text-align:center;display:flex;flex-direction:column;align-items:center}.empty-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid #dce8e7;background:#f4f9f7;border-radius:13px;color:#80a69f;margin-bottom:15px}.empty-icon svg{width:23px;height:23px}.empty h3{font-size:14px;font-weight:600}.empty p{font-size:12px;color:var(--muted);margin-top:7px;max-width:410px}.empty .btn,.empty .text-link{margin-top:19px}.compact-empty{padding:34px 20px}.empty-hint{font-size:10px!important;margin-top:13px!important;color:#8ca0aa!important}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}thead{background:#f7f9fa;color:#7f919b;font-size:10px;letter-spacing:.3px}th{font-weight:550;padding:13px 21px;white-space:nowrap;border-bottom:1px solid var(--line)}td{padding:17px 21px;border-bottom:1px solid #edf1f3;vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfdfd}.cell-title{font-size:12px;font-weight:600;color:#294557}.cell-sub{font-size:10px;color:var(--muted);margin-top:3px}.cell-action{text-align:right}.cell-action a{white-space:nowrap}.task-name{display:flex;align-items:center;gap:11px}.task-icon{width:35px;height:35px;border-radius:8px;background:var(--teal-pale);display:grid;place-items:center;color:var(--teal);flex-shrink:0}.task-icon svg{width:17px;height:17px}.service-row{display:flex;align-items:center;gap:11px;padding:14px 0;border-bottom:1px solid #edf1f3}.service-row:first-child{padding-top:0}.service-row:last-child{border:0;padding-bottom:0}.service-icon{width:31px;height:31px;border-radius:7px;background:#f2f5f7;display:grid;place-items:center;color:#7e939e}.service-icon svg{width:16px;height:16px}.service-row .badge{margin-left:auto}.service-name{font-size:12px;font-weight:550}.service-seen{font-size:10px;color:#8a9ba5;margin-top:1px}.info-list{display:grid;gap:15px}.info-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;font-size:12px}.info-row>span:first-child{color:var(--muted)}.info-row>span:last-child{text-align:right;max-width:70%;overflow-wrap:anywhere}.connection-mini{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid #edf1f3}.connection-mini:last-child{border:0}.connection-name{display:flex;gap:10px;align-items:center;font-size:12px;font-weight:550}.provider-mark{width:31px;height:31px;border-radius:7px;display:grid;place-items:center;font-weight:700;font-size:12px;background:#edf2fb;color:#6985b4}.provider-mark.shopify{background:#eff5e6;color:#6b8b3f}.provider-mark.large{width:47px;height:47px;font-size:18px;border-radius:11px}.workflow{display:flex;align-items:center;gap:12px;padding:20px 0}.workflow-step{flex:1;text-align:center;font-size:11px}.workflow-step strong{display:block;color:#4e6877;font-size:12px;font-weight:550;margin-bottom:3px}.workflow-arrow{color:#b4c4c9;font-size:18px}.workflow-note{border-top:1px dashed var(--line);padding-top:17px;font-size:11px;color:var(--muted);line-height:1.9}.footer-note{margin-top:28px;padding-top:17px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;font-size:10px;color:#95a3ab}.footer-note a{color:#79909a}
.filterbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:16px 22px;border-bottom:1px solid var(--line)}.filterbar .field{margin:0;min-width:170px;flex:1}.filterbar label{font-size:10px;margin-bottom:5px}.filterbar select{height:35px}.filterbar .btn{height:35px}.field{margin-bottom:20px}.field label,.field-label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.field label .optional{font-weight:400;font-size:10px;color:#96a3ab;margin-left:5px}.field input:not([type=checkbox]),.field select,.field textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #cedbe1;border-radius:7px;padding:10px 12px;font-size:12px;line-height:1.5;min-height:40px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal)}.field textarea{min-height:100px;resize:vertical}.field small{display:block;color:var(--muted);font-size:10px;margin-top:6px;line-height:1.8}.field input::placeholder{color:#a7b4bc}.field input[readonly]{background:#f7f9fa;color:#7e929e}.required{color:var(--teal);font-size:10px;margin-left:4px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.form-grid .full{grid-column:1/-1}.form-section{margin-bottom:25px;padding-bottom:23px;border-bottom:1px solid var(--line)}.form-section:last-of-type{border:0;margin-bottom:0}.form-section h3{font-size:13px;margin-bottom:17px}.check-row{display:flex;align-items:flex-start;gap:10px;font-size:12px;cursor:pointer}.check-row input{width:16px;height:16px;margin:3px 0 0;accent-color:var(--teal);flex-shrink:0}.check-row span{display:block}.check-row small{font-size:10px;color:var(--muted);display:block;margin-top:4px;line-height:1.8}.switch-panel{background:#f7faf9;border:1px solid #deebe6;padding:15px;border-radius:8px;margin:5px 0 22px}.form-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;padding-top:20px;border-top:1px solid var(--line)}.form-note{margin-right:auto;color:var(--muted);font-size:10px}.form-error{background:var(--red-bg);border:1px solid #efd6d2;border-radius:7px;color:var(--red);font-size:12px;padding:12px 15px;margin-bottom:17px}.form-success{background:var(--teal-pale);border:1px solid #d1e9e1;border-radius:7px;color:var(--teal);font-size:12px;padding:12px 15px;margin-bottom:17px}.callout{display:flex;gap:11px;padding:16px;border:1px solid #e9debe;background:#fcf9f0;border-radius:8px;font-size:11px;color:#89723c;line-height:1.9}.callout svg{width:17px;height:17px;flex-shrink:0;margin-top:1px}.callout.neutral{background:#f4f8fa;border-color:#dce8ee;color:#6b8594}.callout strong{font-weight:600}.step-list{list-style:none;padding:0;margin:0;display:grid;gap:20px}.step-list li{display:flex;gap:12px;font-size:11px;color:var(--muted)}.step-number{width:23px;height:23px;background:#edf6f2;border:1px solid #d9e9e3;color:var(--teal);display:grid;place-items:center;border-radius:50%;font-size:10px;flex-shrink:0}.step-list strong{font-size:12px;color:#425f6e;font-weight:550;display:block;margin-bottom:4px}.tag-row{display:flex;gap:7px;flex-wrap:wrap}.detail-title{display:flex;gap:14px;align-items:center}.detail-title h1{font-size:25px}.back-link{margin-bottom:17px;display:inline-flex;gap:7px;font-size:11px;align-items:center}.back-link svg{width:13px}.connection-card{padding:26px;display:flex;flex-direction:column;min-height:273px}.connection-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px}.connection-card h2{font-size:17px}.connection-card>p{font-size:12px;color:var(--muted);margin-top:7px;line-height:1.9}.connection-card .info-list{margin-top:22px}.connection-card .actions{border-top:1px solid var(--line);padding-top:18px;margin-top:22px;justify-content:space-between}.test-result{margin-top:17px;padding:15px;border:1px solid var(--line);border-radius:8px;background:#f8fafb;font-size:12px;overflow-wrap:anywhere}.test-result strong{display:block;font-size:12px;margin-bottom:4px}.discover-list{border:1px solid var(--line);border-radius:8px;margin-top:18px;overflow:hidden}.discover-list .discover-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 15px;border-bottom:1px solid var(--line);font-size:12px}.discover-list .discover-row:last-child{border:0}.discover-row .mono{font-size:10px;color:var(--muted);display:block}.discover-row small{font-size:10px;color:var(--muted)}.status-strip{display:flex;gap:23px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;margin-bottom:22px;flex-wrap:wrap}.status-strip .info{font-size:11px;min-width:110px}.status-strip .info>span{display:block;color:var(--muted);font-size:10px;margin-bottom:5px}.status-strip .info strong{font-size:12px;font-weight:550}.run-log{list-style:none;padding:0;margin:0;display:grid;gap:0}.run-log li{display:grid;grid-template-columns:135px minmax(0,1fr);gap:20px;padding:14px 0;border-bottom:1px solid #edf1f3;font-size:12px}.run-log li:first-child{padding-top:0}.run-log li:last-child{border:0;padding-bottom:0}.run-log time{color:#8ba0ac;font-size:10px;font-family:ui-monospace,monospace}.log-message{overflow-wrap:anywhere}.pagination{display:flex;align-items:center;gap:12px}.positive{color:var(--teal)}.negative{color:var(--red)}.security-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.security-item{border:1px solid var(--line);border-radius:8px;padding:18px}.security-item svg{width:21px;height:21px;color:var(--teal);margin-bottom:12px}.security-item h3{font-size:13px;margin-bottom:6px}.security-item p{font-size:11px;color:var(--muted);line-height:1.9}.security-item .badge{margin-top:13px}.error-page{padding:50px 25px;text-align:center}.error-page .empty-icon{margin:0 auto 16px}.error-page p{font-size:12px;color:var(--muted);margin:9px 0 18px}.notifications{position:fixed;bottom:24px;right:26px;z-index:200;max-width:min(420px,90vw)}.toast{padding:13px 18px;border:1px solid #c9e3da;background:#f0f9f5;border-radius:9px;box-shadow:0 8px 30px #15374020;color:#2e6f5b;font-size:12px}.toast.error{color:var(--red);background:#fff1ee;border-color:#eccac7}.skeleton{height:13px;width:70%;border-radius:3px;background:#edf1f3;animation:pulse 1.4s ease-in-out infinite}.loading-panel{padding:32px;display:grid;gap:20px}.loading-panel .skeleton:nth-child(2){width:95%}.loading-panel .skeleton:nth-child(3){width:55%}@keyframes pulse{50%{opacity:.5}}.inline-loading{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px;padding:15px 0}.audit-detail{max-width:400px;color:#758894;font-size:11px;overflow-wrap:anywhere}.auth-shell{min-height:100vh}.auth-wrap{min-height:100vh}.status-live-dot{width:5px;height:5px;border-radius:50%;background:#83aaa2;display:inline-block;margin-right:5px}.details-note{font-size:11px;color:var(--muted);line-height:1.9;margin-top:14px}.form-body-title{font-size:11px;color:var(--muted);margin-bottom:19px}
@media(min-width:1500px){.main{padding-top:39px}.stats{gap:20px}.two-col{grid-template-columns:minmax(0,1.9fr) minmax(320px,1fr)}}@media(max-width:1160px){.sidebar{width:218px;padding-left:14px;padding-right:14px}.shell{grid-template-columns:218px minmax(0,1fr)}.topbar{padding:0 26px}.main{padding:27px 26px}.two-col{grid-template-columns:minmax(0,1fr)}.two-col>.stack{grid-template-columns:1fr 1fr}.two-col>.panel{max-width:none}.stats{gap:10px}.stat{padding:18px 16px}.stat-value{font-size:30px}.topbar-right .time-label{display:none}.security-grid{gap:12px}}@media(max-width:850px){.sidebar{transform:translateX(-100%);transition:transform .18s}.sidebar.open{transform:translateX(0);box-shadow:15px 0 60px #153a4920}.shell{grid-template-columns:1fr}.workspace{grid-column:1}.mobile-menu{display:inline-flex}.topbar{height:62px;padding:0 20px}.breadcrumb{margin-right:auto}.topbar-right{gap:8px}.main{padding:24px 20px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.equal-col,.two-col>.stack{grid-template-columns:1fr}.page-head{gap:14px}.page-head h1{font-size:25px}.page-head .actions{justify-content:flex-end}.readonly-banner{align-items:flex-start}.readonly-banner small{display:none}.footer-note{flex-direction:column;gap:4px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.panel-head,.panel-body{padding:20px}.security-grid{grid-template-columns:1fr}.status-strip{gap:19px}th,td{padding-left:17px;padding-right:17px}}@media(max-width:520px){.main{padding:20px 14px}.topbar{padding:0 14px}.topbar-right{font-size:10px}.breadcrumb{gap:8px}.breadcrumb a:first-child,.breadcrumb .slash:first-of-type{display:none}.page-head{flex-wrap:wrap;margin-bottom:20px}.page-head>.actions{width:100%;justify-content:flex-start}.page-head p{font-size:12px}.stat-value{font-size:28px}.stat{padding:16px}.panel-head{padding:17px}.panel-body{padding:18px}.readonly-banner{padding:12px}.readonly-banner .banner-main{align-items:flex-start}.readonly-banner svg{margin-top:2px}.run-log li{grid-template-columns:1fr;gap:3px}.form-actions{flex-wrap:wrap}.form-note{width:100%}.detail-title h1{font-size:22px}.status-strip{padding:18px}.filterbar{padding:16px}.footer-note{font-size:9px}.notifications{right:14px;bottom:14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.auth-shell{min-height:100vh;background:radial-gradient(ellipse at 12% 5%,#e5eeed,transparent 55%),#f0f4f5;display:grid;place-items:center;padding:38px 20px}.auth-card{width:100%;max-width:600px;background:#fff;border:1px solid #dae5e7;border-radius:17px;padding:41px 43px;box-shadow:0 16px 60px #203a4b09}.auth-card .auth-brand{display:inline-flex;color:var(--navy);font-size:17px;font-weight:700;padding:0;margin-bottom:34px;gap:10px}.auth-card .auth-brand:before{content:"";width:34px;height:34px;border-radius:10px;background:url('/assets/starwhale.svg') center/cover}.auth-steps{display:flex;gap:12px;justify-content:space-between;margin-bottom:34px;font-size:11px;color:#98a9b2}.auth-steps span{border-bottom:2px solid #e8eff1;padding-bottom:12px;flex:1;white-space:nowrap}.auth-steps [aria-current=step]{color:var(--teal);border-color:var(--teal);font-weight:650}.auth-card h1{font-size:27px;letter-spacing:-.5px;margin-bottom:18px}.auth-card>.muted,.auth-card p.muted{font-size:12px;line-height:1.95}.auth-card form{margin-top:24px}.auth-card label{display:block;font-size:12px;font-weight:600}.auth-card input{display:block;width:100%;padding:12px 14px;border:1px solid #d1dfe5;border-radius:8px;margin:9px 0 19px;color:var(--ink);font-size:16px;letter-spacing:1px;min-height:48px;background:white}.auth-card input[disabled]{background:#f4f7f8}.auth-card .button{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink);font-size:12px;padding:10px 15px;line-height:1.8}.auth-card .button.primary{background:var(--teal);border-color:var(--teal);color:white;width:100%;font-size:13px;padding:12px;margin-top:6px}.auth-card .button.primary:hover{background:var(--teal-dark)}.auth-card>[data-passkey]{margin:22px 0 14px}.auth-card .notice{background:#f1f7f8;border:1px solid #dce9ec;padding:13px 15px;border-radius:8px;font-size:11px;line-height:1.9;color:#608392;margin:18px 0}.auth-card .notice.warning{background:var(--amber-bg);color:#927330;border-color:#eddfb7}.auth-card .notice.error{background:var(--red-bg);color:var(--red);border-color:#efcfca}.auth-card [hidden]{display:none!important}.auth-footer{border-top:1px solid var(--line);margin-top:30px;padding-top:22px}.auth-footer p{font-size:10px!important;margin-bottom:13px}.auth-footer .button{font-size:10px;padding:6px 10px;color:#6a8390;margin-right:7px}.auth-totp-material{margin-top:20px;text-align:center;border:1px solid var(--line);border-radius:8px;padding:15px}.auth-totp-material img{max-width:100%;height:auto}.auth-totp-material details{font-size:11px;text-align:left;margin-top:9px}.auth-totp-material summary{cursor:pointer;color:var(--teal)}.auth-totp-material code{display:block;overflow-wrap:anywhere;margin:12px 0;padding:10px;background:#f1f5f7;border-radius:5px;font-size:13px;letter-spacing:1px}.auth-totp-material p{font-size:10px!important}@media(max-width:520px){.auth-shell{padding:20px 13px}.auth-card{padding:30px 23px;border-radius:12px}.auth-card h1{font-size:24px}.auth-steps{gap:8px;font-size:10px}.auth-card .auth-brand{margin-bottom:27px}.auth-steps{margin-bottom:27px}}

.space-below{margin-bottom:24px}.tiny{font-size:10px}

.run-item-filter .sku-filter{flex:2;min-width:240px}.run-item-filter input{height:35px;padding:7px 11px}.run-export-toolbar{padding:13px 21px;border-bottom:1px solid var(--line);background:#fcfdfd;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.selection-summary{display:flex;align-items:center;gap:10px;font-size:11px;color:#718894}.selection-summary strong{color:var(--teal);font-weight:650}.selection-summary small{font-size:10px;color:#91a1aa}.run-items-table .selection-cell{width:44px;padding-right:3px}.run-items-table input[type=checkbox]{width:15px;height:15px;accent-color:var(--teal);cursor:pointer;vertical-align:middle}.run-items-table input:disabled{cursor:not-allowed;opacity:.5}.run-items-table input:focus-visible{outline-offset:4px}.pagination a{white-space:nowrap}@media(max-width:700px){.run-export-toolbar{padding:13px 17px;align-items:stretch}.run-export-toolbar>.actions{width:100%}.selection-summary{flex-wrap:wrap}.selection-summary small{width:100%}.run-item-filter .sku-filter{min-width:170px}.panel-footer:has(.pagination){flex-wrap:wrap}.panel-footer .pagination{margin-left:auto}}

.mapping-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.mapping-stats .stat{padding:18px 16px}.mapping-stats .stat-value{font-size:29px}.mapping-catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:18px 21px;border:1px solid var(--line);background:white;border-radius:10px;margin-bottom:10px}.mapping-catalog span{display:block;color:var(--muted);font-size:10px;margin-bottom:5px}.mapping-catalog strong{font-size:12px;font-weight:550;overflow-wrap:anywhere}.catalog-note{font-size:11px;color:#7c919d;line-height:1.9;margin-bottom:23px}.mapping-detail-grid{display:grid;grid-template-columns:minmax(245px,.8fr) minmax(0,2fr);gap:22px;align-items:start}.mapping-product-title{font-size:15px;font-weight:600;line-height:1.8;overflow-wrap:anywhere}.mapping-sku-label{font-size:10px;color:var(--muted);margin-top:23px}.mapping-product-sku{font-size:15px;color:var(--teal);margin-top:5px}.mapping-product-info{margin-top:24px}.mapping-product-info .info-row{font-size:11px;align-items:flex-start}.mapping-product-info .info-row>span:last-child{max-width:65%}.mapping-guidance{display:flex;align-items:flex-start;gap:10px;margin:18px;padding:13px 15px;background:var(--amber-bg);border:1px solid #ebdebd;border-radius:8px;font-size:11px;line-height:1.9;color:#897239}.mapping-guidance svg{width:18px;height:18px;flex-shrink:0;margin-top:3px}.mapping-guidance strong{font-weight:600}.candidate-table-scroll{max-height:560px;overflow:auto}.candidate-table thead{position:sticky;top:0;z-index:1}.candidate-table th,.candidate-table td{padding-left:14px;padding-right:14px}.candidate-table input[type=radio]{accent-color:var(--teal);width:16px;height:16px}.candidate-table tr:has(input:checked){background:#eff8f4}.candidate-hints,.candidate-warnings{display:flex;gap:4px;flex-wrap:wrap;max-width:190px}.candidate-hint{display:inline-block;font-size:10px;line-height:1.8;color:#6c8790;overflow-wrap:anywhere}.candidate-hint+.candidate-hint:before{content:"· ";color:#a4b3ba}.candidate-warnings .candidate-hint{color:var(--amber)}.mapping-save-area{border-top:1px solid var(--line)}.run-matching-note{font-size:11px;line-height:1.9;color:#69818f;margin:0 0 17px}.run-matching-note a{white-space:nowrap}@media(max-width:1150px){.mapping-detail-grid{grid-template-columns:minmax(0,1fr)}.mapping-detail-grid>aside{grid-template-columns:1fr 1fr}.mapping-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.mapping-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.mapping-detail-grid>aside{grid-template-columns:1fr}.mapping-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.mapping-catalog{grid-template-columns:1fr 1fr;padding:16px;gap:14px}.mapping-catalog strong{font-size:11px}.candidate-table-scroll{max-height:500px}.mapping-guidance{margin:14px}.mapping-save-area .form-actions{justify-content:flex-start}}

/* Keep selection and confirmation beside the product while reviewing a page. */
.inline-mapping-table{min-width:1020px;table-layout:fixed}.inline-mapping-table th:nth-child(1){width:26%}.inline-mapping-table th:nth-child(2){width:24%}.inline-mapping-table th:nth-child(3){width:50%}.inline-mapping-table td{vertical-align:top;padding-top:20px;padding-bottom:20px}.inline-mapping-product .cell-sub{max-width:310px}.inline-mapping-detail{display:inline-block;margin-top:10px;font-size:11px}.inline-mapping-current .cell-sub{line-height:1.7}.inline-mapping-source{padding-top:13px;margin-top:13px;border-top:1px dashed var(--line)}.inline-mapping-editor{min-width:420px}.inline-mapping-search{display:flex;gap:7px;margin-bottom:9px}.inline-mapping-search input{min-width:100px;flex:1;height:35px;font-size:12px}.inline-mapping-search .btn{flex-shrink:0}.inline-mapping-save select{width:100%;max-width:100%;height:38px;font-size:12px;overflow:hidden;text-overflow:ellipsis}.inline-mapping-confirm{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.inline-mapping-confirm label{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted);cursor:pointer}.inline-mapping-confirm input{accent-color:var(--teal);width:15px;height:15px}.inline-mapping-selected{display:flex;flex-direction:column;gap:5px;font-size:11px;line-height:1.7;margin-top:10px;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:#f8fbfb;overflow-wrap:anywhere}.inline-mapping-selected strong{font-size:12px}.inline-mapping-selected .candidate-hints,.inline-mapping-selected .candidate-warnings{max-width:none}.inline-mapping-editor .form-error{margin:9px 0 0;padding:10px;font-size:11px}.inline-mapping-success{font-size:11px;line-height:1.8;color:var(--teal);margin-top:8px}.inline-mapping-table tr:has(.inline-mapping-success){background:#f6fcfa}.inline-mapping-table select:focus-visible,.inline-mapping-search input:focus-visible{outline:2px solid var(--teal);outline-offset:2px}@media(max-width:650px){.inline-mapping-table{min-width:950px}.inline-mapping-confirm{align-items:flex-start;flex-direction:column}.inline-mapping-search{flex-wrap:wrap}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.inline-mapping-note{font-size:11px;line-height:1.8;color:var(--muted);margin-top:8px}.inline-mapping-search input,.inline-mapping-save select{font-family:inherit;color:var(--ink);border:1px solid var(--line);border-radius:6px;background:#fff;padding:7px 10px}.inline-mapping-search input:disabled,.inline-mapping-save select:disabled{background:#f4f7f8;color:var(--muted)}

.inventory-plan-preview>.stats{margin-top:22px;margin-bottom:0}.inventory-plan-preview .info-row>strong{text-align:right;max-width:75%;overflow-wrap:anywhere}

/* Notifications are explicit operator tools, separate from business execution. */
.notification-subnav{display:flex;flex-wrap:wrap;gap:7px;margin:-4px 0 24px;padding:6px;border:1px solid var(--line);border-radius:9px;background:#fff}.notification-subnav a{padding:8px 15px;font-size:12px;border-radius:6px;color:#6d8391;text-decoration:none}.notification-subnav a:hover{background:#f4f8f9;color:var(--teal)}.notification-subnav a.active{background:var(--teal-pale);color:var(--teal-dark);font-weight:650}.notification-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:22px;align-items:start;margin-bottom:23px}.notification-settings-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:22px;align-items:start}.notification-preview-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,1fr);margin-top:23px}.notification-service{display:flex;align-items:center;gap:13px;padding:18px 0;border-bottom:1px solid var(--line)}.notification-service:first-child{padding-top:0}.notification-service:last-child{padding-bottom:0;border-bottom:0}.notification-service-icon{display:grid;place-items:center;flex-shrink:0;width:39px;height:39px;border:1px solid #dceae9;background:#f0f8f6;border-radius:10px;color:var(--teal)}.notification-service-icon svg{width:19px;height:19px}.notification-service>div:nth-child(2){flex:1;min-width:0}.notification-service h3{font-size:13px}.notification-service p{color:var(--muted);font-size:11px;margin-top:4px}.notification-statusline{display:flex;gap:13px;align-items:center;margin-bottom:25px;font-size:11px}.notification-guidance{display:grid;gap:15px;font-size:12px;line-height:1.9;color:var(--muted)}.notification-grid .panel,.notification-settings-layout>.panel{min-width:0}.notification-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 23px}.notification-facts span{display:block;font-size:10px;color:var(--muted);margin-bottom:5px}.notification-facts strong{font-weight:600;font-size:12px;overflow-wrap:anywhere}.notification-provenance{display:flex;gap:15px;justify-content:space-between;border-top:1px solid var(--line);margin-top:23px;padding-top:15px;font-size:10px;color:var(--muted)}.notification-message{padding:25px;background:#fbfdfd;min-height:260px;border-radius:0 0 var(--radius) var(--radius)}.notification-message pre{font:12px/2 ui-monospace,SFMono-Regular,"PingFang SC","Microsoft YaHei",monospace;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.notification-ai-result{font-size:12px;line-height:1.9;margin-bottom:23px}.notification-ai-result h3{font-size:12px;color:#567180;margin:18px 0 6px}.notification-ai-result h3:first-child{margin-top:0}.notification-ai-result ul{padding-left:19px;margin:5px 0}.notification-recipients{border:0;padding:0;margin:0 0 22px}.notification-recipients legend{font-size:12px;font-weight:600;margin-bottom:12px}.notification-recipient{display:flex;gap:12px;align-items:flex-start;padding:12px 13px;border:1px solid var(--line);border-radius:7px;margin-bottom:8px;cursor:pointer}.notification-recipient input{margin-top:5px;width:16px;height:16px;accent-color:var(--teal)}.notification-recipient:has(input:checked){background:#f1f9f7;border-color:#a6d1c9}.notification-recipient strong{font-size:12px;font-weight:600}.notification-recipient small{display:block;color:var(--muted);font-size:10px;margin-top:3px;overflow-wrap:anywhere}.notification-send-confirm{padding-top:17px;border-top:1px solid var(--line)}.notification-retry{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;max-width:260px}.notification-retry .check-row{font-size:10px}.notification-retry .form-message{width:100%}.notification-retry .form-error{font-size:11px;margin:0}.notification-success{padding:12px 15px;background:var(--teal-pale);border:1px solid #cbe6df;border-radius:7px;color:var(--teal-dark);font-size:12px;margin:18px 0}.notification-settings-layout .required,.notification-grid .required{font-size:10px;color:var(--muted);font-weight:400;margin-left:5px}@media(max-width:1150px){.notification-grid,.notification-settings-layout{grid-template-columns:minmax(0,1fr)}.notification-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.notification-service>span.badge{margin-left:auto}.notification-grid>.stack{grid-template-columns:minmax(0,1fr)}.notification-boundary small{display:none}}@media(max-width:650px){.notification-subnav{gap:3px;padding:4px}.notification-subnav a{font-size:11px;padding:7px 9px}.notification-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.notification-message{padding:18px}.notification-service{flex-wrap:wrap;gap:10px}.notification-service>div:nth-child(2){flex-basis:calc(100% - 55px)}.notification-service>.badge{margin-left:49px!important}.notification-service>.text-link{margin-left:auto}.notification-provenance{flex-direction:column;gap:7px}}
/* Manual notification cards: this preview is independent of the console theme. */
.notification-card-preview-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.notification-card-sample{--card-canvas:#edf1f6;--card-bg:#fff;--card-ink:#1b3046;--card-muted:#637587;--card-line:#e1e8ee;--card-accent:#126f67;--card-tint:#eaf6f2;--card-soft:#f7f9fb;background:var(--card-canvas);padding:18px;border-radius:18px;color:var(--card-ink);min-width:0}
.notification-card-sample[data-card-theme=dark]{--card-canvas:#121820;--card-bg:#222c37;--card-ink:#f0f4f7;--card-muted:#9baab9;--card-line:#35424e;--card-accent:#6ed1bb;--card-tint:#253e3d;--card-soft:#28343f}
.notification-card-mode{font-size:12px;font-weight:600;color:var(--card-muted);margin-bottom:12px}
.notification-card-content{background:var(--card-bg);border:1px solid var(--card-line);border-radius:12px;padding:22px}
.notification-card-title{display:flex;gap:12px;align-items:center;justify-content:space-between}.notification-card-title strong{font-size:21px;line-height:1.5}.notification-card-title>span{font-size:11px;white-space:nowrap;color:var(--card-accent);background:var(--card-tint);border-radius:20px;padding:4px 9px}
.notification-card-task{font-size:13px;color:var(--card-muted);padding-bottom:18px;border-bottom:1px solid var(--card-line);overflow-wrap:anywhere}
.notification-card-state{font-weight:600;font-size:14px;display:flex;align-items:center;gap:7px}.notification-card-state svg{width:16px;height:16px;color:var(--card-accent)}
.notification-card-counts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.notification-card-counts>div{background:var(--card-tint);color:var(--card-accent);padding:15px;border-radius:8px}.notification-card-counts>div+div{color:var(--card-ink);background:var(--card-soft)}.notification-card-counts span{font-size:12px;display:block}.notification-card-counts strong{font-size:30px;line-height:1.8;display:block;overflow-wrap:anywhere}.notification-card-counts small{font-weight:400;font-size:11px;margin-left:8px}
.notification-card-totals{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--card-muted);border-bottom:1px solid var(--card-line);padding-bottom:18px}
.notification-card-content h3{font-size:14px;margin:20px 0 10px}.notification-card-summary{font-size:13px;white-space:pre-wrap;line-height:1.8;overflow-wrap:anywhere}.notification-card-muted{font-size:12px;line-height:1.8;color:var(--card-muted)}
.notification-card-content dl{font-size:12px;margin:20px 0}.notification-card-content dl>div{display:flex;justify-content:space-between;gap:15px;margin:10px 0}.notification-card-content dt{color:var(--card-muted);flex-shrink:0}.notification-card-content dd{margin:0;text-align:right;overflow-wrap:anywhere}
.notification-card-write{border-radius:6px;padding:11px;background:var(--card-tint);color:var(--card-accent);font-size:12px;font-weight:600}.notification-card-button{margin-top:14px;text-align:center;border-radius:7px;background:var(--card-accent);color:var(--card-bg);padding:13px;font-size:13px;font-weight:600}
@media(max-width:820px){.notification-card-preview-pair{grid-template-columns:1fr}.notification-card-content{padding:18px}}
