:root{--ink:#17191c;--muted:#6d727a;--line:#dde0e3;--soft:#f3f4f4;--white:#fff;--yellow:#ffd000;--orange:#f67a28;--teal:#238675;--red:#c9423a;--green:#26764f;--shadow:0 16px 38px rgba(25,28,31,.1)}
*{box-sizing:border-box}html{font-family:"Microsoft YaHei UI","PingFang SC",Arial,sans-serif;color:var(--ink);background:#eef0ef}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.topbar{height:64px;background:#1d1f21;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px}.brand em{font-style:normal;font-weight:500;color:#aeb2b6;font-size:14px;border-left:1px solid #555;padding-left:12px}.brand-mark{width:27px;height:27px;position:relative;display:inline-block}.brand-mark i{position:absolute;width:10px;height:10px;background:var(--yellow);transform:rotate(45deg)}.brand-mark i:nth-child(1){left:8px;top:0}.brand-mark i:nth-child(2){right:0;top:8px;background:#ff9f1a}.brand-mark i:nth-child(3){left:8px;bottom:0;background:#ff7a20}.brand-mark i:nth-child(4){left:0;top:8px;background:#ffbd00}.top-actions{display:flex;align-items:center;gap:12px}.status-pill{font-size:13px;color:#c9cdcf;display:flex;align-items:center;gap:7px}.status-pill b{width:8px;height:8px;border-radius:50%;background:#7b8084}.status-pill.online{color:#bdebd3}.status-pill.online b{background:#3fc481;box-shadow:0 0 0 4px rgba(63,196,129,.12)}.icon-btn{width:34px;height:34px;border:1px solid #4b4f52;background:transparent;color:inherit;display:grid;place-items:center;border-radius:4px;font-size:17px}.shell{max-width:1520px;margin:0 auto;background:#fff;min-height:calc(100vh - 64px)}.hero-band{min-height:194px;background:var(--yellow);padding:31px 46px 28px;display:flex;align-items:end;justify-content:space-between;gap:32px}.eyebrow,.card-kicker{font-size:11px;line-height:1.2;font-weight:800;letter-spacing:1.6px;margin:0 0 11px;color:#555342}.hero-band h1{font-size:34px;line-height:1.2;margin:0 0 9px;letter-spacing:0}.hero-copy{font-size:14px;line-height:1.7;margin:0;max-width:720px;color:#514b31}.hero-stats{display:flex;align-items:stretch;background:rgba(255,255,255,.38);border:1px solid rgba(23,25,28,.14);min-width:278px}.hero-stats div{padding:18px 25px;display:flex;flex-direction:column;min-width:135px}.hero-stats div+div{border-left:1px solid rgba(23,25,28,.15)}.hero-stats strong{font-size:25px}.hero-stats span{font-size:12px;color:#5e5839;margin-top:4px}.workspace-grid{display:grid;grid-template-columns:350px minmax(0,1fr);min-height:650px}.sidebar{background:#f7f8f7;border-right:1px solid var(--line);padding:31px 28px}.main-panel{padding:31px 36px 50px;min-width:0}.step-heading{display:flex;align-items:flex-start;gap:13px}.step-heading h2{font-size:17px;line-height:1.35;margin:0 0 3px}.step-heading p{font-size:12px;color:var(--muted);margin:0;line-height:1.5}.step-no{width:30px;height:30px;background:#202224;color:#fff;display:grid;place-items:center;font-size:11px;font-weight:800;flex:none}.step-heading.compact{margin-bottom:16px}.panel-heading{margin-bottom:21px}.connect-form{display:grid;gap:11px;margin-top:19px}.connect-form label{font-size:12px;font-weight:700;display:grid;grid-template-columns:45px 1fr;align-items:center}.connect-form input,.store-tools input,.filter-row input{width:100%;height:39px;border:1px solid #cfd2d4;background:#fff;padding:0 11px;outline:none}.connect-form input:focus,.store-tools input:focus,.filter-row input:focus{border-color:#5a5f62;box-shadow:0 0 0 2px rgba(33,36,38,.06)}.primary-btn,.secondary-btn,.ghost-btn,.text-btn{border:0;border-radius:3px}.primary-btn{height:42px;background:#1d1f21;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;gap:9px}.primary-btn:hover:not(:disabled){background:#000}.btn-icon{color:var(--yellow);font-size:18px}.notice{font-size:11px;line-height:1.55;padding:10px 12px;border-left:3px solid #bbb;margin-top:11px}.notice.muted{color:#777;background:#eceeed}.notice.success{color:#175c3a;background:#e3f2e9;border-color:#3b9d6a}.notice.warn{color:#745112;background:#fff2c9;border-color:#e0ac21}.notice.error{color:#862b27;background:#fbe9e8;border-color:#c9423a}.divider{height:1px;background:var(--line);margin:27px 0}.store-tools{display:grid;grid-template-columns:1fr 39px;gap:7px}.ghost-btn{border:1px solid #cfd2d4;background:#fff;font-size:20px}.store-actions{display:flex;align-items:center;gap:12px;margin:9px 0}.text-btn{background:transparent;color:#34383b;padding:2px 0;font-size:12px;text-decoration:underline;text-underline-offset:3px}.store-actions span{margin-left:auto;color:var(--muted);font-size:11px}.store-list{height:294px;overflow:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.store-item{display:grid;grid-template-columns:20px 1fr;gap:9px;padding:10px 4px;border-bottom:1px solid #e8e9e9;cursor:pointer;align-items:start}.store-item:hover{background:#fff}.store-item input{margin-top:2px;accent-color:#1f2224}.store-item strong{display:block;font-size:12px;line-height:1.45}.store-item small{color:#858a8e;font-size:10px;line-height:1.4}.empty-state{height:100%;display:grid;place-items:center;color:#92979a;font-size:12px}.action-grid{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(400px,1.22fr);gap:17px}.action-card{border:1px solid var(--line);padding:22px;background:#fff;min-height:225px;position:relative}.action-card:hover{border-color:#b5b8ba}.card-kicker{color:#8a8d8e;margin-bottom:13px}.card-title{display:flex;align-items:center;gap:12px}.card-title h3{font-size:18px;margin:0;letter-spacing:0}.card-icon{width:37px;height:37px;display:grid;place-items:center;color:#fff;font-size:21px;font-weight:800}.card-icon.orange{background:var(--orange)}.card-icon.teal{background:var(--teal)}.action-card>p{font-size:12px;line-height:1.65;color:var(--muted);margin:16px 0}.secondary-btn{height:39px;background:#fff;border:1px solid #323638;color:#202326;font-weight:700;padding:0 17px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.secondary-btn:hover:not(:disabled){background:#f1f2f2}.export-card{display:flex;flex-direction:column}.export-actions{margin-top:auto}.schedule-settings{border-top:1px solid var(--line);margin-top:17px;padding-top:14px}.schedule-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.schedule-head>span{font-size:9px;color:#8b9093}.schedule-toggle strong{font-size:11px;color:#2d3134}.schedule-controls{display:grid;grid-template-columns:auto 106px minmax(82px,1fr);gap:8px;align-items:center;margin-top:11px}.schedule-controls label{font-size:10px;color:#676c70;white-space:nowrap}.schedule-controls input{height:36px;min-width:0;border:1px solid #cfd2d4;background:#fff;padding:0 8px;outline:none}.schedule-controls input:focus{border-color:#5a5f62;box-shadow:0 0 0 2px rgba(33,36,38,.06)}.schedule-controls .ghost-btn{height:36px;padding:0 10px;font-size:11px;font-weight:700;white-space:nowrap}.schedule-meta{min-height:30px;margin-top:9px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;color:#757a7e;font-size:9px;line-height:1.55}.schedule-meta span{overflow-wrap:anywhere}.schedule-meta a{color:#216f61;font-weight:700;white-space:nowrap;text-underline-offset:2px}.compare-card{display:grid;grid-template-columns:1fr 176px;grid-template-areas:"k k" "t d" "p d" "o b";column-gap:20px}.compare-card .card-kicker{grid-area:k}.compare-card .card-title{grid-area:t}.compare-card>p{grid-area:p;margin:9px 0}.dropzone{grid-area:d;border:1px dashed #aeb2b4;background:#f7f8f7;min-height:126px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:12px;cursor:pointer}.dropzone.dragging{border-color:var(--teal);background:#edf7f4}.dropzone input{display:none}.dropzone .upload-symbol{font-size:25px;color:var(--teal);line-height:1}.dropzone strong{font-size:11px;margin:8px 0 4px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropzone small{font-size:9px;color:#929698}.compare-options{grid-area:o;display:flex;align-items:center;gap:18px;min-width:0}.compare-options>label:first-child{display:grid;grid-template-columns:auto minmax(70px,1fr) 30px;gap:8px;align-items:center;font-size:10px;color:#616568;min-width:195px}.compare-options input[type=range]{width:100%;accent-color:var(--teal)}.toggle-label{display:flex;align-items:center;gap:7px;font-size:10px;color:#616568;white-space:nowrap}.toggle-label input{display:none}.toggle{width:31px;height:17px;border-radius:10px;background:#c5c8ca;position:relative;flex:none}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:11px;height:11px;border-radius:50%;background:#fff;transition:.18s}.toggle-label input:checked+.toggle{background:var(--teal)}.toggle-label input:checked+.toggle:after{left:17px}.compare-card>.primary-btn{grid-area:b;height:39px;align-self:end}.job-panel{margin-top:18px;border:1px solid var(--line);padding:17px 19px;background:#fafbfa}.job-top{display:flex;justify-content:space-between;align-items:center}.job-top>div{display:flex;align-items:center;gap:12px}.job-label{font-size:9px;font-weight:800;background:#272a2c;color:#fff;padding:4px 7px}.job-top strong{font-size:12px}.job-top>span{font-weight:800;font-size:12px}.progress-track{height:6px;background:#e1e3e3;margin-top:13px;overflow:hidden}.progress-track span{display:block;width:0;height:100%;background:var(--yellow);transition:width .25s}.error-text{font-size:11px;color:var(--red);margin-top:7px}.hidden{display:none!important}.result-panel{margin-top:20px;border-top:3px solid #202224;padding-top:20px}.result-head,.result-actions,.filter-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.result-head h2{font-size:21px;margin:0}.result-head .card-kicker{margin-bottom:4px}.result-actions .icon-btn{color:#333;border-color:#bbb}.summary-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:18px 0}.summary-card{background:#fff;padding:13px}.summary-card strong{display:block;font-size:21px}.summary-card span{font-size:10px;color:var(--muted)}.summary-card.different strong{color:var(--red)}.summary-card.same strong{color:var(--green)}.filter-row{margin-bottom:12px;flex-wrap:wrap}.filter-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto;min-width:0}.filter-tools>input{width:260px}.category-filter{height:39px;border:1px solid #cfd2d4;background:#fff;display:flex;align-items:center;min-width:205px}.category-filter span{padding:0 9px;color:#777d80;font-size:10px;white-space:nowrap;border-right:1px solid #e1e3e4}.category-filter select{height:37px;min-width:0;flex:1;border:0;background:#fff;padding:0 28px 0 9px;outline:none;color:#282c2f;font-size:11px}.category-filter:focus-within{border-color:#5a5f62;box-shadow:0 0 0 2px rgba(33,36,38,.06)}.segmented{display:flex;border:1px solid #cfd1d2}.segmented button{height:34px;padding:0 14px;border:0;border-right:1px solid #cfd1d2;background:#fff;font-size:11px}.segmented button:last-child{border-right:0}.segmented button.active{background:#202224;color:#fff}.table-wrap{overflow:auto;border:1px solid var(--line);max-height:470px}table{border-collapse:collapse;width:100%;min-width:940px;font-size:11px}th{position:sticky;top:0;background:#eff1f0;z-index:2;text-align:left;padding:10px;border-bottom:1px solid #cdd0d1;color:#54595c}td{padding:10px;border-bottom:1px solid #e5e7e7;vertical-align:top;line-height:1.45}td.price{font-variant-numeric:tabular-nums;font-weight:700}.category-text{color:#257465}.badge{display:inline-block;padding:3px 6px;border:1px solid #b9bdc0;font-size:9px;white-space:nowrap}.badge.不同{color:#9c2924;background:#fce9e8;border-color:#e8b7b4}.badge.相同{color:#21633f;background:#e8f4ed;border-color:#b9ddc8}.badge.未匹配,.badge.门店独有{color:#6a5520;background:#fff5d9;border-color:#e4d19a}.match-note{color:#8a5c16}.table-hint{font-size:10px;color:var(--muted);text-align:right}.toast{position:fixed;right:25px;bottom:25px;background:#202224;color:#fff;padding:12px 16px;box-shadow:var(--shadow);font-size:12px;transform:translateY(90px);opacity:0;transition:.2s;z-index:50;max-width:360px}.toast.show{transform:translateY(0);opacity:1}.toast.error{background:#942f29}dialog{border:0;padding:30px 34px;max-width:560px;width:calc(100% - 32px);box-shadow:var(--shadow);border-top:5px solid var(--yellow)}dialog::backdrop{background:rgba(14,16,17,.62)}dialog h2{margin:0 0 18px}dialog ol{padding-left:21px;font-size:13px;line-height:1.8}dialog li+li{margin-top:8px}.dialog-note{font-size:11px;color:var(--muted);border-left:3px solid var(--teal);padding:8px 12px;background:#f1f5f4}.dialog-close{position:absolute;right:14px;top:12px;border:0;background:transparent;font-size:24px}.loading-line{height:10px;background:linear-gradient(90deg,#e7e9e8,#f7f8f7,#e7e9e8);background-size:200% 100%;animation:load 1.2s linear infinite;margin:10px 4px}@keyframes load{to{background-position:-200% 0}}
@media(max-width:980px){.hero-band{align-items:start}.workspace-grid{grid-template-columns:300px minmax(0,1fr)}.action-grid{grid-template-columns:1fr}.compare-card{grid-template-columns:1fr 180px}.summary-cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:740px){.topbar{padding:0 16px}.brand em{display:none}.shell{width:100%}.hero-band{padding:25px 20px;display:block}.hero-band h1{font-size:27px}.hero-stats{margin-top:20px;width:100%}.hero-stats div{flex:1}.workspace-grid{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);padding:25px 20px}.store-list{height:210px}.main-panel{padding:25px 20px 40px}.action-grid{display:block}.action-card+.action-card{margin-top:14px}.compare-card{display:block}.dropzone{min-height:110px;margin:14px 0}.compare-options{display:grid;gap:12px;margin-bottom:14px}.export-actions .secondary-btn{width:100%}.schedule-controls{grid-template-columns:auto 1fr}.schedule-controls .ghost-btn{grid-column:1/-1}.schedule-meta{display:block}.schedule-meta a:not([hidden]){display:inline-block;margin-top:3px}.summary-cards{grid-template-columns:repeat(2,1fr)}.filter-row{align-items:stretch;flex-direction:column}.filter-tools{width:100%;margin-left:0;align-items:stretch;flex-direction:column}.filter-tools>input,.category-filter{width:100%;max-width:none}.segmented{overflow-x:auto}.segmented button{white-space:nowrap;flex:1}.result-head{align-items:flex-start}.result-actions{flex-direction:column-reverse;align-items:flex-end}.result-actions .secondary-btn{font-size:10px;padding:0 9px}.hero-copy{font-size:12px}}

/* Result sorting and normalized specification details. */
.result-sort-tools{display:flex;align-items:center;gap:5px;flex-wrap:wrap;min-width:0}
.sort-tools-label{font-size:10px;color:var(--muted);margin-right:2px}
.sort-btn{height:30px;border:1px solid #cfd2d4;background:#fff;color:#454a4d;padding:0 8px;font-size:10px;white-space:nowrap}
.sort-btn:hover{background:#f2f4f3;border-color:#8f9698}
.sort-btn.active{background:#202224;color:#fff;border-color:#202224}
.sort-btn b{font-size:11px;margin-left:4px;color:var(--teal)}
.sort-btn.active b{color:var(--yellow)}
.spec-compare-cell{min-width:170px;color:#454a4d}
.spec-quantity-pair{display:flex;align-items:center;gap:6px;white-space:nowrap}
.spec-quantity-pair b{font-size:11px}
.spec-quantity-pair i{font-style:normal;color:var(--teal)}
.spec-compare-cell small{display:block;font-size:10px;line-height:1.45;color:#72787b}
.spec-compare-cell .unit-difference{font-weight:700}
.spec-compare-cell .unit-difference.is-up{color:var(--red)}
.spec-compare-cell .unit-difference.is-down{color:var(--green)}
.spec-compare-cell .unit-difference.is-flat{color:var(--teal)}
.spec-comparison-note,.quantity-text,.unit-price-text{color:#72787b}
.spec-attribute-difference{color:#9b6418}
.spec-text{color:#555b5e}
@media(max-width:1100px){.result-sort-tools{width:100%;order:3}.filter-tools{flex-wrap:wrap}.spec-compare-cell{min-width:145px}}

/* Hidden is controlled from JavaScript as the login flow completes.  The
   compact layout must collapse the viewport as well, otherwise the iframe's
   author stylesheet can keep painting a full page even when [hidden] is set. */
.embedded-viewport[hidden],
.embedded-viewport iframe[hidden] { display: none !important; }
.embedded-login.is-connected .embedded-toolbar { display: none; }

.account-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;margin-top:12px;padding:12px;border:1px solid #bfe0cd;background:#edf8f1}
.account-card[hidden]{display:none!important}
.account-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#238675;color:#fff;font-size:17px;font-weight:800;letter-spacing:-1px}
.account-details{min-width:0;display:grid;gap:3px}
.account-kicker{font-size:9px;letter-spacing:.8px;color:#4f7c68;text-transform:uppercase}
.account-details strong{font-size:13px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1f4e3a}
.account-details small{font-size:10px;color:#6d8177;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-logout{height:30px;border:1px solid #8bb9a2;background:#fff;color:#28674f;padding:0 9px;border-radius:3px;font-size:10px;white-space:nowrap}
.account-logout:hover:not(:disabled){background:#dff1e7;border-color:#5c9d7d}
.embedded-login.is-connected .embedded-status{margin-top:8px}
@media(max-width:740px){.account-card{grid-template-columns:38px minmax(0,1fr);gap:9px}.account-avatar{width:36px;height:36px}.account-logout{grid-column:1/-1;width:100%;height:34px}}
 .qr-login{display:grid;gap:10px;margin-top:18px}.qr-frame{width:214px;height:214px;margin:0 auto;border:1px solid #d9dcdd;background:#fafbfa;display:grid;place-items:center;position:relative}.qr-frame img{display:block;width:202px;height:202px}.qr-placeholder{display:grid;place-items:center;gap:7px;color:#959b9d;text-align:center}.qr-placeholder span{font-size:54px;line-height:1;color:#c6cbcc}.qr-placeholder small{font-size:11px}.qr-status-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:24px;color:#6d727a;font-size:11px}.qr-status-row .text-btn{color:#238675}.qr-check{width:100%;font-size:11px}.qr-frame img[hidden],.qr-placeholder[hidden]{display:none}
.login-box{margin-top:18px}.login-modes{display:grid;grid-template-columns:1.05fr 1fr 1.15fr;border-bottom:1px solid #cfd2d4;margin-bottom:4px}.login-modes button{height:34px;border:0;border-bottom:2px solid transparent;background:transparent;color:#72777b;font-size:11px;font-weight:700;padding:0 4px;white-space:nowrap}.login-modes button.active{color:#202224;border-bottom-color:var(--yellow)}.embedded-login{display:grid;gap:8px;padding-top:10px}.embedded-toolbar{display:flex;align-items:center;justify-content:space-between;color:#666d70;font-size:10px}.embedded-toolbar .ghost-btn{width:30px;height:28px;font-size:17px;line-height:1}.embedded-login iframe{display:block;width:100%;height:470px;border:1px solid #d5d9da;background:#fff}.embedded-status{font-size:10px;line-height:1.45;color:#6d727a;background:#eceeed;border-left:3px solid #bbb;padding:8px 9px;min-height:31px}.embedded-status.success{color:#175c3a;background:#e3f2e9;border-color:#3b9d6a}.embedded-status.error{color:#862b27;background:#fbe9e8;border-color:#c9423a}.embedded-status.warn{color:#745112;background:#fff2c9;border-color:#e0ac21}.password-login{display:grid;gap:12px;padding-top:19px}.password-login label{font-size:12px;font-weight:700;display:grid;gap:7px}.password-login input{width:100%;height:39px;border:1px solid #cfd2d4;background:#fff;padding:0 11px;outline:none}.password-login input:focus{border-color:#5a5f62;box-shadow:0 0 0 2px rgba(33,36,38,.06)}
.password-check{width:100%;font-size:11px}
.workspace-grid.embedded-active{grid-template-columns:760px minmax(0,1fr)}
.workspace-grid.embedded-active .embedded-login iframe{height:500px}
.workspace-grid.embedded-active .action-grid{grid-template-columns:1fr}
.workspace-grid.embedded-active .compare-card{grid-template-columns:minmax(0,1fr) 145px}
.workspace-grid.embedded-active{display:block}
.workspace-grid.embedded-active .sidebar{border-right:0;border-bottom:1px solid var(--line)}
.workspace-grid.embedded-active .embedded-login iframe{max-width:960px;height:520px}
.workspace-grid.embedded-active .action-grid{grid-template-columns:minmax(260px,.72fr) minmax(400px,1.28fr)}
.workspace-grid.embedded-active .compare-card{grid-template-columns:1fr 176px}
@media(max-width:1100px) and (min-width:741px){.workspace-grid.embedded-active{grid-template-columns:620px minmax(0,1fr)}.workspace-grid.embedded-active .embedded-login iframe{width:100%;}}
@media(max-width:740px){.workspace-grid.embedded-active{display:block}.embedded-login iframe{height:500px}}

/* Compact authentication surface: keep the remote page interactive while only
   exposing its account-login pane inside the tool. */
.workspace-grid.embedded-active{display:grid;grid-template-columns:470px minmax(0,1fr);align-items:start}
.workspace-grid.embedded-active .sidebar{border-right:1px solid var(--line);border-bottom:0}
.workspace-grid.embedded-active .main-panel{min-width:0}
.workspace-grid.embedded-active .action-grid{grid-template-columns:minmax(260px,.72fr) minmax(400px,1.28fr)}
.workspace-grid.embedded-active .compare-card{grid-template-columns:1fr 176px}
.embedded-login{gap:10px;padding-top:12px}
.embedded-toolbar{min-height:31px}
.embedded-toolbar>div{display:flex;align-items:baseline;gap:8px}
.embedded-toolbar strong{font-size:12px;color:#25292b}
.embedded-toolbar span{font-size:10px;color:#8a9093}
.embedded-toolbar .ghost-btn{width:31px;height:29px}
.embedded-viewport{height:500px;overflow:hidden;border:1px solid #d5d9da;background:#fff;position:relative}
.embedded-viewport iframe{display:block;width:980px;height:610px;border:0;background:#fff;transform:translateX(-590px);transform-origin:top left}
.workspace-grid.embedded-active .embedded-viewport iframe{height:520px}
.embedded-status{margin-top:0}
.compare-card .card-title h3{font-size:16px;white-space:nowrap}
@media(max-width:1100px) and (min-width:741px){.workspace-grid.embedded-active{grid-template-columns:420px minmax(0,1fr)}.workspace-grid.embedded-active .action-grid{grid-template-columns:1fr}.workspace-grid.embedded-active .compare-card{grid-template-columns:1fr 160px}.embedded-viewport iframe{transform:translateX(-560px)}}
@media(max-width:740px){.workspace-grid.embedded-active{display:block}.workspace-grid.embedded-active .sidebar{border-right:0;border-bottom:1px solid var(--line)}.embedded-viewport{height:500px}.embedded-viewport iframe{width:960px;height:520px;transform:translateX(-625px)}.embedded-toolbar span{display:none}}

/* Between the phone and desktop breakpoints the embedded login sidebar and
   the action cards cannot share a narrow row. Stack them before the card's
   intrinsic grid width creates horizontal page overflow. */
@media(max-width:900px) and (min-width:741px){
  .workspace-grid.embedded-active{display:block}
  .workspace-grid.embedded-active .sidebar{border-right:0;border-bottom:1px solid var(--line)}
  .workspace-grid.embedded-active .main-panel{padding:28px 30px 44px}
  .workspace-grid.embedded-active .action-grid{grid-template-columns:minmax(0,1fr)}
  .workspace-grid.embedded-active .action-card{min-width:0}
  .workspace-grid.embedded-active .compare-card{grid-template-columns:minmax(0,1fr) 160px}
  .embedded-viewport iframe{width:100%;height:520px;transform:none}
}

/* Keep the two action cards in one column until the main panel has enough
   room for both cards' readable minimum widths. */
@media(max-width:1220px) and (min-width:901px){
  .workspace-grid.embedded-active .action-grid{grid-template-columns:minmax(0,1fr)}
  .workspace-grid.embedded-active .action-card{min-width:0}
  /* Keep the same focused crop as desktop: the remote login page is a fixed
     layout, so shrinking the iframe itself would expose its illustration
     instead of the account form. */
  .workspace-grid.embedded-active .embedded-viewport iframe{width:980px;transform:translateX(-590px)}
}

.export-selection-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-5px 0 12px;color:#73797c;font-size:10px}
.export-selection-meta .text-btn{font-size:10px;color:#216f61}
.export-fields-dialog{width:min(860px,calc(100% - 32px));max-width:860px;max-height:calc(100vh - 32px);padding:0;border:0;border-top:5px solid var(--yellow);box-shadow:var(--shadow);overflow:hidden}
.export-fields-form{padding:25px 28px 20px;display:flex;flex-direction:column;max-height:calc(100vh - 32px)}
.export-fields-dialog .dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:16px}
.export-fields-dialog .dialog-head h2{font-size:22px;margin:0 0 6px}
.export-fields-dialog .dialog-head p:not(.eyebrow){font-size:11px;color:var(--muted);line-height:1.6;margin:0;max-width:650px}
.export-fields-dialog .dialog-close{position:static;width:30px;height:30px;border:1px solid #cfd2d4;background:#fff;color:#6e7477;font-size:19px;line-height:1;flex:none}
.export-field-toolbar{display:flex;align-items:center;gap:15px;padding:13px 0 10px;border-bottom:1px solid var(--line)}
.export-field-toolbar .text-btn{font-size:11px}
.export-field-toolbar span{margin-left:auto;color:var(--muted);font-size:11px}
.export-field-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 22px;max-height:460px;overflow:auto;padding:17px 5px 18px 0}
.export-field-group{border:1px solid var(--line);background:#fafbfa;padding:13px 14px}
.export-field-group h3{font-size:12px;margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid #e3e5e5}
.export-field-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px}
.export-field-group label{display:flex;align-items:flex-start;gap:7px;font-size:11px;color:#4d5356;line-height:1.35;cursor:pointer}
.export-field-group input{margin:1px 0 0;accent-color:var(--teal)}
.export-fields-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:15px;color:var(--muted);font-size:10px}
.export-fields-foot>div{display:flex;align-items:center;gap:8px;flex:none}
.export-fields-foot .primary-btn,.export-fields-foot .secondary-btn{height:36px;font-size:11px}
@media(max-width:740px){.export-fields-form{padding:20px 18px 16px}.export-field-groups{grid-template-columns:1fr;max-height:calc(100vh - 330px);gap:12px}.export-field-group>div{grid-template-columns:repeat(2,minmax(0,1fr))}.export-fields-foot{display:block}.export-fields-foot>div{justify-content:flex-end;margin-top:12px}.export-field-toolbar{gap:10px;flex-wrap:wrap}.export-field-toolbar span{margin-left:0}}

/* In-page handoff: the exported store catalog becomes the B side of the AI
   matcher without opening a second app or browser surface. */
.catalog-transfer-notice{grid-area:o;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #b9dfcf;border-radius:9px;background:#effaf4;color:#1d604d;min-width:0}
.catalog-transfer-notice .transfer-check{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#258b70;color:#fff;font-weight:800;flex:none}
.catalog-transfer-notice>div{display:grid;gap:2px;min-width:0}
.catalog-transfer-notice strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.catalog-transfer-notice small{font-size:10px;color:#5c8175;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.catalog-transfer-notice .text-btn{margin-left:auto;flex:none;font-size:10px}
.compare-card.ai-transfer-active{border-color:#8bc9b5;box-shadow:0 8px 22px rgba(25,139,121,.12)}
.compare-card.ai-transfer-active .dropzone{border-color:#8bc9b5;background:#f3fbf7}
.compare-card.ai-self-duplicate-active{border-color:#2d9a7d;box-shadow:0 8px 22px rgba(25,139,121,.16)}
.compare-card.ai-self-duplicate-active .catalog-transfer-notice{background:#eaf8f1;border-color:#79c6a8}
.strict-download-btn{color:#216f61;border-color:#9bcbbd;background:#f5fbf8}
.strict-download-btn:hover:not(:disabled){background:#e8f6f0;border-color:#2d9a7d;color:#155747}
.mode-switcher.transfer-locked{opacity:.55;pointer-events:none;filter:saturate(.6)}
.ai-score{display:grid;grid-template-columns:auto;gap:4px;min-width:82px}
.ai-score b{font-size:11px;font-variant-numeric:tabular-nums}
.ai-score i{display:block;height:5px;border-radius:99px;background:#2e8b72;max-width:96px;position:relative}
.ai-score i::before{content:"";position:absolute;inset:0;background:#e5eeeb;border-radius:99px;z-index:-1;transform:scaleX(1.02)}
.ai-score i.medium{background:#d6a229}.ai-score i.low{background:#c4584e}
.ai-product{display:grid;gap:3px;min-width:130px}
.ai-product strong{font-size:11px;line-height:1.35}
.ai-product small,.ai-spec small{font-size:9px;color:#778487;line-height:1.35}
.ai-product .ai-identifier,.ai-suggestion .ai-identifier{color:#2d7665;font-variant-numeric:tabular-nums;word-break:break-all}
.identifier-text{color:#2d7665;font-variant-numeric:tabular-nums;word-break:break-all}
.identifier-cell{font-size:10px;color:#2d7665;font-variant-numeric:tabular-nums;word-break:break-all;white-space:normal}
.month-sale-cell{font-variant-numeric:tabular-nums;white-space:nowrap;color:#375d55;font-weight:700}
.store-name-cell{min-width:125px;white-space:normal}
.ai-no-match{display:grid;gap:5px;min-width:150px;color:#9b5b57;font-size:10px}
.ai-no-match>span{font-weight:700}
.ai-suggestion{display:grid;gap:2px;padding:6px 7px;border-left:3px solid #d6a229;background:#fff9e8;color:#6e5a2d}
.ai-suggestion span{font-size:9px;color:#a27618;font-weight:800}
.ai-suggestion strong{font-size:10px;line-height:1.35;color:#5c5746}
.ai-suggestion small{font-size:9px;color:#82765b;line-height:1.35}
.ai-spec{display:grid;gap:3px;min-width:110px}
.ai-spec b{font-size:10px;color:#3c5551}
.ai-source-price,.source-price{display:grid;gap:3px;min-width:100px;white-space:nowrap}
.ai-source-price strong,.source-price strong{font-size:12px;color:#1d6b57;font-variant-numeric:tabular-nums}
.ai-source-price small,.source-price small{font-size:9px;color:#778487}
.ai-price-delta{font-size:9px;color:#6e7779}.ai-price-delta.up{color:#b05239}.ai-price-delta.down{color:#277b60}
.ai-auto{background:#e8f5ee!important;color:#216b4d!important}.ai-review{background:#fff5d6!important;color:#85651c!important}.ai-unmatched{background:#fce9e8!important;color:#a43c36!important}.ai-catalog-only{background:#fff0df!important;color:#995c26!important}
.semantic-duplicate{background:#e5f5ed!important;color:#17664c!important}.semantic-similar{background:#fff4cf!important;color:#81611b!important}.semantic-different{background:#fbe9e8!important;color:#a33b35!important}
.semantic-label{display:inline-block;padding:4px 7px;border:1px solid currentColor;border-radius:5px;font-size:10px;font-weight:800;white-space:nowrap}.semantic-group{display:block;margin-top:4px;color:#71807c;font-size:9px;font-variant-numeric:tabular-nums}
.ai-diagnostics{display:grid;gap:11px;margin:14px 0 16px;padding:14px 16px;border:1px solid #d7e7e0;background:#f6fbf8}
.ai-diagnostics-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.ai-diagnostics-head>div{display:grid;gap:3px;min-width:190px}
.ai-diagnostics-head strong{font-size:16px;color:#155b4d}
.ai-diagnostics-head small,.ai-diagnostics-head p,.ai-quality-note{font-size:10px;color:#71817d;line-height:1.5;margin:0}
.ai-diagnostics-head>p{max-width:520px;text-align:right}
.ai-diagnostic-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:#dce9e3;border:1px solid #dce9e3}
.ai-diagnostic-grid>div{display:grid;gap:2px;background:#fff;padding:9px 10px}
.ai-diagnostic-grid b{font-size:17px;color:#a35826;font-variant-numeric:tabular-nums}
.ai-diagnostic-grid span{font-size:10px;font-weight:800;color:#465b55}
.ai-diagnostic-grid small{font-size:9px;color:#84918e;line-height:1.35}
.ai-quality-note{padding-top:9px;border-top:1px solid #deebe5}
@media(max-width:740px){.catalog-transfer-notice{grid-column:1/-1}.catalog-transfer-notice .text-btn{white-space:nowrap}.ai-product{min-width:0}}
@media(max-width:740px){.ai-diagnostics-head{display:grid;gap:8px}.ai-diagnostics-head>p{text-align:left}.ai-diagnostic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.result-dashboard{display:grid;gap:12px;margin:18px 0 16px}
.dashboard-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.dashboard-kpi{background:#fff;padding:14px 15px;min-height:102px}
.dashboard-kpi>span{display:block;color:#697074;font-size:10px;margin-bottom:7px}
.dashboard-kpi strong{display:block;font-size:22px;line-height:1.1;font-variant-numeric:tabular-nums}
.dashboard-kpi strong.warn-number{color:#b36a15}.dashboard-kpi small{display:block;color:#8a9093;font-size:9px;margin-top:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi-track{height:5px;background:#e8ebeb;margin-top:9px;overflow:hidden}.kpi-track i{display:block;height:100%;background:var(--teal)}.kpi-track.confidence i{background:#2d7d6d}
.dashboard-panels{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.dashboard-panel{border:1px solid var(--line);background:#fff;padding:15px 17px}
.dashboard-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:13px}.dashboard-panel-head h3{font-size:15px;margin:0}.dashboard-panel-head>span{color:#8a9093;font-size:10px;white-space:nowrap}
.dashboard-panel-head .card-kicker{margin-bottom:5px}
.metric-bar-row{display:grid;grid-template-columns:112px 1fr 32px;align-items:center;gap:9px;margin:10px 0;font-size:10px;color:#596064}.metric-bar{height:8px;background:#edf0f0;overflow:hidden}.metric-bar i{display:block;height:100%}.metric-bar i.high{background:#2e8b72}.metric-bar i.medium{background:#d7a22a}.metric-bar i.low{background:#c4584e}.metric-bar-row strong{font-size:11px;text-align:right}
.dashboard-note{font-size:10px;line-height:1.5;color:#858b8f;padding-top:9px;margin:12px 0 0;border-top:1px solid #eef0f0}
.price-signal{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#e3e6e6;border:1px solid #e3e6e6}.price-signal>div{background:#fafbfa;padding:12px 10px}.price-signal strong{display:block;font-size:22px;line-height:1.05}.price-signal span{font-size:10px;color:#7c8386;display:block;margin-top:5px}.price-signal .same-number{color:var(--green)}.price-signal .different-number{color:var(--red)}
.store-dashboard{padding-bottom:10px}.store-review-list{display:grid;gap:0}.store-review-row{display:grid;grid-template-columns:minmax(0,1.6fr) 65px minmax(130px,1fr);align-items:center;gap:10px;border-top:1px solid #eef0f0;padding:9px 0;font-size:10px}.store-review-row strong{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.store-review-row span{color:#858b8f}.store-review-row b{color:#a85827;font-weight:600;text-align:right}.confidence-chip{display:inline-block;margin-top:4px;padding:2px 5px;border:1px solid #b9bdc0;border-radius:2px;font-size:9px;line-height:1.2}.confidence-chip.high{color:#21633f;background:#e8f4ed;border-color:#b9ddc8}.confidence-chip.medium{color:#816016;background:#fff6d9;border-color:#e7d399}.confidence-chip.low{color:#9c2924;background:#fce9e8;border-color:#e8b7b4}
@media(max-width:980px){.dashboard-kpis{grid-template-columns:repeat(3,1fr)}.dashboard-panels{grid-template-columns:1fr}}
@media(max-width:740px){.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-kpi{min-height:92px;padding:12px}.dashboard-panel{padding:13px}.dashboard-panel-head{display:block}.dashboard-panel-head>span{display:block;margin-top:5px}.store-review-row{grid-template-columns:minmax(0,1fr) 52px;gap:6px}.store-review-row b{grid-column:1/-1;text-align:left}.metric-bar-row{grid-template-columns:104px 1fr 30px}}

/* -------------------------------------------------------------------------
   Visual system refresh
   The existing DOM and API flow stay intact; these rules focus the page on
   one task at a time, improve scanability, and give the result state a true
   review workspace instead of a long appended report.
   ------------------------------------------------------------------------- */
:root{
  --ink:#172126;
  --muted:#68767a;
  --subtle:#8b9799;
  --line:#dbe3e1;
  --line-strong:#c7d1ce;
  --canvas:#edf2f0;
  --surface:#fff;
  --surface-soft:#f7faf9;
  --yellow:#ffd20a;
  --yellow-soft:#fff5c6;
  --orange:#f47a2b;
  --teal:#198b79;
  --teal-dark:#126b5e;
  --red:#c84d45;
  --green:#267b56;
  --shadow-sm:0 4px 14px rgba(25,42,38,.06);
  --shadow-md:0 14px 34px rgba(25,42,38,.10);
}
html{background:var(--canvas);scroll-behavior:smooth}
body{background:linear-gradient(180deg,#e9efed 0,#f3f6f5 45%,#f5f7f6 100%);color:var(--ink)}
button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(25,139,121,.28);outline-offset:2px}
.topbar{height:72px;padding:0 clamp(18px,4vw,56px);background:#1b2022;box-shadow:0 1px 0 rgba(255,255,255,.06);z-index:30}
.brand{font-size:19px;letter-spacing:.01em}
.brand em{font-size:12px;color:#aeb9b6;border-left-color:#4a5553}
.top-actions{gap:14px}
.status-pill{font-size:12px}
.status-pill b{width:9px;height:9px}
.icon-btn{border-radius:8px;transition:background .18s,border-color .18s,transform .18s}
.icon-btn:hover{background:rgba(255,255,255,.10);border-color:#8d9996;transform:translateY(-1px)}
.shell{max-width:1480px;background:var(--surface);box-shadow:0 0 0 1px rgba(25,42,38,.04),var(--shadow-md)}
.hero-band{min-height:210px;padding:40px clamp(24px,5vw,60px) 34px;position:relative;overflow:hidden;background:linear-gradient(120deg,#ffd000 0%,#ffd91b 58%,#f6c400 100%)}
.hero-band::after{content:"";position:absolute;width:420px;height:420px;right:-125px;top:-205px;border:1px solid rgba(24,31,31,.14);border-radius:50%;box-shadow:0 0 0 28px rgba(255,255,255,.07),0 0 0 56px rgba(255,255,255,.05);pointer-events:none}
.hero-band>div{position:relative;z-index:1}
.eyebrow,.card-kicker{letter-spacing:1.8px;font-size:10px}
.hero-band h1{font-size:clamp(30px,3.3vw,42px);letter-spacing:-.03em;line-height:1.12;margin-bottom:12px}
.hero-copy{font-size:13px;line-height:1.75;max-width:680px;color:#4b4a31}
.hero-stats{position:relative;z-index:1;min-width:296px;border:1px solid rgba(23,31,30,.16);background:rgba(255,255,255,.27);backdrop-filter:blur(4px);box-shadow:0 5px 16px rgba(135,103,0,.08)}
.hero-stats div{min-width:148px;padding:17px 23px}
.hero-stats strong{font-size:26px;line-height:1.1}
.hero-stats span{font-size:11px;color:#625a2d}
.workspace-grid.embedded-active{display:grid;grid-template-columns:minmax(400px,470px) minmax(0,1fr);align-items:stretch;background:var(--surface)}
.workspace-grid.embedded-active.session-connected{grid-template-columns:320px minmax(0,1fr)}
.sidebar{padding:31px 22px 38px;background:var(--surface-soft);border-right:1px solid var(--line);position:sticky;top:72px;align-self:start;max-height:calc(100vh - 72px);overflow:auto}
.workspace-grid.embedded-active.session-connected .sidebar{padding-left:22px;padding-right:22px}
.main-panel{padding:36px clamp(24px,3.4vw,48px) 60px;background:var(--surface)}
.step-heading{gap:12px}
.step-heading h2{font-size:16px;letter-spacing:-.01em}
.step-heading p{font-size:11px;color:var(--muted)}
.step-no{width:31px;height:31px;border-radius:7px;background:#202628;font-size:10px;box-shadow:0 2px 0 rgba(0,0,0,.10)}
.divider{margin:25px 0;border-color:var(--line)}
.account-card{border-radius:10px;box-shadow:var(--shadow-sm);padding:13px;border-color:#b9dfcb;background:#effaf3}
.account-avatar{background:linear-gradient(145deg,#25977f,#126c5e);box-shadow:0 5px 12px rgba(23,116,97,.2)}
.embedded-status{border-radius:0 7px 7px 0;font-size:10px}
.store-tools input,.connect-form input,.store-actions+ .store-list,.filter-row input{border-color:var(--line-strong)}
.store-tools input,.filter-row input{border-radius:8px}
.ghost-btn{border-color:var(--line-strong);border-radius:8px;transition:.18s}
.ghost-btn:hover{border-color:var(--teal);color:var(--teal);background:#f1faf7}
.store-actions{margin:10px 0 12px}
.text-btn{color:var(--teal-dark);text-decoration:none;font-weight:700}
.text-btn:hover{color:var(--teal);text-decoration:underline}
.store-list{height:calc(100vh - 480px);min-height:250px;max-height:520px;border-color:var(--line)}
.store-item{padding:11px 7px;transition:background .16s,border-color .16s}
.store-item:hover{background:#fff;border-bottom-color:#c8ded7}
.store-item strong{font-size:11px}
.store-item small{font-size:9px;color:#79878a}
.action-grid{grid-template-columns:minmax(270px,.78fr) minmax(440px,1.22fr);gap:20px}
.action-card{border:1px solid var(--line);border-radius:14px;padding:24px;min-height:246px;box-shadow:var(--shadow-sm);transition:box-shadow .2s,border-color .2s,transform .2s}
.action-card:hover{border-color:#b8ccc7;box-shadow:var(--shadow-md);transform:translateY(-2px)}
.card-kicker{color:#778582;margin-bottom:12px}
.card-title{gap:12px}
.card-title h3{font-size:17px;letter-spacing:-.01em}
.card-icon{width:38px;height:38px;border-radius:10px;box-shadow:0 5px 12px rgba(28,72,62,.14)}
.card-icon.orange{background:linear-gradient(145deg,#ff913d,var(--orange))}
.card-icon.teal{background:linear-gradient(145deg,#2a9c88,var(--teal-dark))}
.action-card>p{font-size:11px;line-height:1.75;color:var(--muted);margin:16px 0}
.export-actions{display:grid;gap:8px}
.duplicate-btn{border-color:#8da9a0;color:#216f61}
.duplicate-btn:hover:not(:disabled){background:#edf8f4;border-color:#216f61}
.secondary-btn,.primary-btn{border-radius:8px;transition:transform .18s,box-shadow .18s,background .18s}
.secondary-btn{border-color:#aebbb8;height:40px}
.secondary-btn:hover:not(:disabled){border-color:var(--teal);color:var(--teal-dark);background:#f1faf7;box-shadow:var(--shadow-sm);transform:translateY(-1px)}
.primary-btn{height:42px;background:#1d2527;box-shadow:0 5px 12px rgba(23,34,35,.12)}
.primary-btn:hover:not(:disabled){background:#101819;box-shadow:0 8px 18px rgba(23,34,35,.18);transform:translateY(-1px)}
.compare-card{grid-template-columns:minmax(0,1fr) 198px;grid-template-areas:"k k" "t d" "p d" "o o" "b b";column-gap:22px;row-gap:0}
.dropzone{min-height:132px;border-radius:10px;border-color:#aebeba;background:#f7faf9;transition:border-color .18s,background .18s,box-shadow .18s}
.dropzone:hover,.dropzone.dragging{border-color:var(--teal);background:#edf9f5;box-shadow:inset 0 0 0 2px rgba(25,139,121,.08)}
.dropzone .upload-symbol{font-size:28px}
.compare-options{gap:16px;flex-wrap:wrap;align-items:center}
.compare-options>label:first-child{min-width:210px}
.compare-card>.primary-btn{border-radius:8px;justify-self:end;min-width:154px}
.job-panel{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:#f8fbfa;box-shadow:var(--shadow-sm)}
.job-label{border-radius:5px;background:#253033;padding:5px 8px;letter-spacing:.06em}
.progress-track{height:7px;border-radius:99px;margin-top:14px;background:#dfe9e5}
.progress-track span{border-radius:99px;background:linear-gradient(90deg,#f2b800,var(--yellow))}
.job-panel.is-complete{border-color:#b7dfc8;background:#f2fbf5}
.job-panel.is-complete .progress-track span{background:linear-gradient(90deg,#3da57e,#2a8c67)}
.job-panel.is-error{border-color:#e5bab5;background:#fff7f6}

/* Result mode: the setup controls disappear while a completed comparison is
   open, so the dashboard and table get a full-width review canvas. */
.workspace-grid.result-mode{grid-template-columns:112px minmax(0,1fr);background:#f8fbfa}
.workspace-grid.result-mode .sidebar{background:#f2f7f5;padding:28px 12px}
.workspace-grid.result-mode .sidebar .login-box,.workspace-grid.result-mode .sidebar .divider,.workspace-grid.result-mode .sidebar .store-tools,.workspace-grid.result-mode .sidebar .store-actions,.workspace-grid.result-mode .sidebar .store-list{display:none}
.workspace-grid.result-mode .sidebar .step-heading{justify-content:center}
.workspace-grid.result-mode .sidebar .step-heading>div{display:none}
.workspace-grid.result-mode .sidebar .step-no{width:34px;height:34px}
.workspace-grid.result-mode .sidebar .step-heading:first-child{margin-bottom:25px}
.workspace-grid.result-mode .sidebar .step-heading.compact{padding-top:22px;border-top:1px solid var(--line)}
.workspace-grid.result-mode .sidebar::after{content:"复核模式\A右侧筛选\A搜索并下载";white-space:pre-wrap;display:block;margin:22px auto 0;padding:10px 7px;border-radius:9px;background:#e4f3ed;color:#216b58;font-size:9px;line-height:1.7;text-align:center}
.workspace-grid.result-mode .main-panel{padding:26px 20px 56px;background:#f8fbfa}
.workspace-grid.result-mode .panel-heading,.workspace-grid.result-mode .action-grid,.workspace-grid.result-mode .job-panel{display:none}
.workspace-grid.result-mode .result-panel{margin-top:0}
.result-panel{border:1px solid var(--line);border-top:0;border-radius:16px;overflow:clip;background:#f8fbfa;box-shadow:var(--shadow-md);padding-top:0;scroll-margin-top:88px}
.result-head{padding:24px 26px 21px;background:linear-gradient(135deg,#ffffff 0%,#f3faf7 100%);border-bottom:1px solid var(--line);align-items:flex-start}
.result-title-wrap{min-width:0}
.result-title-row{display:flex;align-items:flex-start;gap:13px}
.result-status-mark{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:#dff3e9;color:#177451;font-size:17px;font-weight:800;flex:none}
.result-head .card-kicker{margin:0 0 4px;color:#59756b}
.result-head h2{font-size:25px;line-height:1.15;letter-spacing:-.03em}
.result-subtitle{margin:7px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.result-meta{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 0 44px}
.meta-chip{display:inline-flex;align-items:center;gap:4px;border:1px solid #c9ded6;border-radius:999px;padding:5px 9px;background:#f4fbf7;color:#3b6d5d;font-size:10px;line-height:1}
.meta-chip b{font-size:11px;color:#1c624f}
.muted-chip{border-color:#dbe4e1;background:#fff;color:#7a8986}
.result-actions{gap:9px;flex:none}
.result-download{height:40px;padding:0 16px;font-size:11px;background:var(--teal-dark)}
.result-download:hover:not(:disabled){background:#0d574d}
.result-close{width:auto;height:40px;padding:0 11px;border-color:#c7d2ce;background:#fff;color:#50605d;gap:6px;font-size:16px}
.result-close span{font-size:10px;font-weight:700}
.result-close:hover{background:#f1f8f5;color:var(--teal-dark);border-color:#9fc5b8}
.result-dashboard{gap:14px;margin:16px 20px 18px}
.dashboard-kpis{border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm);background:var(--line)}
.dashboard-kpi{padding:16px 17px;min-height:112px;background:#fff;position:relative}
.dashboard-kpi::before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:#a9bbb6}
.dashboard-kpi:nth-child(1)::before,.dashboard-kpi:nth-child(2)::before{background:var(--teal)}
.dashboard-kpi:nth-child(3)::before{background:#d79a27}
.dashboard-kpi:nth-child(4)::before,.dashboard-kpi:nth-child(5)::before{background:#5d8e82}
.dashboard-kpi>span{font-size:10px;color:#6f7c7b;margin-bottom:8px}
.dashboard-kpi strong{font-size:24px;color:#1e292a}
.dashboard-kpi strong.warn-number{color:#b36a15}
.dashboard-kpi small{font-size:9px;margin-top:9px;color:#85918f}
.kpi-track{height:6px;border-radius:99px;margin-top:10px;background:#e6eeeb}
.kpi-track i{border-radius:99px;background:var(--teal)}
.dashboard-panels{gap:14px}
.dashboard-panel{border:1px solid var(--line);border-radius:12px;padding:17px 19px;background:#fff;box-shadow:var(--shadow-sm)}
.dashboard-panel-head{margin-bottom:15px}
.dashboard-panel-head h3{font-size:16px;letter-spacing:-.01em}
.dashboard-panel-head>span{font-size:10px;color:#84908e}
.metric-bar-row{grid-template-columns:116px 1fr 38px;gap:10px;margin:11px 0;color:#536360}
.metric-bar{height:9px;border-radius:99px;background:#edf3f1}
.metric-bar i{border-radius:99px}
.metric-bar-row strong{font-size:11px;color:#2c4b43}
.dashboard-note{font-size:10px;color:#7e8d89;margin-top:14px;padding-top:11px}
.price-signal{border-radius:10px;overflow:hidden}
.price-signal>div{padding:14px 12px;background:#f8fbfa}
.price-signal strong{font-size:24px}
.price-signal span{font-size:10px}
.store-dashboard{padding-bottom:11px}
.store-review-row{padding:11px 0;font-size:10px}
.store-review-row strong{font-size:11px;color:#263c37}
.store-review-row b{color:#a65a27}
.summary-cards{margin:0 20px 14px;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm);background:var(--line);gap:1px}
.summary-card{padding:12px 16px;background:#fff}
.summary-card strong{font-size:20px}
.summary-card span{font-size:10px;color:#75827f}
.summary-card.same strong{color:var(--green)}
.summary-card.different strong{color:var(--red)}
.filter-row{position:sticky;top:72px;z-index:8;margin:0 20px 13px;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:rgba(248,251,250,.94);backdrop-filter:blur(12px);box-shadow:0 6px 18px rgba(30,56,48,.06)}
.filter-primary{display:flex;align-items:center;gap:11px;min-width:0}
.segmented{border:1px solid var(--line-strong);border-radius:8px;overflow:hidden;background:#fff}
.segmented button{height:34px;padding:0 12px;border-right:1px solid var(--line);font-size:10px;white-space:nowrap;display:inline-flex;align-items:center;gap:7px;color:#5d6b68}
.segmented button:last-child{border-right:0}
.segmented button.active{background:#1e292a;color:#fff}
.filter-number{font-size:9px;opacity:.72;font-weight:600}
.filter-count{font-size:10px;color:#81908c;white-space:nowrap}
.filter-tools{gap:8px}
.category-filter{height:36px;min-width:185px;border-color:var(--line-strong);border-radius:8px;overflow:hidden}
.category-filter span{font-size:10px;padding:0 8px}
.category-filter select{height:34px;font-size:10px}
.result-search{height:36px;width:250px;display:flex;align-items:center;border:1px solid var(--line-strong);border-radius:8px;background:#fff;overflow:hidden}
.result-search>span{padding-left:10px;color:#6b817a;font-size:18px;line-height:1}
.result-search input{height:34px;border:0!important;box-shadow:none!important;padding:0 10px 0 7px;font-size:11px;background:transparent}
.result-search input:focus{outline:none}
.result-search:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px rgba(25,139,121,.10)}
.table-wrap{margin:0 20px;max-height:calc(100vh - 380px);min-height:330px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow-sm);scrollbar-color:#b8c8c3 transparent}
table{min-width:1050px;table-layout:fixed;font-size:11px}
th{padding:12px 12px;background:#edf4f1;color:#50635e;font-size:10px;letter-spacing:.02em;border-bottom-color:#cad8d3}
td{padding:13px 12px;line-height:1.5;border-bottom-color:#edf1ef;color:#30403e}
tbody tr{transition:background .16s}
tbody tr:hover{background:#f4faf7}
tbody tr:last-child td{border-bottom:0}
.table-wrap th:first-child{position:sticky;left:0;z-index:4;background:#edf4f1}
.table-wrap td:first-child{position:sticky;left:0;z-index:3;background:#fff}
tbody tr:hover td:first-child{background:#f4faf7}
th:nth-child(1),td:nth-child(1){width:66px}
th:nth-child(2),td:nth-child(2){width:176px}
th:nth-child(3),td:nth-child(3){width:176px}
th:nth-child(4),td:nth-child(4){width:92px}
th:nth-child(5),td:nth-child(5),th:nth-child(6),td:nth-child(6),th:nth-child(7),td:nth-child(7){width:66px}
th:nth-child(8),td:nth-child(8){width:82px}
th.confidence-header,.confidence-cell{width:74px}
th:nth-child(9),td:nth-child(9){width:82px}
td strong{font-size:11px;color:#1f302d}
td small{font-size:9px;color:#7f8d8a}
td.price{font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap;color:#293d39}
.difference-cell{font-weight:800}
.difference-cell.is-up{color:var(--red)}
.difference-cell.is-down{color:var(--green)}
.difference-cell.is-flat{color:#66736f}
.difference-cell.is-na{color:#9ba6a3}
.category-text{color:#27816d}
.badge{border-radius:5px;padding:4px 7px;font-size:9px;font-weight:700}
.match-note{color:#9c6720;font-size:9px}
.change-advice{display:inline-block;margin-top:3px;color:#216f61;font-size:9px;line-height:1.45}
.confidence-chip{border-radius:5px;padding:4px 6px;font-size:9px}
.table-hint{margin:10px 22px 0;text-align:left;font-size:10px;color:#879490}
#resultTable .empty-state{height:auto;padding:56px 20px!important;text-align:center;color:#879490;font-size:11px}

@media(max-width:1220px) and (min-width:901px){
  .workspace-grid.embedded-active.session-connected{grid-template-columns:292px minmax(0,1fr)}
  .action-grid{grid-template-columns:1fr}
  .compare-card{grid-template-columns:minmax(0,1fr) 198px}
}
@media(max-width:900px){
  .topbar{height:64px}
  .workspace-grid.embedded-active,.workspace-grid.embedded-active.session-connected,.workspace-grid.result-mode{display:block}
  .sidebar{position:relative;top:auto;max-height:none;overflow:visible;border-right:0;border-bottom:1px solid var(--line)}
  .workspace-grid.result-mode .sidebar{display:none}
  .main-panel,.workspace-grid.result-mode .main-panel{padding:28px 24px 48px}
  .workspace-grid.result-mode .result-panel{border-radius:14px}
  .result-dashboard{margin-left:15px;margin-right:15px}
  .summary-cards,.filter-row,.table-wrap{margin-left:15px;margin-right:15px}
  .filter-row{position:static;flex-wrap:wrap}
}

/* Provider-neutral AI configuration: the URL drives model discovery, while a
   typed model remains available as an optional override. */
.ai-url-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px}.ai-url-row .dialog-field{min-width:0}.ai-discover-btn{height:38px;margin-top:13px;padding:0 12px;white-space:nowrap;font-size:10px}.ai-model-row{display:block}.ai-model-row .dialog-field{margin-top:13px}.ai-model-status{min-height:16px;margin:8px 0 0;color:#71817b;font-size:10px;line-height:1.45}.ai-model-status.success{color:#1d765f}.ai-model-status.error{color:#ad3d35}.ai-tuning-row{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:1px}.ai-performance-note{margin:7px 0 0;color:#71817b;font-size:9px;line-height:1.45}.ai-dialog .key-link{color:#81908a;line-height:1.5}.ai-rule-note{margin:-8px 0 14px;padding:9px 11px;border:1px solid #cce8dc;border-radius:7px;background:#f3fbf7;color:#2d6958;font-size:10px;line-height:1.5}
@media(max-width:680px){.ai-url-row{grid-template-columns:1fr}.ai-discover-btn{width:100%;margin-top:4px}.ai-model-row .dialog-field{margin-top:10px}.ai-tuning-row{grid-template-columns:1fr}}

/* Compact desktop workspace.  At laptop-sized browser windows the original
   generous cards pushed the action controls below the first viewport.  Keep
   the same information and interaction targets, but tighten only the desktop
   presentation so the complete workflow is visible at once. */
@media (min-width:901px) and (max-width:2200px){
  .app-content{padding:16px 25px 8px}
  .hero-band{min-height:120px;margin-bottom:14px;padding:19px 24px 18px;border-radius:13px}
  .hero-band .eyebrow{margin-bottom:6px;font-size:8px}
  .hero-band h1{font-size:27px;margin-bottom:5px}
  .hero-copy{font-size:10px;line-height:1.5}
  .hero-stats{min-width:218px}.hero-stats div{min-width:108px;padding:10px 13px}.hero-stats strong{font-size:20px}.hero-stats span{font-size:8px;margin-top:2px}
  .workspace-grid.embedded-active{gap:16px;grid-template-columns:minmax(250px,275px) minmax(0,1fr)!important}
  .workspace-grid.embedded-active .sidebar{max-height:calc(100vh - 52px);padding:16px 14px 17px;border-radius:11px}
  .workspace-grid.embedded-active .main-panel{padding-bottom:20px}
  .workspace-grid.embedded-active .step-heading{gap:8px}.workspace-grid.embedded-active .step-heading h2{font-size:13px}.workspace-grid.embedded-active .step-heading p{font-size:9px}.workspace-grid.embedded-active .step-no{width:26px;height:26px;font-size:8px}
  .workspace-grid.embedded-active .divider{margin:14px 0}
  .workspace-grid.embedded-active .login-box{margin-top:9px}
  .workspace-grid.embedded-active .store-list{height:210px;max-height:245px;min-height:150px}
  .workspace-grid.embedded-active .store-item{padding:8px 4px}
  .mode-bar{margin-bottom:12px;padding:8px 10px 8px 12px;border-radius:9px}
  .mode-bar-copy{gap:7px}.mode-bar-copy strong{font-size:13px}.mode-bar-copy>span:last-child{font-size:9px}.mode-switcher{padding:3px}.mode-tab{min-width:100px;height:38px;border-radius:6px;padding:0 8px}.mode-tab-icon{width:22px;height:22px}
  .panel-heading{margin-bottom:10px}.panel-heading .step-no{width:26px;height:26px}
  .action-grid{gap:12px}.action-card{min-height:0;padding:15px;border-radius:11px}
  .card-kicker{margin-bottom:8px;font-size:8px}.card-title{gap:8px}.card-title h3{font-size:14px}.card-icon{width:31px;height:31px;border-radius:8px;font-size:18px}.action-card>p{font-size:9px;line-height:1.5;margin:8px 0}
  .export-actions{gap:5px}.export-actions .secondary-btn{height:32px;font-size:9px;padding:0 9px}.duplicate-hint,.card-footnote{font-size:8px;line-height:1.35}
  .daily-capture-panel{gap:6px;margin-top:8px;padding:8px 9px}.daily-capture-head{gap:7px}.daily-capture-head>div{gap:2px}.daily-capture-head strong{font-size:10px}.daily-capture-head small{font-size:8px}.capture-toggle{font-size:9px}.daily-capture-controls{gap:5px}.daily-capture-controls input[type=time],.capture-all-label,.daily-capture-controls .secondary-btn,.daily-capture-controls .text-btn{height:28px}.daily-capture-controls .secondary-btn{padding:0 7px;font-size:8px}.capture-status{font-size:8px}
  .compare-card{grid-template-columns:minmax(0,1fr) 145px;column-gap:12px;row-gap:5px}
  .compare-card .card-title h3{font-size:14px}.compare-card>p{font-size:9px;margin:4px 0}.compare-card .dropzone{height:112px;min-height:0;align-self:start;padding:9px}.dropzone .upload-symbol{font-size:21px}.dropzone strong{font-size:9px;margin:5px 0 3px}.dropzone small{font-size:8px}.compare-options{gap:8px;min-height:31px}.toggle-label{font-size:9px}.toggle{width:28px;height:15px}.toggle:after{width:9px;height:9px;top:3px;left:3px}.toggle-label input:checked+.toggle:after{left:16px}.mode-ready-hint{font-size:8px}.compare-card>.primary-btn{min-width:125px;height:34px;font-size:9px}
  #appNav [data-nav-mode]{height:49px;min-height:49px;box-sizing:border-box}
  #appNav [data-nav-mode] .nav-item-icon{width:29px;height:29px;box-sizing:border-box}
}
@media(max-width:740px){
  .topbar{padding:0 16px}
  .brand{font-size:18px}
  .brand em{display:none}
  .hero-band{min-height:0;padding:28px 20px 25px;display:block}
  .hero-band h1{font-size:30px;line-height:1.18}
  .hero-copy{font-size:12px;line-height:1.7}
  .hero-stats{margin-top:21px;width:100%;min-width:0}
  .hero-stats div{flex:1;min-width:0;padding:15px 17px}
  .hero-stats strong{font-size:23px}
  .sidebar{padding:26px 20px 32px}
  .main-panel,.workspace-grid.result-mode .main-panel{padding:25px 16px 40px}
  .action-grid{display:block}
  .action-card{padding:21px;border-radius:12px;min-height:0}
  .action-card+.action-card{margin-top:14px}
  .compare-card{display:block}
  .compare-card .card-title h3{font-size:16px}
  .dropzone{margin:15px 0;min-height:120px}
  .compare-options{display:grid;gap:12px;margin-bottom:14px}
  .compare-options>label:first-child{min-width:0}
  .export-actions .secondary-btn,.compare-card>.primary-btn{width:100%}
  .result-panel{border-radius:12px}
  .result-head{display:block;padding:20px 17px 17px}
  .result-head h2{font-size:23px}
  .result-subtitle{font-size:10px}
  .result-meta{margin-left:44px;margin-top:11px}
  .result-actions{margin-top:16px;justify-content:flex-start;flex-direction:row;align-items:center}
  .result-download{flex:1}
  .result-close{flex:none}
  .result-dashboard{margin:13px 12px 15px;gap:11px}
  .dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-kpi:last-child{grid-column:1/-1}
  .dashboard-kpi{min-height:96px;padding:13px 12px}
  .dashboard-kpi strong{font-size:21px}
  .dashboard-kpi small{font-size:8px}
  .dashboard-panels{grid-template-columns:1fr;gap:11px}
  .dashboard-panel{padding:14px}
  .dashboard-panel-head{display:block}
  .dashboard-panel-head>span{display:block;margin-top:5px}
  .metric-bar-row{grid-template-columns:104px 1fr 32px;gap:7px}
  .summary-cards{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 12px 11px}
  .summary-card{padding:11px 12px}
  .summary-card strong{font-size:18px}
  .filter-row{display:flex;flex-direction:column;align-items:stretch;gap:9px;margin:0 12px 11px;padding:10px}
  .filter-primary{display:block}
  .segmented{display:flex;overflow:auto;width:100%}
  .segmented button{flex:1;justify-content:center;padding:0 9px}
  .filter-count{display:block;margin-top:8px}
  .filter-tools{display:flex;flex-direction:column;align-items:stretch}
  .category-filter,.result-search{width:100%;max-width:none}
  .table-wrap{margin:0 12px;min-height:280px;max-height:calc(100vh - 440px);border-radius:10px}
  table{min-width:1040px}
  th,td{padding:11px 10px}
  .table-hint{margin-left:14px;margin-right:14px;line-height:1.5}
}

/* The connected-layout rule above intentionally keeps a wider setup rail;
   result mode is the exception and must win at every desktop width. */
@media(min-width:901px){
  .workspace-grid.embedded-active.session-connected.result-mode{grid-template-columns:112px minmax(0,1fr)}
}

@media(min-width:901px) and (max-width:1220px){
  .result-mode .table-wrap table{min-width:0;width:100%;font-size:10px}
  .result-mode .dashboard-kpi small{white-space:normal;line-height:1.35;min-height:22px}
  .result-mode .table-wrap th:nth-child(1),.result-mode .table-wrap td:nth-child(1){width:62px}
  .result-mode .table-wrap th:nth-child(2),.result-mode .table-wrap td:nth-child(2),.result-mode .table-wrap th:nth-child(3),.result-mode .table-wrap td:nth-child(3){width:150px}
  .result-mode .table-wrap th:nth-child(4),.result-mode .table-wrap td:nth-child(4){width:82px}
  .result-mode .table-wrap th:nth-child(5),.result-mode .table-wrap td:nth-child(5),.result-mode .table-wrap th:nth-child(6),.result-mode .table-wrap td:nth-child(6),.result-mode .table-wrap th:nth-child(7),.result-mode .table-wrap td:nth-child(7){width:58px}
  .result-mode .table-wrap th:nth-child(8),.result-mode .table-wrap td:nth-child(8),.result-mode .table-wrap th:nth-child(9),.result-mode .table-wrap td:nth-child(9){width:70px}
  .result-mode .table-wrap th,.result-mode .table-wrap td{padding-left:8px;padding-right:8px}
}

/* Matching uses the fixed recommended threshold; only the store-only option
   remains visible in the comparison card. */
.compare-options > .toggle-label{display:flex;grid-template-columns:none;min-width:0}

/* Dual workflows: price comparison and assortment-gap review. */
[hidden]{display:none!important}
.mode-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px;padding:13px 15px 13px 17px;border:1px solid var(--line);border-radius:13px;background:linear-gradient(135deg,#fff 0%,#f4f8f6 100%);box-shadow:var(--shadow-sm)}
.mode-bar-copy{display:flex;align-items:baseline;gap:9px;min-width:0;flex-wrap:wrap}
.mode-bar-kicker{width:100%;font-size:8px;font-weight:800;letter-spacing:1.7px;color:#7d8c88;line-height:1}
.mode-bar-copy strong{font-size:16px;letter-spacing:-.02em;color:#1f2c2a;white-space:nowrap}
.mode-bar-copy>span:last-child{font-size:10px;color:#75827f;line-height:1.45}
.mode-switcher{display:flex;align-items:stretch;gap:5px;padding:4px;border:1px solid #d5dfdc;border-radius:11px;background:#edf3f1;flex:none}
.mode-tab{min-width:126px;height:48px;display:flex;align-items:center;gap:9px;padding:0 11px;border:0;border-radius:8px;background:transparent;color:#64726f;text-align:left;transition:background .18s,color .18s,box-shadow .18s,transform .18s}
.mode-tab:hover{color:#273532;background:rgba(255,255,255,.66)}
.mode-tab:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.mode-tab.active{background:#202a2b;color:#fff;box-shadow:0 5px 12px rgba(26,39,38,.16);transform:translateY(-1px)}
.mode-tab-icon{width:25px;height:25px;display:grid;place-items:center;border-radius:7px;background:rgba(31,45,43,.08);font-size:16px;font-weight:800;flex:none}
.mode-tab.active .mode-tab-icon{background:rgba(255,255,255,.13);color:var(--yellow)}
.mode-tab>span:last-child{display:grid;gap:1px}
.mode-tab b{font-size:11px;line-height:1.2}
.mode-tab small{font-size:8px;line-height:1.25;opacity:.72;white-space:nowrap}
body[data-mode="missing"] .mode-tab.active{background:var(--teal-dark)}
body[data-mode="missing"] .mode-tab.active .mode-tab-icon{color:#bff2df}
body[data-mode="missing"] #compareIcon{background:linear-gradient(145deg,#2e9a7f,#176455)}
.workspace-grid.result-mode .mode-bar{display:none}
body.reviewing-results .hero-band{display:none}
.compare-card{grid-template-areas:"k k" "t d" "p d" "h d" "o o" "b b"}
.mode-hint{grid-area:h;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:5px 9px;margin:8px 0 10px;padding:9px 11px;border-left:3px solid var(--teal);border-radius:0 8px 8px 0;background:#eef8f4;color:#315f53}
.mode-hint>span{grid-row:1/3;align-self:stretch;display:grid;place-items:center;padding-right:9px;border-right:1px solid #cde2da;font-size:8px;font-weight:800;letter-spacing:.08em;color:#5d7d74}
.mode-hint>b{font-size:9px;line-height:1.25}
.mode-hint>small{grid-column:1/-1;font-size:8px;line-height:1.45;color:#71857f}
body[data-mode="missing"] .compare-options{justify-content:flex-end}
.result-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.result-actions .secondary-btn{height:40px;padding:0 12px;font-size:10px;border-color:#b8c7c2;color:#425d56;background:#fff}
.result-actions .secondary-btn:hover{border-color:var(--teal);color:var(--teal-dark)}
.result-callout{display:flex;align-items:center;gap:14px;margin:16px 20px 0;padding:13px 16px;border:1px solid #c7ded5;border-radius:11px;background:linear-gradient(135deg,#edf9f4,#fff);box-shadow:var(--shadow-sm)}
.result-callout>div{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:2px 8px;min-width:145px}
.result-callout span{font-size:9px;font-weight:800;color:#55736b}
.result-callout strong{font-size:22px;color:#1b6553;line-height:1}
.result-callout small{grid-column:1/-1;font-size:8px;color:#7a8a86}
.result-callout>i{font-style:normal;font-weight:800;color:#91a59f}
.result-callout>p{margin:0 0 0 auto;max-width:310px;font-size:9px;line-height:1.55;color:#657873}
.missing-dashboard{gap:13px}
.missing-kpis{display:grid;grid-template-columns:minmax(165px,.75fr) minmax(165px,.75fr) minmax(260px,1.5fr);gap:13px}
.missing-kpi,.missing-next{border:1px solid var(--line);border-radius:12px;padding:16px 17px;background:#fff;box-shadow:var(--shadow-sm)}
.missing-kpi{position:relative;overflow:hidden}
.missing-kpi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#dc9d31}
.missing-kpi.source-gap::before{background:var(--teal)}
.missing-kpi>span{display:block;font-size:10px;color:#6f7e7a}
.missing-kpi>strong{display:block;margin:7px 0 3px;font-size:28px;line-height:1;color:#9a5a19}
.missing-kpi.source-gap>strong{color:var(--teal-dark)}
.missing-kpi>small{font-size:8px;color:#87938f}
.missing-track{height:6px;margin-top:14px;border-radius:99px;background:#edf1ef;overflow:hidden}
.missing-track i{display:block;height:100%;border-radius:inherit;background:#dda13d}
.source-gap .missing-track i{background:var(--teal)}
.missing-kpi>em{display:block;margin-top:5px;font-size:8px;font-style:normal;color:#7c8986;text-align:right}
.missing-next{background:linear-gradient(140deg,#202b2b,#31423f);color:#fff}
.missing-next .card-kicker{margin-bottom:6px;color:#9bc3b7}
.missing-next h3{margin:0 0 9px;font-size:14px}
.missing-next ol{margin:0;padding-left:17px;font-size:8px;line-height:1.65;color:#d0ddda}
.missing-store-panel{padding-bottom:10px}
.missing-summary{grid-template-columns:repeat(3,1fr)}
.summary-card.store-missing strong{color:#a45d18}
.summary-card.source-missing strong{color:var(--teal-dark)}
.badge.store-missing{background:#fff1dc;color:#935315}
.badge.source-missing{background:#def3eb;color:#17634f}
.missing-table{min-width:900px}
.missing-table th:nth-child(1),.missing-table td:nth-child(1){width:92px}
.missing-table th:nth-child(2),.missing-table td:nth-child(2),.missing-table th:nth-child(3),.missing-table td:nth-child(3){width:190px}
.missing-table th:nth-child(4),.missing-table td:nth-child(4){width:125px}
.missing-table th:nth-child(5),.missing-table td:nth-child(5){width:130px}
.missing-table th:nth-child(6),.missing-table td:nth-child(6){width:110px}
.missing-table th:nth-child(7),.missing-table td:nth-child(7){width:180px}
body[data-mode="missing"] .workspace-grid.result-mode .sidebar::after{content:"缺失清单\A按方向筛选\A复制或导出"}

@media(max-width:900px){
  .mode-bar{align-items:flex-start;flex-direction:column}
  .mode-switcher{width:100%}
  .mode-tab{flex:1;justify-content:center}
  .missing-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .missing-next{grid-column:1/-1}
  .result-callout{margin-left:15px;margin-right:15px;flex-wrap:wrap}
  .result-callout>p{width:100%;max-width:none;margin-left:0}
}
@media(max-width:740px){
  .mode-bar{margin-bottom:17px;padding:13px;gap:13px}
  .mode-bar-copy>span:last-child{width:100%}
  .mode-switcher{gap:3px;padding:3px}
  .mode-tab{min-width:0;height:46px;padding:0 8px;gap:7px}
  .mode-tab-icon{width:23px;height:23px;font-size:14px}
  .mode-tab small{display:none}
  .compare-card{display:block}
  .mode-hint{margin:12px 0}
  .result-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
  .result-actions .result-download{grid-column:1/-1;width:100%}
  .result-actions .secondary-btn{width:100%;padding:0 8px}
  .result-actions .result-close{grid-column:1/-1;width:100%;justify-content:center}
  .result-callout{display:grid;grid-template-columns:1fr auto 1fr;gap:9px;margin:12px 12px 0;padding:12px}
  .result-callout>div{min-width:0;display:block;text-align:center}
  .result-callout span,.result-callout small{display:block}
  .result-callout strong{display:block;margin:4px 0}
  .result-callout>p{grid-column:1/-1;text-align:center}
  .missing-kpis{grid-template-columns:1fr;gap:10px}
  .missing-next{grid-column:auto}
  .missing-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
  .missing-summary .summary-card{padding:11px 8px;text-align:center}
  .missing-summary .summary-card span{font-size:8px}
  .missing-table{min-width:860px}
}

/* Cloud deployment login: the server opens the official QNH page, so the
   public site never asks Meituan to accept a third-party callback origin. */
.auth-login{gap:12px;padding-top:12px}
.login-methods[hidden],.password-login[hidden],.qr-login[hidden]{display:none!important}
.login-modes{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:2px}
.login-modes button{height:38px;font-size:12px}
.password-login{gap:12px;padding-top:13px}
.password-login label{gap:6px}
.password-login input{border-radius:4px}
.password-login .login-agreement{display:flex;align-items:flex-start;gap:8px;font-size:10px;font-weight:500;line-height:1.5;color:#626b68;cursor:pointer}
.password-login .login-agreement input{width:14px;height:14px;margin:1px 0 0;flex:none;accent-color:var(--teal)}
.login-security-note{display:block;color:#87918e;font-size:9px;line-height:1.5;text-align:center}
.password-check,.qr-check{height:40px}
.qr-login{padding-top:12px}
.qr-frame{border-radius:6px;background:#fff}
.qr-status-row{min-height:30px}
.qr-status-row .text-btn{padding:4px 0}
.auth-login.is-connected .embedded-toolbar{display:none}
.auth-login.is-connected .embedded-status{margin-top:0}
@media(max-width:740px){
  .password-login{padding-top:10px}
  .qr-frame{width:204px;height:204px}
  .qr-frame img{width:192px;height:192px}
}

/* The verification dialog mirrors the server-side official browser and keeps
   captcha interaction inside the existing login flow. */
.manual-verify-entry{width:100%;height:38px;border-color:#aebbb7;color:#2d5e53;background:#f6faf8;font-size:11px}
.manual-verify-entry span{font-size:17px;color:var(--teal);line-height:1}
.manual-verify-dialog{width:min(1180px,calc(100vw - 28px));max-width:1180px;max-height:calc(100vh - 28px);padding:0;border-top:5px solid var(--yellow);border-radius:10px;overflow:auto;background:#f6f8f7;color:var(--ink)}
.manual-dialog-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:20px 54px 18px 22px;background:#fff;border-bottom:1px solid var(--line)}
.manual-dialog-head .eyebrow{margin-bottom:7px;color:#75827f}
.manual-dialog-head h2{margin:0 0 7px;font-size:22px}
.manual-dialog-head p:last-child{max-width:790px;margin:0;color:#697571;font-size:11px;line-height:1.6}
.manual-dialog-head .dialog-close{right:16px;top:13px;width:34px;height:34px;border:1px solid #d4ddda;border-radius:6px;background:#fff;color:#596662;font-size:22px;line-height:1}
.manual-browser-bar{min-height:42px;display:flex;align-items:center;gap:8px;padding:0 16px;background:#202829;color:#e8efec;font-size:10px}
.manual-browser-bar strong{font-size:11px}
.manual-browser-bar>span:nth-of-type(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aebbb7}
.manual-browser-bar .text-btn{margin-left:auto;color:#d7e9e3;text-decoration:none;white-space:nowrap}
.manual-live-dot{width:8px;height:8px;border-radius:50%;background:#34bf85;box-shadow:0 0 0 4px rgba(52,191,133,.13);flex:none}
.manual-browser-viewport{position:relative;width:100%;height:500px;margin:0 auto;overflow:hidden;background:#dfe5e2;border:1px solid #cbd5d1;border-top:0}
.manual-browser-viewport iframe{display:block;width:100%;height:100%;border:0;background:#fff}
.manual-browser-viewport iframe[hidden]{display:none!important}
.manual-browser-viewport img{display:block;width:100%;height:100%;object-fit:contain;background:#fff;cursor:crosshair;touch-action:none;user-select:none;-webkit-user-drag:none}
.manual-browser-viewport img.is-dragging{cursor:grabbing;filter:brightness(.97)}
.manual-browser-viewport.is-live-drag{box-shadow:0 0 0 3px rgba(255,196,0,.45)}
.manual-drag-feedback{position:absolute;z-index:4;width:24px;height:24px;transform:translate(-50%,-50%);border:3px solid #fff;border-radius:50%;background:var(--yellow);box-shadow:0 2px 8px rgba(0,0,0,.35);pointer-events:none}
.manual-drag-feedback i{position:absolute;left:50%;top:50%;width:5px;height:5px;transform:translate(-50%,-50%);border-radius:50%;background:#26302e}
.manual-drag-feedback span{position:absolute;left:50%;top:29px;transform:translateX(-50%);padding:4px 7px;border-radius:4px;background:#202829;color:#fff;font-size:9px;font-weight:700;white-space:nowrap;box-shadow:0 2px 7px rgba(0,0,0,.22)}
.manual-browser-loading{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:8px;color:#53615d;background:linear-gradient(135deg,#eef2f0,#f9fbfa);text-align:center}
.manual-browser-loading span{width:34px;height:34px;border:3px solid #cbd8d3;border-top-color:var(--teal);border-radius:50%;animation:manual-spin .8s linear infinite}
.manual-browser-loading b{font-size:12px}
.manual-browser-loading small{font-size:9px;color:#87938f}
@keyframes manual-spin{to{transform:rotate(360deg)}}
.manual-credential-panel{display:grid;gap:8px;padding:12px 16px 10px;background:#fff;border-bottom:1px solid var(--line)}
.manual-credential-head{display:flex;align-items:baseline;gap:10px;min-width:0}
.manual-credential-head strong{font-size:11px;color:#344540;white-space:nowrap}
.manual-credential-head span{min-width:0;color:#7a8783;font-size:9px;line-height:1.4}
.manual-credential-grid{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr) auto auto;align-items:end;gap:8px}
.manual-credential-grid label{display:grid;gap:4px;min-width:0;color:#586560;font-size:10px;font-weight:700}
.manual-credential-grid input{width:100%;height:34px;border:1px solid #cbd5d1;border-radius:5px;padding:0 10px;outline:none}
.manual-credential-grid input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(25,139,121,.10)}
.manual-credential-grid button{height:34px;padding:0 12px;white-space:nowrap;font-size:10px}
.manual-credential-grid #manualFillCredentialsBtn{border-color:#1f7163;background:#e8f4f0;color:#155a4f;font-weight:800}
.manual-input-panel{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;align-items:end;gap:10px;padding:14px 16px;background:#fff;border-bottom:1px solid var(--line)}
.manual-input-panel label{display:grid;gap:5px;min-width:0;color:#586560;font-size:10px;font-weight:700}
.manual-input-panel input{width:100%;height:38px;border:1px solid #cbd5d1;border-radius:5px;padding:0 11px;outline:none}
.manual-input-panel input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(25,139,121,.10)}
.manual-input-panel>.secondary-btn{height:38px;white-space:nowrap;font-size:10px}
.manual-keyboard{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.manual-keyboard button{height:32px;padding:0 9px;border:1px solid #cbd5d1;border-radius:5px;background:#f7f9f8;color:#46534f;font-size:9px;font-weight:700}
.manual-keyboard button:hover{border-color:#80958e;background:#eef4f1}
.manual-dialog-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px 15px;background:#f6f8f7}
.manual-dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:none}
.manual-dialog-actions .primary-btn,.manual-dialog-actions .secondary-btn{height:40px;padding:0 18px;white-space:nowrap;font-size:11px}
.manual-dialog-actions .native-browser-btn{border-color:#ffc400;background:#fff8d5;color:#5f4a00;font-weight:800}
.manual-dialog-actions .manual-mode-btn.active{border-color:#1f7163;background:#e8f4f0;color:#155a4f;box-shadow:inset 0 0 0 1px rgba(31,113,99,.12);font-weight:800}
.manual-verify-status{margin:0;color:#65736f;font-size:10px;line-height:1.5}
.manual-verify-status.warn{color:#8a6418}.manual-verify-status.error{color:#a23d35}.manual-verify-status.success{color:#176b4b}

@media(max-width:820px){
  .manual-verify-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}
  .manual-dialog-head{padding:17px 48px 15px 16px}
  .manual-dialog-head h2{font-size:18px}
  .manual-credential-grid{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto}
  .manual-credential-grid #manualFillCredentialsBtn{grid-column:1/-1}
  .manual-input-panel{grid-template-columns:1fr auto}
  .manual-keyboard{grid-column:1/-1}
  .manual-dialog-foot{align-items:stretch;flex-direction:column}
  .manual-dialog-actions{width:100%}
  .manual-dialog-actions .primary-btn,.manual-dialog-actions .secondary-btn{flex:1}
}
@media(max-width:520px){
  .manual-browser-bar{padding:0 10px}
  .manual-browser-bar strong{display:none}
  .manual-credential-head{display:grid;gap:3px}
  .manual-credential-grid{grid-template-columns:1fr auto}
  .manual-credential-grid #manualFillCredentialsBtn{grid-column:1/-1;width:100%}
  .manual-input-panel{grid-template-columns:1fr;padding:11px}
  .manual-input-panel>.secondary-btn{width:100%}
  .manual-keyboard{grid-column:auto}
  .manual-keyboard button{flex:1;min-width:54px}
}

/* Result review: compact sort controls and normalized specification details. */
.result-sort-tools{display:flex;align-items:center;gap:4px;flex-wrap:wrap;min-width:0;padding:2px 0}
.sort-tools-label{font-size:10px;color:#71807b;white-space:nowrap;margin-right:2px}
.sort-btn{height:30px;display:inline-flex;align-items:center;gap:4px;padding:0 8px;border:1px solid #cbd8d3;border-radius:6px;background:#fff;color:#53635e;font-size:10px;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}
.sort-btn:hover{border-color:#78a99a;background:#f0f8f4;color:#1f6658}
.sort-btn.active{border-color:#277966;background:#e6f3ee;color:#155b4d;font-weight:800}
.sort-btn b{font-size:12px;line-height:1;color:#67867d}
.sort-btn.active b{color:#1e6e5c}
.spec-text{color:#71817c}
.quantity-text{color:#287866;font-weight:700}
.unit-price-text{color:#8a5f22;font-variant-numeric:tabular-nums;font-weight:700}
.spec-compare-cell{min-width:126px;font-variant-numeric:tabular-nums}
.spec-quantity-pair{display:inline-flex;align-items:center;gap:6px;color:#31544b;font-size:10px;white-space:nowrap}
.spec-quantity-pair i{font-style:normal;color:#91a29d}
.spec-compare-cell>small{font-size:9px;color:#72817d;white-space:nowrap}
.spec-compare-cell .unit-difference{font-weight:800}
.spec-compare-cell .unit-difference.is-up{color:var(--red)}
.spec-compare-cell .unit-difference.is-down{color:var(--green)}
.spec-compare-cell .unit-difference.is-flat{color:#697873}
.spec-comparison-note{display:inline-block;margin-top:2px;color:#9c6720!important;white-space:normal!important;line-height:1.4}
.result-mode .table-wrap th:nth-child(8),.result-mode .table-wrap td:nth-child(8){width:145px}
.result-mode .table-wrap th:nth-child(10),.result-mode .table-wrap td:nth-child(10){width:96px}
.result-mode .table-wrap th:nth-child(2),.result-mode .table-wrap td:nth-child(2),.result-mode .table-wrap th:nth-child(3),.result-mode .table-wrap td:nth-child(3){width:126px}
.result-mode .table-wrap th:nth-child(4),.result-mode .table-wrap td:nth-child(4){width:82px}
.result-mode .table-wrap th:nth-child(5),.result-mode .table-wrap td:nth-child(5),.result-mode .table-wrap th:nth-child(6),.result-mode .table-wrap td:nth-child(6){width:235px}
.result-mode .table-wrap th:nth-child(7),.result-mode .table-wrap td:nth-child(7),.result-mode .table-wrap th:nth-child(8),.result-mode .table-wrap td:nth-child(8){width:96px}
.result-mode .table-wrap th:nth-child(9),.result-mode .table-wrap td:nth-child(9){width:112px}
.result-mode .table-wrap th:nth-child(10),.result-mode .table-wrap td:nth-child(10){width:102px}
.result-mode .table-wrap th:nth-child(11),.result-mode .table-wrap td:nth-child(11){width:126px}
.result-mode .table-wrap th:nth-child(12),.result-mode .table-wrap td:nth-child(12){width:154px}
.result-mode .table-wrap th:nth-child(13),.result-mode .table-wrap td:nth-child(13){width:250px}
.result-mode .table-wrap table{min-width:1660px}
/* AI result contract: owner-specific product columns are followed by their
   standalone specification columns. Keep the wider grid readable while
   retaining the same compact visual language as the legacy 13-column table. */
.result-mode .table-wrap table.ai-result-table th:nth-child(1),.result-mode .table-wrap table.ai-result-table td:nth-child(1){width:90px}
.result-mode .table-wrap table.ai-result-table th:nth-child(2),.result-mode .table-wrap table.ai-result-table td:nth-child(2),.result-mode .table-wrap table.ai-result-table th:nth-child(3),.result-mode .table-wrap table.ai-result-table td:nth-child(3){width:126px}
.result-mode .table-wrap table.ai-result-table th:nth-child(4),.result-mode .table-wrap table.ai-result-table td:nth-child(4){width:82px}
.result-mode .table-wrap table.ai-result-table th:nth-child(5),.result-mode .table-wrap table.ai-result-table td:nth-child(5),.result-mode .table-wrap table.ai-result-table th:nth-child(7),.result-mode .table-wrap table.ai-result-table td:nth-child(7){width:235px}
.result-mode .table-wrap table.ai-result-table th:nth-child(6),.result-mode .table-wrap table.ai-result-table td:nth-child(6),.result-mode .table-wrap table.ai-result-table th:nth-child(8),.result-mode .table-wrap table.ai-result-table td:nth-child(8){width:160px}
.result-mode .table-wrap table.ai-result-table th:nth-child(9),.result-mode .table-wrap table.ai-result-table td:nth-child(9),.result-mode .table-wrap table.ai-result-table th:nth-child(10),.result-mode .table-wrap table.ai-result-table td:nth-child(10){width:96px}
.result-mode .table-wrap table.ai-result-table th:nth-child(11),.result-mode .table-wrap table.ai-result-table td:nth-child(11){width:126px}
.result-mode .table-wrap table.ai-result-table th:nth-child(12),.result-mode .table-wrap table.ai-result-table td:nth-child(12){width:102px}
.result-mode .table-wrap table.ai-result-table th:nth-child(13),.result-mode .table-wrap table.ai-result-table td:nth-child(13){width:126px}
.result-mode .table-wrap table.ai-result-table th:nth-child(14),.result-mode .table-wrap table.ai-result-table td:nth-child(14){width:154px}
.result-mode .table-wrap table.ai-result-table th:nth-child(15),.result-mode .table-wrap table.ai-result-table td:nth-child(15){width:250px}
.result-mode .table-wrap table.ai-result-table{min-width:2100px}
.ai-spec-only{display:block;min-width:110px;color:#4f6962;font-size:10px;line-height:1.45;white-space:normal;overflow-wrap:anywhere}
.ai-spec-relation{display:inline-block;color:#3c5551;font-size:10px;line-height:1.45}
.ai-result-table td.spec-column{vertical-align:middle}
#duplicateTable{min-width:1500px}
#duplicateTable th,#duplicateTable td{white-space:normal;vertical-align:middle}
#duplicateTable th:nth-child(1),#duplicateTable td:nth-child(1){width:92px}
#duplicateTable th:nth-child(2),#duplicateTable td:nth-child(2){width:190px}
#duplicateTable th:nth-child(3),#duplicateTable td:nth-child(3){width:90px}
#duplicateTable th:nth-child(4),#duplicateTable td:nth-child(4){width:180px}
#duplicateTable th:nth-child(5),#duplicateTable td:nth-child(5){width:80px}
#duplicateTable th:nth-child(n+6),#duplicateTable td:nth-child(n+6){min-width:120px}
.missing-table{min-width:1040px}
.missing-table th:nth-child(2),.missing-table td:nth-child(2),.missing-table th:nth-child(3),.missing-table td:nth-child(3){width:235px}
.missing-table th:nth-child(4),.missing-table td:nth-child(4){width:130px}
.missing-table th:nth-child(5),.missing-table td:nth-child(5){width:130px}
.missing-table th:nth-child(6),.missing-table td:nth-child(6){width:200px}

@media(max-width:900px){
  .result-sort-tools{width:100%;order:3;padding-top:5px;border-top:1px solid #e3ebe7}
  .sort-btn{flex:1;justify-content:center;min-width:74px}
}
@media(max-width:520px){
  .result-sort-tools{gap:5px}
  .sort-tools-label{width:100%;margin-bottom:1px}
  .sort-btn{flex:1 1 calc(33.333% - 5px);min-width:0;padding:0 5px;font-size:9px}
}
/* Entry point for the standalone v3.0 AI product matcher. */
.ai-nav-link{display:inline-flex;align-items:center;height:34px;padding:0 12px;border:1px solid #9fcbbd;border-radius:8px;background:#eef9f4;color:#0d5549;text-decoration:none;font-size:10px;font-weight:800;white-space:nowrap}.ai-nav-link:hover{background:#dff3ea;border-color:#6fae9b}
.ai-settings-btn{display:inline-flex;align-items:center;justify-content:center;height:34px;max-width:190px;padding:0 12px;border:1px solid #596064;border-radius:8px;background:#292d2f;color:#f5f7f6;font-size:10px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-settings-btn:hover{border-color:#9fcbbd;background:#343a3b}.ai-settings-btn.configured{color:#d5f2e5;border-color:#3b9d80}
.ai-dialog{width:min(620px,calc(100% - 30px));border-top:4px solid var(--teal);border-radius:10px;padding:27px 29px}.ai-dialog form{position:relative}.ai-dialog h2{margin:0;font-size:23px;letter-spacing:-.04em}.dialog-intro{margin:8px 0 18px;color:var(--muted);font-size:11px;line-height:1.55}.dialog-field{display:block;margin-top:13px}.dialog-field>span{display:flex;justify-content:space-between;color:#44514d;font-size:10px;font-weight:800}.dialog-field small{color:var(--teal);font-weight:500}.dialog-field input,.dialog-field select{width:100%;height:38px;margin-top:6px;padding:0 10px;border:1px solid #cfd2d4;background:#fff;outline:0;font-size:11px}.dialog-field input:focus,.dialog-field select:focus{border-color:var(--teal);box-shadow:0 0 0 2px rgba(35,134,117,.12)}.two-fields{display:grid;grid-template-columns:1fr 1.15fr;gap:12px}.clear-key{display:flex;align-items:center;gap:7px;margin-top:13px;color:var(--red);font-size:10px}.clear-key input{accent-color:var(--red)}.dialog-status{min-height:16px;margin:12px 0 0;color:var(--muted);font-size:10px}.dialog-status.success{color:var(--green)}.dialog-status.error{color:var(--red)}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:13px}.key-link{margin:7px 0 0;font-size:10px}.key-link a{color:var(--teal);text-decoration:none}.key-link a:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:680px){.top-actions{gap:6px}.ai-nav-link{display:none}.ai-settings-btn{max-width:126px}.ai-dialog{padding:24px 19px}.two-fields{grid-template-columns:1fr}}

/* Keep the automatically loaded store catalog on its own row.  The notice
   and the compare options used to share the `o` grid area, which made the
   green transfer notice paint over the upload controls after an export. */
.compare-card{grid-template-areas:"k k" "t d" "p d" "h d" "n n" "o o" "b b";row-gap:10px}
.compare-card .catalog-transfer-notice{grid-area:n;width:100%;min-width:0;margin:0;align-self:stretch}
.compare-card .compare-options{grid-area:o;min-height:34px;margin:0;align-self:center}
.compare-card>.primary-btn{grid-area:b;margin-top:0;align-self:end}
@media(max-width:900px) and (min-width:741px){
  .compare-card{grid-template-columns:minmax(0,1fr) 180px}
}
@media(max-width:740px){
  .compare-card{display:block}
  .compare-card .catalog-transfer-notice{margin:12px 0;align-items:flex-start}
  .compare-card .compare-options{margin:0 0 14px;min-height:0}
  .compare-card>.primary-btn{margin-top:0}
}
@media(max-width:520px){
  .compare-card .catalog-transfer-notice{flex-wrap:wrap;gap:8px}
  .compare-card .catalog-transfer-notice>div{flex:1 1 calc(100% - 34px)}
  .compare-card .catalog-transfer-notice .text-btn{width:100%;margin-left:32px;text-align:left}
}

/* Completed-job history dialog.  It stays in the current workspace so an
   operator can review or download an earlier report without opening another
   system. */
.history-nav-btn{position:relative;display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 11px;border:1px solid #596064;border-radius:8px;background:#292d2f;color:#f5f7f6;font-size:10px;font-weight:800;white-space:nowrap}.history-nav-btn:hover{border-color:#9fcbbd;background:#343a3b}.history-badge{display:inline-grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--yellow);color:#2b2b24;font-size:9px;font-weight:900;line-height:1}
.history-dialog{width:min(940px,calc(100% - 28px));max-width:940px;max-height:calc(100vh - 30px);padding:0;border-top:4px solid var(--teal);border-radius:10px;overflow:hidden;background:#f6f9f7;color:var(--ink)}.history-dialog-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 56px 18px 27px;background:#fff;border-bottom:1px solid var(--line)}.history-dialog-head .eyebrow{margin-bottom:7px;color:#71827c}.history-dialog-head h2{margin:0 0 7px;font-size:24px;letter-spacing:-.03em}.history-dialog-head p:last-child{max-width:720px;margin:0;color:var(--muted);font-size:11px;line-height:1.6}.history-dialog-head .dialog-close{position:absolute;right:15px;top:13px;width:33px;height:33px;border:1px solid #d1d9d5;border-radius:6px;background:#fff;color:#596662;font-size:22px;line-height:1}
.history-list-view,.history-detail{padding:17px 27px 25px}.history-toolbar{display:grid;grid-template-columns:190px minmax(180px,1fr) auto;gap:10px;align-items:end}.history-toolbar label{display:grid;gap:5px;color:#667570;font-size:10px;font-weight:700}.history-toolbar select,.history-toolbar input{height:37px;border:1px solid #cdd8d3;background:#fff;padding:0 10px;outline:0;color:#27312e;font-size:11px}.history-toolbar select:focus,.history-toolbar input:focus{border-color:var(--teal);box-shadow:0 0 0 2px rgba(35,134,117,.12)}.history-search{position:relative}.history-search>span{position:absolute;left:10px;bottom:9px;color:var(--teal);font-size:16px;line-height:1;z-index:1}.history-search input{padding-left:30px}.history-toolbar>.secondary-btn{height:37px;white-space:nowrap}.history-status-line{min-height:16px;margin:12px 0 8px;color:#7a8782;font-size:10px}.history-list{display:grid;gap:8px;max-height:calc(100vh - 280px);overflow:auto;padding-right:2px}.history-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid #dce6e1;border-radius:8px;background:#fff;transition:border-color .15s,box-shadow .15s}.history-item:hover{border-color:#8db9a9;box-shadow:0 3px 12px rgba(31,91,77,.08)}.history-item-main{min-width:0;flex:1}.history-item-top{display:flex;align-items:center;gap:7px;margin-bottom:5px}.history-type,.history-status{display:inline-flex;align-items:center;height:21px;padding:0 7px;border-radius:11px;font-size:9px;font-weight:800;white-space:nowrap}.history-type{background:#e9f4ef;color:#236d5c}.history-status{background:#e8f4ed;color:#23704c}.history-status.error{background:#fce9e8;color:#a03730}.history-status.running{background:#fff4d4;color:#876117}.history-item h3{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:#26312e}.history-item-meta{display:flex;flex-wrap:wrap;gap:5px 14px;margin:7px 0 0;color:#788680;font-size:10px}.history-item-meta span{min-width:0;max-width:330px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-item-actions{display:flex;align-items:center;gap:9px;flex:none}.history-view-btn{height:32px;padding:0 12px;font-size:10px}.history-download-btn{font-size:10px;color:#1f7562;white-space:nowrap}.history-empty{display:grid;place-items:center;gap:6px;min-height:180px;color:#7b8983;text-align:center;font-size:11px}.history-empty strong{font-size:15px;color:#52615b}.history-detail{min-height:300px}.history-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}.history-detail-head .primary-btn{height:36px;padding:0 15px;font-size:10px}.history-detail h3{margin:0 0 7px;font-size:21px}.history-detail-meta{margin:0;color:#6d7c76;font-size:10px;line-height:1.6}.history-detail-files{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px;color:#75857e;font-size:10px}.history-detail-files span{padding:5px 8px;border:1px solid #dbe6e1;border-radius:5px;background:#fff}.history-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:1px;margin:17px 0;background:#dce6e1;border:1px solid #dce6e1}.history-summary-cell{display:grid;gap:4px;min-height:55px;padding:9px;background:#fff}.history-summary-cell span{color:#7a8983;font-size:9px}.history-summary-cell strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#263b34;font-size:13px}.history-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:15px 0 8px;color:#33433d;font-size:12px}.history-preview-heading span{color:#89958f;font-size:9px}.history-detail-preview{border:1px solid #dce6e1;background:#fff;overflow:hidden}.history-preview-wrap{max-height:300px;overflow:auto}.history-preview-wrap table{min-width:640px;font-size:10px}.history-preview-wrap th{position:sticky;top:0;padding:8px;background:#edf4f1;color:#55645e}.history-preview-wrap td{max-width:220px;padding:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-preview-note{margin:0;padding:7px 9px;border-top:1px solid #e5ece8;color:#89958f;font-size:9px}.history-detail-empty{padding:38px 15px;color:#89958f;text-align:center;font-size:10px}.history-detail.is-loading{opacity:.62;pointer-events:none}
@media(max-width:680px){.history-nav-btn{padding:0 8px}.history-nav-btn{font-size:9px}.history-dialog{width:calc(100% - 14px);max-height:calc(100vh - 14px)}.history-dialog-head{padding:18px 48px 15px 17px}.history-dialog-head h2{font-size:20px}.history-list-view,.history-detail{padding:14px 15px 18px}.history-toolbar{grid-template-columns:1fr 1fr}.history-toolbar .history-search{grid-column:1/-1;grid-row:1}.history-toolbar>.secondary-btn{height:35px}.history-list{max-height:calc(100vh - 245px)}.history-item{align-items:flex-start;flex-direction:column;gap:9px}.history-item-actions{width:100%;justify-content:flex-end}.history-item-meta span{max-width:100%}.history-detail-head{align-items:stretch}.history-detail-head .primary-btn{padding:0 11px}.history-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.history-toolbar{grid-template-columns:1fr}.history-toolbar .history-search{grid-column:auto;grid-row:auto}.history-toolbar>.secondary-btn{width:100%}.history-item-actions{justify-content:space-between}.history-view-btn{flex:1}.history-download-btn{padding:0 10px}}

/* System account gate, account administration, daily capture and work logs. */
[hidden]{display:none!important}
.app-auth-gate{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:rgba(27,39,36,.74);backdrop-filter:blur(7px)}
.app-auth-card{width:min(430px,calc(100vw - 30px));padding:32px 34px 27px;border:1px solid #d9e5df;border-top:5px solid var(--yellow);border-radius:14px;background:#fff;box-shadow:0 24px 70px rgba(12,35,28,.25);color:var(--ink)}
.app-auth-brand{display:flex;align-items:center;gap:8px;margin-bottom:24px}.app-auth-brand strong{font-size:18px;letter-spacing:.04em}.app-auth-brand em{font-style:normal;color:#89958f;font-size:10px}
.app-auth-card h1{margin:0;font-size:26px;letter-spacing:-.04em}.app-auth-card #authGateIntro{margin:8px 0 21px;color:var(--muted);font-size:11px;line-height:1.6}.app-auth-card .eyebrow{margin-bottom:7px;color:#6b8178}
.auth-field{display:grid;gap:6px;margin-top:13px;color:#4d5e57;font-size:10px;font-weight:800}.auth-field input{height:42px;width:100%;padding:0 12px;border:1px solid #cbd8d2;border-radius:7px;background:#fbfdfc;color:var(--ink);outline:0;font-size:12px}.auth-field input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(25,139,121,.12)}.auth-submit{width:100%;height:43px;margin-top:20px;font-size:12px}.auth-status{min-height:17px;margin:12px 0 0;color:#7b8983;font-size:10px;line-height:1.5}.auth-status.error{color:var(--red)}.auth-status.success{color:var(--green)}.auth-footnote{margin:21px 0 0;padding-top:13px;border-top:1px solid #e7eeea;color:#8a9691;font-size:9px;line-height:1.5}
.app-account-tools{display:inline-flex;align-items:center;gap:6px;margin-left:2px}.app-user-name{display:inline-flex;align-items:center;max-width:130px;height:30px;padding:0 8px;border:1px solid #52615f;border-radius:7px;color:#e2ede8;font-size:10px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-tool-btn{height:30px;padding:0 9px;border:1px solid #596064;border-radius:7px;background:#303537;color:#edf4f1;font-size:10px;font-weight:800;white-space:nowrap}.header-tool-btn:hover{border-color:#9fcbbd;background:#3a4141}.header-tool-btn.subtle{color:#c0cbc7;font-weight:600}
.all-export-btn{border-color:#94cbb9;background:#eff9f4;color:#196453}.all-export-btn:hover{background:#ddf3e9;border-color:#4d9a83}.daily-capture-panel{display:grid;gap:10px;margin-top:15px;padding:13px 14px;border:1px solid #d8e7df;border-radius:8px;background:#f4faf7}.daily-capture-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.daily-capture-head>div{display:grid;gap:3px}.daily-capture-head .card-kicker{margin:0;color:#5b8174}.daily-capture-head strong{font-size:12px;color:#234a3e}.daily-capture-head small{color:#7a8d85;font-size:9px}.capture-toggle{display:flex;align-items:center;gap:6px;color:#477266;font-size:10px;font-weight:800;white-space:nowrap}.capture-toggle input{accent-color:var(--teal)}.daily-capture-controls{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.daily-capture-controls>label:first-child{display:grid;gap:4px;color:#6c7e77;font-size:9px;font-weight:700}.daily-capture-controls input[type=time]{height:31px;border:1px solid #cbdad3;border-radius:5px;padding:0 7px;background:#fff}.capture-all-label{display:flex;align-items:center;gap:5px;height:31px;color:#4b6f62;font-size:10px;font-weight:700}.capture-all-label input{accent-color:var(--teal)}.daily-capture-controls .secondary-btn{height:31px;padding:0 10px;font-size:9px}.daily-capture-controls .text-btn{height:31px;display:inline-flex;align-items:center;padding:0 4px;font-size:9px}.capture-status{min-height:14px;margin:0;color:#71857c;font-size:9px;line-height:1.5}.capture-status.error{color:var(--red)}
.account-admin-dialog,.work-log-dialog{width:min(1060px,calc(100% - 28px));max-width:1060px;max-height:calc(100vh - 30px);padding:0;border-top:4px solid var(--teal);border-radius:10px;overflow:hidden;background:#f6f9f7;color:var(--ink)}.work-log-dialog{width:min(900px,calc(100% - 28px));max-width:900px}.account-dialog-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 55px 17px 26px;background:#fff;border-bottom:1px solid var(--line)}.account-dialog-head h2{margin:0 0 6px;font-size:23px;letter-spacing:-.04em}.account-dialog-head p:last-child{margin:0;color:var(--muted);font-size:10px;line-height:1.5}.account-dialog-head .dialog-close{position:absolute;right:14px;top:12px;width:33px;height:33px;border:1px solid #d1d9d5;border-radius:6px;background:#fff;color:#596662;font-size:22px;line-height:1}
.account-admin-body{display:grid;grid-template-columns:minmax(260px,.82fr) minmax(360px,1.18fr);min-height:560px}.account-list-section{padding:17px 18px 20px;border-right:1px solid #dfe8e3;background:#f0f6f3}.account-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:11px;color:#385148;font-size:12px}.account-section-head .secondary-btn{height:31px;padding:0 9px;font-size:9px}.account-list{display:grid;gap:7px;max-height:470px;overflow:auto}.account-list-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 10px;border:1px solid #d7e4dd;border-radius:7px;background:#fff;cursor:pointer}.account-list-item:hover,.account-list-item.active{border-color:#65a58f;box-shadow:0 2px 9px rgba(34,102,82,.09)}.account-list-item-main{min-width:0}.account-list-item-main strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#29483d;font-size:11px}.account-list-item-main small{display:block;margin-top:4px;color:#84938d;font-size:9px}.account-list-badges{display:flex;align-items:center;gap:4px;flex:none}.account-role-badge,.account-status-badge{display:inline-flex;align-items:center;height:19px;padding:0 6px;border-radius:10px;background:#e1f1eb;color:#26715d;font-size:8px;font-weight:800;white-space:nowrap}.account-role-badge.admin{background:#fff0c8;color:#856117}.account-status-badge.off{background:#f3e7e5;color:#a45248}.account-form-section{padding:19px 23px 22px;background:#fff;overflow:auto}.account-form-section form{display:grid;gap:2px}.account-form-row{display:grid;grid-template-columns:1fr auto;align-items:end;gap:12px}.account-active{display:flex;align-items:center;gap:6px;height:38px;padding-bottom:1px;color:#53655e;font-size:10px;font-weight:700}.account-active input{accent-color:var(--teal)}.permission-fieldset,.store-fieldset{margin:14px 0 0;padding:11px 12px;border:1px solid #dce7e1;border-radius:7px}.permission-fieldset legend,.store-fieldset legend{padding:0 5px;color:#5b7168;font-size:10px;font-weight:800}.permission-fieldset legend small,.store-fieldset legend small{color:#91a09a;font-size:9px;font-weight:500}.permission-fieldset{display:flex;flex-wrap:wrap;gap:8px 14px}.permission-fieldset label{display:flex;align-items:center;gap:5px;color:#50645b;font-size:10px}.permission-fieldset input,.user-store-choices input{accent-color:var(--teal)}.user-store-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 10px;max-height:150px;overflow:auto}.user-store-choice{display:flex;align-items:flex-start;gap:5px;min-width:0;color:#586c63;font-size:9px;line-height:1.35}.user-store-choice span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-form-section .dialog-actions{margin-top:15px}.account-form-section .dialog-actions button{height:36px;font-size:10px}
.work-log-body{padding:17px 23px 23px}.work-log-toolbar{display:grid;grid-template-columns:150px 170px minmax(180px,1fr) auto;align-items:end;gap:9px}.work-log-toolbar label{display:grid;gap:5px;color:#64766e;font-size:9px;font-weight:800}.work-log-toolbar input,.work-log-toolbar select{height:35px;border:1px solid #cddbd4;padding:0 9px;background:#fff;outline:0;font-size:10px}.work-log-search{position:relative}.work-log-search>span{position:absolute;left:9px;bottom:8px;color:var(--teal);font-size:15px}.work-log-search input{padding-left:27px!important}.work-log-toolbar>.secondary-btn{height:35px;padding:0 12px;font-size:9px}.work-log-list{display:grid;gap:7px;max-height:310px;margin-top:13px;overflow:auto}.work-log-item{display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:12px;padding:11px 12px;border:1px solid #dce7e1;border-radius:7px;background:#fff}.work-log-item-date{color:#43806e;font-size:10px;font-weight:800}.work-log-item-main strong{display:block;color:#304a41;font-size:10px}.work-log-item-main p{margin:4px 0 0;color:#65756e;font-size:10px;line-height:1.5;white-space:pre-wrap}.work-log-item-main small{display:block;margin-top:5px;color:#93a099;font-size:9px}.work-log-item-actions{display:flex;align-items:flex-start;gap:6px}.work-log-item-actions button{border:0;background:none;color:#6d8a7f;font-size:9px;cursor:pointer}.work-log-item-actions button:hover{color:var(--red)}.work-log-form{display:grid;gap:9px;margin-top:17px;padding:14px;border:1px solid #d8e6de;border-radius:8px;background:#f5faf7}.work-log-form-head{display:flex;align-items:center;justify-content:space-between;color:#35564a;font-size:11px}.work-log-form-head .dialog-status{margin:0}.work-log-form-grid{display:grid;grid-template-columns:140px 1fr 140px;gap:9px}.work-log-form label{display:grid;gap:5px;color:#60736a;font-size:9px;font-weight:800}.work-log-form input,.work-log-form select,.work-log-form textarea{border:1px solid #cbdad2;border-radius:5px;padding:8px;background:#fff;outline:0;color:#30413a;font-size:10px}.work-log-form input,.work-log-form select{height:34px;padding:0 8px}.work-log-form textarea{resize:vertical;line-height:1.5}.work-log-store-label{display:flex!important;align-items:center;gap:7px!important;flex-wrap:wrap}.work-log-store-label input{width:15px;height:15px;padding:0}.work-log-store-label small{color:#8b9993;font-weight:500}
@media(max-width:850px){.app-account-tools{gap:4px}.app-user-name{max-width:90px}.account-admin-body{grid-template-columns:1fr}.account-list-section{border-right:0;border-bottom:1px solid #dfe8e3}.account-list{max-height:180px}.work-log-toolbar{grid-template-columns:1fr 1fr}.work-log-toolbar .work-log-search{grid-column:1/-1;grid-row:1}.work-log-toolbar>.secondary-btn{width:100%}}
@media(max-width:620px){.app-auth-card{padding:27px 22px 22px}.top-actions{flex-wrap:wrap;justify-content:flex-end}.app-account-tools{order:4;width:100%;justify-content:flex-end}.daily-capture-controls{align-items:stretch}.daily-capture-controls .secondary-btn{flex:1}.account-admin-dialog,.work-log-dialog{width:calc(100% - 14px);max-height:calc(100vh - 14px)}.account-dialog-head{padding:18px 47px 15px 17px}.account-admin-body{min-height:0}.account-form-section{padding:15px 16px 18px}.account-form-row{grid-template-columns:1fr}.user-store-choices{grid-template-columns:1fr}.work-log-body{padding:14px 15px 18px}.work-log-form-grid{grid-template-columns:1fr}.work-log-item{grid-template-columns:1fr;gap:5px}.work-log-item-actions{justify-content:flex-end}}
.employee-connection-notice{padding:12px 13px;border:1px solid #d8e7df;border-radius:7px;background:#f3faf6;color:#557267;font-size:10px;line-height:1.6}
.library-ai-option{align-items:flex-start;gap:8px;padding:7px 9px;border:1px solid #b9dacc;border-radius:8px;background:#eef9f4}.library-ai-option>span:last-child{display:grid;gap:2px;line-height:1.2;white-space:normal;min-width:0}.library-ai-option b{color:#245b4c;font-size:10px}.library-ai-option small{color:#71877d;font-size:9px}.library-ai-option input:checked+.toggle{background:#23866d}
.schedule-store-downloads{display:flex;align-items:center;flex-wrap:wrap;gap:5px 8px;padding-top:2px;color:#71857c;font-size:9px}.schedule-store-downloads a{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border:1px solid #cfe2d8;border-radius:5px;background:#fff;color:#1f7562;font-weight:800;text-decoration:none}.schedule-store-downloads a:hover{background:#e9f7f0}.schedule-store-downloads a small{color:#82938b;font-size:8px;font-weight:500}
.history-store-files{display:grid;gap:7px;margin:15px 0 0;padding:12px;border:1px solid #d8e7df;border-radius:8px;background:#f4faf7}.history-store-files-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#35584b;font-size:11px}.history-store-files-head small{color:#82928b;font-size:9px;font-weight:500}.history-store-file-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:6px}.history-store-file{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;border:1px solid #dce9e2;border-radius:6px;background:#fff}.history-store-file span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#4d665c;font-size:9px}.history-store-file b{color:#91a09a;font-size:9px;font-weight:500}.history-store-file a{flex:none;color:#1f7562;font-size:9px;font-weight:800;text-decoration:none}.history-store-file a:hover{text-decoration:underline}

/* -------------------------------------------------------------------------
   System workspace layout
   A full-width application shell with a persistent navigation rail.  The
   existing IDs and panels stay intact so all account, export, comparison and
   history interactions continue to use the same handlers.
   ------------------------------------------------------------------------- */
:root{
  --sys-nav:#172629;
  --sys-nav-2:#203538;
  --sys-nav-muted:#91a7a2;
  --sys-canvas:#eef3f2;
  --sys-surface:#ffffff;
  --sys-border:#d8e3df;
  --sys-border-strong:#c4d2cd;
  --sys-accent:#1b8c78;
  --sys-accent-dark:#126b5c;
  --sys-accent-soft:#e7f5ef;
  --sys-shadow:0 12px 30px rgba(23,52,46,.08);
}
html{background:var(--sys-canvas)}
body{min-height:100vh;background:var(--sys-canvas);color:#1d2b2d;overflow-x:hidden}
.topbar{height:64px;padding:0 28px;background:#152124;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 2px 12px rgba(10,28,26,.18)}
.topbar .brand{font-size:19px;letter-spacing:.01em}
.topbar .brand-mark{width:25px;height:25px}
.topbar .brand em{font-size:11px;color:#9fb0ad;border-left-color:#465857}
.top-actions{gap:8px}
.topbar .ai-nav-link,.topbar .history-nav-btn{display:none}
.topbar .ai-settings-btn{height:31px;border-radius:7px;background:#233133;border-color:#4f6864;font-size:10px}
.topbar .status-pill{font-size:10px;color:#afbfbb}
.topbar .icon-btn{width:31px;height:31px;border-radius:7px;border-color:#4e5e5e;font-size:15px}
.shell{width:100%;max-width:none;margin:0;background:transparent;min-height:calc(100vh - 64px)}
.app-layout{display:grid;grid-template-columns:248px minmax(0,1fr);align-items:stretch;min-height:calc(100vh - 64px);max-width:none;margin:0}
.app-nav{position:sticky;top:64px;z-index:12;height:calc(100vh - 64px);display:flex;flex-direction:column;gap:0;padding:23px 13px 15px;background:linear-gradient(180deg,var(--sys-nav) 0%,#122124 100%);color:#eff7f4;border-right:1px solid #2d4243;box-shadow:8px 0 24px rgba(19,39,38,.06)}
.app-nav-brand{display:flex;align-items:center;gap:10px;padding:1px 10px 21px;border-bottom:1px solid rgba(210,237,229,.13)}
.app-nav-brand>div{display:grid;gap:3px;min-width:0}
.app-nav-brand strong{font-size:17px;letter-spacing:.04em;line-height:1}
.app-nav-brand small{font-size:9px;color:#9cb2ad;letter-spacing:.05em}
.nav-brand-mark{position:relative;display:inline-block;width:28px;height:28px;flex:none}
.nav-brand-mark i{position:absolute;width:10px;height:10px;border-radius:2px;background:#ffd20a;transform:rotate(45deg)}
.nav-brand-mark i:nth-child(1){left:9px;top:0}.nav-brand-mark i:nth-child(2){right:0;top:9px;background:#ff9f1a}.nav-brand-mark i:nth-child(3){left:9px;bottom:0;background:#ff7a20}.nav-brand-mark i:nth-child(4){left:0;top:9px;background:#ffbd00}
.app-nav-status{display:flex;align-items:center;gap:8px;margin:17px 9px 12px;padding:8px 10px;border:1px solid rgba(168,211,199,.17);border-radius:7px;background:rgba(255,255,255,.045);color:#a9beb9;font-size:10px}
.nav-status-dot{width:7px;height:7px;border-radius:50%;background:#7e9290;box-shadow:0 0 0 3px rgba(126,146,144,.1);flex:none}
.nav-status-dot.online{background:#3dcc91;box-shadow:0 0 0 3px rgba(61,204,145,.14)}
.nav-groups{display:grid;gap:23px;overflow:auto;padding:0 1px 8px;scrollbar-width:thin;scrollbar-color:#3b5554 transparent}
.nav-group{display:grid;gap:4px}
.nav-group-title{margin:0 10px 6px;color:#78908b;font-size:9px;font-weight:800;letter-spacing:.13em}
.nav-item{position:relative;width:100%;min-height:49px;display:flex;align-items:center;gap:11px;padding:8px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#b8c9c5;text-align:left;transition:background .16s,border-color .16s,color .16s,transform .16s}
.nav-item:hover{background:rgba(255,255,255,.08);border-color:rgba(184,220,210,.12);color:#fff;transform:translateX(1px)}
.nav-item.active{background:linear-gradient(90deg,rgba(36,157,132,.28),rgba(36,157,132,.08));border-color:rgba(92,199,170,.28);color:#fff;box-shadow:inset 3px 0 0 #42bd9a}
.nav-item.active::after{content:"";position:absolute;right:10px;width:5px;height:5px;border-radius:50%;background:#ffd20a}
.nav-item-icon{width:29px;height:29px;display:grid;place-items:center;flex:none;border:1px solid rgba(201,231,222,.18);border-radius:7px;color:#a9c1bb;font-size:14px;font-weight:800}
.nav-item.active .nav-item-icon{border-color:rgba(132,233,200,.45);background:rgba(83,203,168,.16);color:#baf5df}
.nav-item-copy{position:relative;display:grid;gap:3px;min-width:0}
.nav-item-copy b{font-size:11px;line-height:1.2;white-space:nowrap}
.nav-item-copy small{font-size:9px;line-height:1.2;color:#839b95;white-space:nowrap}
.nav-item.active .nav-item-copy small{color:#a8d5c8}
.nav-item-copy em{position:absolute;left:78px;top:-1px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#ffd20a;color:#26302d;font-style:normal;font-size:8px;font-weight:900}
.app-nav-footer{margin-top:auto;padding:14px 9px 0;border-top:1px solid rgba(210,237,229,.13);display:grid;gap:11px}
.nav-selection-summary{display:grid;gap:4px;padding:2px 1px}
.nav-selection-summary span{color:#78908b;font-size:9px}.nav-selection-summary strong{font-size:12px;color:#e5f4ef}.nav-selection-summary small{font-size:9px;color:#8ba39d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav-help-btn{height:34px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(176,211,201,.2);border-radius:7px;background:rgba(255,255,255,.04);color:#aec2bc;font-size:10px}
.nav-help-btn:hover{background:rgba(255,255,255,.1);border-color:rgba(176,211,201,.4);color:#fff}.nav-help-btn span{width:17px;height:17px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:10px}
.app-content{min-width:0;min-height:calc(100vh - 64px);padding:25px clamp(22px,3vw,48px) 56px;background:var(--sys-canvas);overflow:hidden}
.hero-band{position:relative;isolation:isolate;min-height:154px;margin:0 0 22px;padding:27px 31px 25px;border:1px solid #efd98a;border-radius:16px;background:linear-gradient(120deg,#fff8cf 0%,#ffe477 52%,#ffd21a 100%);box-shadow:var(--sys-shadow);overflow:hidden;align-items:center}
.hero-band::after{content:"";position:absolute;z-index:-1;right:-80px;top:-145px;width:470px;height:370px;border:1px solid rgba(128,99,0,.13);border-radius:50%;box-shadow:0 0 0 44px rgba(255,255,255,.11),0 0 0 88px rgba(255,255,255,.08);transform:rotate(-19deg)}
.hero-band>div:first-child{max-width:850px}.hero-band .eyebrow{margin-bottom:9px;color:#6c5a1d;font-size:9px;letter-spacing:.18em}.hero-band h1{font-size:31px;line-height:1.18;letter-spacing:-.04em;color:#242a28;margin-bottom:8px}.hero-copy{max-width:780px;font-size:11px;line-height:1.7;color:#62562a}
.hero-stats{min-width:242px;border:1px solid rgba(84,72,21,.2);border-radius:10px;background:rgba(255,255,255,.32);overflow:hidden;box-shadow:0 5px 16px rgba(104,84,16,.08)}.hero-stats div{min-width:120px;padding:14px 17px}.hero-stats strong{font-size:23px;color:#27302b}.hero-stats span{font-size:9px;color:#6e6234}
.workspace-grid.embedded-active{display:grid!important;grid-template-columns:minmax(280px,310px) minmax(0,1fr)!important;gap:22px;align-items:start;min-height:0;background:transparent}
.workspace-grid.embedded-active .sidebar{position:sticky;top:88px;z-index:5;min-width:0;max-height:calc(100vh - 110px);overflow:auto;padding:21px 18px 23px;border:1px solid var(--sys-border);border-radius:14px;background:var(--sys-surface);box-shadow:var(--sys-shadow)}
.workspace-grid.embedded-active .main-panel{min-width:0;padding:0 0 44px;background:transparent}
.workspace-grid.embedded-active .step-heading{gap:10px}.workspace-grid.embedded-active .step-heading h2{font-size:14px}.workspace-grid.embedded-active .step-heading p{font-size:10px}.workspace-grid.embedded-active .step-no{width:28px;height:28px;border-radius:7px;font-size:9px}.workspace-grid.embedded-active .divider{margin:20px 0;border-color:var(--sys-border)}
.workspace-grid.embedded-active .login-box{margin-top:14px}.workspace-grid.embedded-active .embedded-login{padding-top:8px}.workspace-grid.embedded-active .embedded-toolbar strong{font-size:11px}.workspace-grid.embedded-active .embedded-toolbar span{font-size:9px}.workspace-grid.embedded-active .embedded-viewport{height:360px;border-radius:8px;border-color:var(--sys-border)}.workspace-grid.embedded-active .embedded-viewport iframe{height:520px}
.workspace-grid.embedded-active .store-tools{grid-template-columns:minmax(0,1fr) 35px;gap:6px}.workspace-grid.embedded-active .store-tools input{height:36px;font-size:10px}.workspace-grid.embedded-active .ghost-btn{height:36px}.workspace-grid.embedded-active .store-list{height:270px;min-height:180px;max-height:340px}.workspace-grid.embedded-active .store-item{padding:10px 5px}.workspace-grid.embedded-active .store-item strong{font-size:10px}.workspace-grid.embedded-active .store-item small{font-size:8px}
.mode-bar{margin:0 0 18px;padding:11px 13px 11px 15px;border-radius:11px;border-color:var(--sys-border);background:#fff;box-shadow:var(--sys-shadow)}.mode-bar-copy strong{font-size:15px}.mode-bar-copy>span:last-child{font-size:10px}.mode-switcher{border-color:var(--sys-border);background:#f1f6f4;border-radius:9px}.mode-tab{min-width:118px;height:44px;border-radius:7px}.mode-tab.active{background:var(--sys-nav);box-shadow:0 5px 12px rgba(22,45,42,.16)}
.panel-heading{margin:0 0 16px}.panel-heading .step-no{background:var(--sys-accent-dark)}.action-grid{grid-template-columns:minmax(260px,.82fr) minmax(380px,1.18fr);gap:16px}.action-card{min-width:0;min-height:238px;padding:20px;border-radius:14px;border-color:var(--sys-border);background:#fff;box-shadow:var(--sys-shadow)}.action-card:hover{border-color:#a9c9bf;box-shadow:0 16px 32px rgba(23,66,57,.1);transform:translateY(-1px)}
.card-kicker{font-size:9px;letter-spacing:.15em;color:#71827d}.card-title{gap:10px}.card-title h3{font-size:16px}.card-icon{width:35px;height:35px;border-radius:9px}.action-card>p{font-size:10px;line-height:1.7;margin:13px 0;color:#74817e}.export-actions{gap:7px}.export-actions .secondary-btn{height:37px;font-size:10px}.duplicate-hint,.card-footnote{font-size:9px;line-height:1.45;color:#87938f}
.compare-card{grid-template-columns:minmax(0,1fr) 164px;column-gap:16px;row-gap:8px}.compare-card .card-title h3{font-size:15px}.compare-card>p{font-size:10px;margin:6px 0}.dropzone{min-height:122px;border-radius:9px}.dropzone strong{font-size:10px}.dropzone small{font-size:8px}.compare-options{gap:10px}.mode-ready-hint{font-size:9px;color:#7d8c87}.compare-card>.primary-btn{min-width:145px;height:39px;font-size:10px}.daily-capture-panel{margin-top:12px;padding:11px 12px;border-radius:8px}.daily-capture-head strong{font-size:11px}.daily-capture-head small{font-size:8px}.job-panel{margin-top:15px;border-radius:10px}
.workspace-grid.result-mode{display:block!important;grid-template-columns:1fr!important;background:transparent}.workspace-grid.result-mode .sidebar{display:none!important}.workspace-grid.result-mode .main-panel{padding:0 0 48px!important}.workspace-grid.result-mode .result-panel{margin:0;border-radius:15px;box-shadow:var(--sys-shadow)}.result-head{padding:21px 24px 18px}.result-head h2{font-size:23px}.result-actions{gap:7px}.summary-cards,.filter-row,.table-wrap{margin-left:17px;margin-right:17px}.summary-cards{margin-top:15px}.filter-row{top:78px}.table-wrap{max-height:calc(100vh - 385px)}

@media(max-width:1320px) and (min-width:901px){
  .app-layout{grid-template-columns:226px minmax(0,1fr)}
  .app-content{padding-left:25px;padding-right:25px}
  .action-grid{grid-template-columns:1fr}
  .workspace-grid.embedded-active{grid-template-columns:minmax(260px,285px) minmax(0,1fr)!important}
  .compare-card{grid-template-columns:minmax(0,1fr) 180px}
}
@media(max-width:900px){
  .topbar{height:60px;padding:0 17px}.shell{min-height:calc(100vh - 60px)}
  .app-layout{display:block;min-height:calc(100vh - 60px)}
  .app-nav{position:sticky;top:60px;width:100%;height:auto;min-height:0;display:flex;flex-direction:row;align-items:center;gap:10px;padding:8px 12px;border-right:0;border-bottom:1px solid #2b4444;box-shadow:0 4px 14px rgba(18,43,40,.12);overflow-x:auto;scrollbar-width:none}
  .app-nav::-webkit-scrollbar{display:none}.app-nav-brand,.app-nav-status,.app-nav-footer{display:none}
  .nav-groups{display:flex;align-items:center;gap:5px;overflow:visible;padding:0}.nav-group{display:flex;align-items:center;gap:4px}.nav-group-title{display:none}
  .nav-item{width:auto;min-height:38px;padding:5px 9px;gap:7px;border-radius:7px;white-space:nowrap}.nav-item-icon{width:25px;height:25px;font-size:12px}.nav-item-copy{display:block}.nav-item-copy b{font-size:10px}.nav-item-copy small{display:none}.nav-item.active::after{right:5px;top:5px;width:4px;height:4px}
  .app-content{min-height:calc(100vh - 98px);padding:18px 18px 42px}.hero-band{min-height:0;padding:23px 24px;margin-bottom:17px}.hero-band h1{font-size:27px}.hero-copy{font-size:10px}.hero-stats{margin-top:17px;min-width:0;width:100%}
  .workspace-grid.embedded-active{display:block!important}.workspace-grid.embedded-active .sidebar{position:relative;top:auto;max-height:none;overflow:visible;margin-bottom:17px;padding:18px}.workspace-grid.embedded-active .main-panel{padding:0 0 36px}.workspace-grid.embedded-active .embedded-viewport{height:400px}
  .action-grid{grid-template-columns:1fr;gap:13px}.action-card{min-height:0}.compare-card{grid-template-columns:minmax(0,1fr) 180px}
  .workspace-grid.result-mode .main-panel{padding-bottom:30px!important}.summary-cards,.filter-row,.table-wrap{margin-left:12px;margin-right:12px}
}
@media(max-width:620px){
  .topbar{height:56px;padding:0 12px}.topbar .brand{font-size:16px}.topbar .brand-mark{width:22px;height:22px}.topbar .brand em{display:none}.top-actions{gap:5px}.topbar .ai-settings-btn{max-width:112px;padding:0 8px;font-size:9px}.topbar .status-pill{display:none}.app-account-tools{gap:4px}.app-user-name{max-width:94px;font-size:9px}.header-tool-btn{height:28px;padding:0 7px;font-size:9px}.header-tool-btn.subtle{display:none}.topbar .icon-btn{width:28px;height:28px}
  .app-nav{top:56px;padding:7px 8px}.nav-item{min-height:36px;padding:5px 7px}.nav-item-copy b{font-size:9px}.nav-item-icon{width:23px;height:23px}
  .app-content{min-height:calc(100vh - 92px);padding:13px 11px 32px}.hero-band{padding:20px 18px 18px;border-radius:12px}.hero-band h1{font-size:24px}.hero-band .eyebrow{font-size:8px}.hero-copy{font-size:10px;line-height:1.6}.hero-stats div{padding:12px 13px}.hero-stats strong{font-size:21px}
  .workspace-grid.embedded-active .sidebar{padding:15px;border-radius:11px}.workspace-grid.embedded-active .embedded-viewport{height:360px}.workspace-grid.embedded-active .store-list{height:220px}
  .mode-bar{display:block;padding:11px}.mode-bar-copy{display:grid;gap:4px;margin-bottom:9px}.mode-switcher{width:100%;display:flex}.mode-tab{min-width:0;flex:1;height:42px;padding:0 7px;justify-content:center}.mode-tab-icon{width:22px;height:22px}.mode-tab b{font-size:10px}.mode-tab small{display:none}
  .action-card{padding:17px;border-radius:11px}.compare-card{display:block}.dropzone{margin:13px 0;min-height:112px}.compare-options{display:grid;gap:9px;margin-bottom:12px}.compare-card>.primary-btn{width:100%;margin-top:4px}.export-actions .secondary-btn{width:100%}
  .result-head{display:block;padding:18px 16px}.result-head h2{font-size:21px}.result-meta{margin-left:42px}.result-actions{margin-top:14px;display:grid;grid-template-columns:1fr 1fr}.result-actions .result-download{grid-column:1/-1;width:100%}.result-actions .result-close{width:100%;grid-column:1/-1}.summary-cards,.filter-row,.table-wrap{margin-left:9px;margin-right:9px}.summary-cards{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.filter-row{padding:9px;gap:8px}.table-wrap{max-height:calc(100vh - 420px)}
}

/* Password visibility and self-service account security. */
.password-control{position:relative;display:block;width:100%}.password-control input{padding-right:62px!important}.password-visibility-btn{position:absolute;right:7px;top:50%;transform:translateY(-50%);height:28px;padding:0 7px;border:1px solid #cbd8d2;border-radius:5px;background:#fff;color:#397467;font-size:10px;font-weight:800;line-height:1}.password-visibility-btn:hover{border-color:#6aa996;background:#edf8f3;color:#176b5a}.password-visibility-btn:focus-visible{outline:2px solid rgba(27,140,120,.35);outline-offset:1px}.password-dialog{width:min(500px,calc(100% - 28px));max-width:500px;padding:0;border-top:4px solid var(--teal);border-radius:10px;overflow:hidden;background:#f6f9f7;color:var(--ink)}.password-dialog form{display:grid;gap:2px;padding:23px 27px 25px}.password-dialog h2{margin:0 0 6px;font-size:23px;letter-spacing:-.04em}.password-dialog .dialog-intro{margin:0 0 12px;color:var(--muted);font-size:10px;line-height:1.6}.password-dialog .dialog-field{margin-top:11px}.password-dialog .dialog-field>span:first-child{display:flex;align-items:center;justify-content:space-between}.password-dialog .dialog-field small{color:#899790;font-size:9px;font-weight:500}.password-dialog .dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.password-dialog .dialog-actions button{height:36px;font-size:10px}.password-dialog .dialog-close{top:10px;right:12px;width:32px;height:32px;border:1px solid #d1d9d5;border-radius:6px;background:#fff;color:#596662;font-size:21px;line-height:1}.change-password-header{color:#d6ece5}.nav-item[data-nav-action="password"] .nav-item-icon{font-size:17px}@media(max-width:850px){.change-password-header{display:none}}@media(max-width:620px){.password-dialog{width:calc(100% - 14px);max-height:calc(100vh - 14px)}.password-dialog form{padding:19px 17px 20px}.password-dialog h2{font-size:20px}.password-dialog .dialog-actions{display:grid;grid-template-columns:1fr 1fr}.password-dialog .dialog-actions button{width:100%}}

/* Desktop shell: the navigation owns the full left edge from top to bottom. */
@media(min-width:901px){
  .topbar{width:calc(100% - 248px);margin-left:248px;justify-content:flex-end}
  .topbar>.brand{display:none}
  .app-nav{position:fixed;left:0;top:0;width:248px;height:100vh}
  .app-content{grid-column:2}
}
@media(max-width:1320px) and (min-width:901px){
  .topbar{width:calc(100% - 226px);margin-left:226px}
  .app-nav{width:226px}
}
@media(max-width:900px){
  .topbar{width:100%;margin-left:0;justify-content:space-between}
  .topbar>.brand{display:flex}
  .app-nav{position:sticky;left:auto;top:60px;width:100%;height:auto}
  .app-content{grid-column:auto}
}
@media(max-width:620px){.app-nav{top:56px}}

/* History scope controls keep personal work separate from managed-account
   activity while reusing the existing type/search/download workflow. */
.history-scope-tabs{display:flex;gap:7px;margin:0 0 13px;padding:4px;border:1px solid #d7e5df;border-radius:9px;background:#edf5f1}
.history-scope-tab{flex:1;display:grid;gap:3px;min-height:48px;padding:8px 12px;border:1px solid transparent;border-radius:7px;background:transparent;color:#5d726a;text-align:left;cursor:pointer;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}
.history-scope-tab strong{font-size:11px;line-height:1.2}.history-scope-tab small{font-size:9px;color:#8a9b94}.history-scope-tab:hover{background:#f8fcfa;color:#245e50}.history-scope-tab.active{border-color:#8fc4b1;background:#fff;color:#176956;box-shadow:0 3px 9px rgba(32,102,82,.08)}.history-scope-tab.active small{color:#548879}
.history-owner-filter{display:flex;align-items:end;gap:12px;margin-top:11px;padding:10px 11px;border:1px solid #dbe9e2;border-radius:8px;background:#f4faf7}
.history-owner-filter label{display:grid;gap:5px;min-width:210px;color:#667570;font-size:10px;font-weight:700}.history-owner-filter select{height:34px;border:1px solid #cdd8d3;background:#fff;padding:0 9px;outline:0;color:#27312e;font-size:10px}.history-owner-filter select:focus{border-color:var(--teal);box-shadow:0 0 0 2px rgba(35,134,117,.12)}.history-owner-filter>span{padding-bottom:8px;color:#7a8982;font-size:9px}
.history-owner-badge{display:inline-flex;align-items:center;max-width:230px;height:21px;padding:0 7px;border:1px solid #dbe8e2;border-radius:11px;background:#f3f8f5;color:#5d756b;font-size:9px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.history-scope-tabs[hidden],.history-owner-filter[hidden]{display:none!important}
@media(max-width:680px){.history-scope-tabs{display:grid;grid-template-columns:1fr 1fr}.history-scope-tab{min-height:44px;padding:7px 9px}.history-owner-filter{display:grid;gap:6px}.history-owner-filter label{min-width:0}.history-owner-filter>span{padding:0}.history-owner-badge{max-width:170px}}
@media(max-width:520px){.history-scope-tabs{grid-template-columns:1fr}.history-scope-tab{min-height:42px}.history-owner-filter select{width:100%}}

/* Keep the header and the full-height navigation rail on one continuous color surface. */
.topbar,.app-nav{background:#152124}
.topbar{border-bottom-color:rgba(210,237,229,.1)}
.app-nav{border-right-color:rgba(210,237,229,.1)}

/* Account actions live in the left rail; keep the top strip free of duplicates. */
.topbar .top-actions{display:none}
.nav-account-summary{display:grid;gap:4px;padding:2px 1px}.nav-account-summary span{color:#78908b;font-size:9px}.nav-account-summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e5f4ef;font-size:12px}.nav-account-summary small{color:#8ba39d;font-size:9px}.nav-footer-actions{display:grid;gap:7px}.nav-logout-btn{height:34px;border:1px solid rgba(222,178,164,.28);border-radius:7px;background:rgba(164,68,50,.12);color:#e9c5bc;font-size:10px;font-weight:800}.nav-logout-btn:hover{background:rgba(164,68,50,.26);border-color:rgba(222,178,164,.5);color:#fff}
@media(min-width:901px){
  .topbar{display:none}
  .app-layout{min-height:100vh}
  .app-content{min-height:100vh}
}
@media(max-width:900px){
  .topbar .top-actions{display:none}
  .app-nav-footer{display:flex;align-items:center;gap:6px;margin:0;padding:0;border:0;flex:none}
  .nav-account-summary,.nav-selection-summary{display:none}
  .nav-footer-actions{display:flex;align-items:center;gap:5px}
  .nav-help-btn,.nav-logout-btn{height:34px;padding:0 10px;white-space:nowrap}
}

/* Final desktop compaction overrides (kept after the system-shell rules so
   they win over the original responsive card sizing). */
@media (min-width:901px) and (max-width:2200px){
  .app-content{padding:16px 25px 8px}
  .hero-band{min-height:120px;margin-bottom:14px;padding:19px 24px 18px;border-radius:13px}
  .hero-band .eyebrow{margin-bottom:6px;font-size:8px}.hero-band h1{font-size:27px;margin-bottom:5px}.hero-copy{font-size:10px;line-height:1.5}
  .hero-stats{min-width:218px}.hero-stats div{min-width:108px;padding:10px 13px}.hero-stats strong{font-size:20px}.hero-stats span{font-size:8px;margin-top:2px}
  .workspace-grid.embedded-active{gap:16px;grid-template-columns:minmax(250px,275px) minmax(0,1fr)!important}
  .workspace-grid.embedded-active .sidebar{max-height:calc(100vh - 52px);padding:16px 14px 17px;border-radius:11px}
  .workspace-grid.embedded-active .main-panel{padding-bottom:20px}
  .workspace-grid.embedded-active .step-heading{gap:8px}.workspace-grid.embedded-active .step-heading h2{font-size:13px}.workspace-grid.embedded-active .step-heading p{font-size:9px}.workspace-grid.embedded-active .step-no{width:26px;height:26px;font-size:8px}.workspace-grid.embedded-active .divider{margin:14px 0}.workspace-grid.embedded-active .login-box{margin-top:9px}.workspace-grid.embedded-active .store-list{height:210px;max-height:245px;min-height:150px}.workspace-grid.embedded-active .store-item{padding:8px 4px}
  .mode-bar{margin-bottom:12px;padding:8px 10px 8px 12px;border-radius:9px}.mode-bar-copy{gap:7px}.mode-bar-copy strong{font-size:13px}.mode-bar-copy>span:last-child{font-size:9px}.mode-switcher{padding:3px}.mode-tab{min-width:100px;height:38px;border-radius:6px;padding:0 8px}.mode-tab-icon{width:22px;height:22px}
  .panel-heading{margin-bottom:10px}.panel-heading .step-no{width:26px;height:26px}.action-grid{gap:12px}.action-card{min-height:0;padding:15px;border-radius:11px}
  .card-kicker{margin-bottom:8px;font-size:8px}.card-title{gap:8px}.card-title h3{font-size:14px}.card-icon{width:31px;height:31px;border-radius:8px;font-size:18px}.action-card>p{font-size:9px;line-height:1.5;margin:8px 0}
  .export-actions{gap:5px}.export-actions .secondary-btn{height:32px;font-size:9px;padding:0 9px}.duplicate-hint,.card-footnote{font-size:8px;line-height:1.35}.daily-capture-panel{gap:6px;margin-top:8px;padding:8px 9px}.daily-capture-head{gap:7px}.daily-capture-head>div{gap:2px}.daily-capture-head strong{font-size:10px}.daily-capture-head small{font-size:8px}.capture-toggle{font-size:9px}.daily-capture-controls{gap:5px}.daily-capture-controls input[type=time],.capture-all-label,.daily-capture-controls .secondary-btn,.daily-capture-controls .text-btn{height:28px}.daily-capture-controls .secondary-btn{padding:0 7px;font-size:8px}.capture-status{font-size:8px}
  .compare-card{grid-template-columns:minmax(0,1fr) 145px;column-gap:12px;row-gap:5px}.compare-card .card-title h3{font-size:14px}.compare-card>p{font-size:9px;margin:4px 0}.compare-card .dropzone{height:112px;min-height:0;align-self:start;padding:9px}.dropzone .upload-symbol{font-size:21px}.dropzone strong{font-size:9px;margin:5px 0 3px}.dropzone small{font-size:8px}.compare-options{gap:8px;min-height:31px}.toggle-label{font-size:9px}.toggle{width:28px;height:15px}.toggle:after{width:9px;height:9px;top:3px;left:3px}.toggle-label input:checked+.toggle:after{left:16px}.mode-ready-hint{font-size:8px}.compare-card>.primary-btn{min-width:125px;height:34px;font-size:9px}
  #appNav [data-nav-mode]{height:49px;min-height:49px;box-sizing:border-box}#appNav [data-nav-mode] .nav-item-icon{width:29px;height:29px;box-sizing:border-box}
}
