/* GeekListing generated stylesheet bundle; do not edit directly. */

/* source: apps/geeklisting_web/static/css/app/base.css */
    :root { color-scheme: light; --bg:#fff; --panel:#fff; --panel2:#f5f5f7; --text:#0a0a0a; --muted:#6e6e73; --line:#d2d2d7; --brand:#0071e3; --bad:#d70015; --ok:#248a3d; --shadow:0 18px 50px rgba(0,0,0,.08); }
    *{box-sizing:border-box} body{margin:0;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI","Microsoft YaHei UI",sans-serif;background:var(--bg);color:var(--text)} main{max-width:1740px;margin:34px auto;padding:0 24px} h1{margin:0;font-size:32px;font-weight:760;letter-spacing:-.02em}.sub{margin:8px 0 10px;color:var(--muted);font-size:13px}.version-card{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;width:max-content;max-width:100%;margin:0 0 22px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);color:var(--muted);font-size:12px}.version-card strong{color:var(--text);font-weight:760}.version-meta{color:var(--muted)}.shell{display:grid;grid-template-columns:386px minmax(520px,1fr) minmax(360px,480px);gap:18px;align-items:start}.config-panel,.progress-panel,.batch-panel,.modal-panel{border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:var(--shadow);padding:20px}.agent-card{margin:0 0 16px;padding:15px;border:1px solid rgba(0,113,227,.18);border-radius:18px;background:linear-gradient(145deg,#f7fbff 0%,#fff 58%,#f4f7fb 100%);box-shadow:0 14px 36px rgba(0,0,0,.06)}.agent-row{display:grid;grid-template-columns:1fr;gap:12px;align-items:stretch}.agent-title-line{display:flex;align-items:center;gap:8px}.agent-spacer{flex:1}.agent-title{font-weight:780;font-size:16px;letter-spacing:-.01em}.agent-title-line .badge{margin-left:0}.agent-refresh{width:50px;height:26px;min-width:50px;margin:0;padding:0 8px;border-radius:999px;font-size:12px}.agent-meta{margin-top:8px;padding:8px 10px;border:1px solid rgba(210,210,215,.72);border-radius:12px;background:rgba(255,255,255,.78);color:var(--muted);font-size:12px;line-height:1.45}.agent-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;align-items:center}.agent-actions button{width:100%;min-width:0;height:36px;margin:0;padding:0 10px;font-size:13px;border-radius:11px}.head-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.batch-head{margin-bottom:10px}.top-actions{display:flex;gap:8px;align-items:center}h2{margin:0;font-size:16px;font-weight:700;letter-spacing:-.01em}label{display:block;margin:14px 0 7px;color:var(--muted);font-size:12px}input,select,button{width:100%;height:40px;border-radius:11px;border:1px solid var(--line);font:inherit;letter-spacing:0}input,select{padding:0 11px;color:var(--text);background:var(--panel2);outline:none;font-size:13px}input:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(0,113,227,.12);background:#fff}button{position:relative;margin-top:16px;border:0;color:#fff;background:var(--brand);cursor:pointer;font-weight:650;font-size:13px;box-shadow:0 10px 24px rgba(0,113,227,.18)}button:hover{box-shadow:0 12px 28px rgba(0,113,227,.22)}button.secondary{margin-top:0;color:var(--text);background:var(--panel2);border:1px solid var(--line);box-shadow:none}button.secondary:hover,button.ghost:hover{box-shadow:0 10px 24px rgba(0,0,0,.08)}button.ghost{width:auto;min-width:92px;padding:0 13px;margin:0;color:var(--text);background:var(--panel2);border:1px solid var(--line);box-shadow:none}button.danger{background:#fff;color:var(--bad);border:1px solid rgba(215,0,21,.28);box-shadow:none}button.danger:hover{box-shadow:0 10px 24px rgba(215,0,21,.10)}button:disabled{cursor:default;opacity:.55}.path-row,.modal-actions{display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:10px}.erp-row,.run-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.run-row button{margin-top:0}.shop-list,.discovered-list{display:grid;gap:9px;max-height:300px;overflow:auto;padding-right:2px}.shop,.found-shop{display:grid;grid-template-columns:22px 1fr auto;gap:10px;align-items:start;padding:11px;border:1px solid var(--line);border-radius:14px;background:var(--panel2)}.shop input,.found-shop input{width:16px;height:16px;margin-top:2px;accent-color:var(--brand)}.shop strong,.found-shop strong{display:block;font-size:13px;line-height:19px;color:var(--text)}.shop span,.found-shop span,.readonly-meta{display:block;color:var(--muted);font-size:12px;line-height:18px;word-break:break-all}.shop-actions{display:grid;gap:6px}.shop-actions button{width:56px;height:28px;margin:0;padding:0;font-size:12px;border-radius:9px}.progress-wrap{height:9px;margin:14px 0;overflow:hidden;border-radius:999px;background:#e8e8ed}.progress-bar{height:100%;width:0%;background:var(--brand);transition:width .2s ease}.status{min-height:116px;padding:13px;border:1px solid var(--line);border-radius:14px;color:var(--muted);background:var(--panel2);white-space:normal;line-height:1.55;font-size:13px}.task-list{display:grid;gap:8px}.task-row{display:grid;gap:5px;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:#fff}.task-row.failed{border-color:rgba(215,0,21,.35);background:#fff7f7}.task-row.success{border-color:rgba(36,138,61,.25);background:#f6fff7}.task-top{display:flex;justify-content:space-between;gap:10px;font-weight:750;color:var(--text)}.task-msg{color:var(--muted);white-space:pre-line;word-break:break-word}.preview{display:grid;gap:12px;margin-top:14px}.preview-item{border:1px solid var(--line);border-radius:14px;background:var(--panel2);padding:14px}.preview-item h3{margin:0 0 8px;font-size:15px}.preview-item dl{display:grid;grid-template-columns:90px 1fr;gap:6px 10px;margin:12px 0 0;font-size:13px}.preview-item dt{color:var(--muted)}.preview-item dd{margin:0;word-break:break-word}.sku{display:grid;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.sku-head,.sku-row{display:grid;grid-template-columns:1.15fr .85fr .65fr .65fr .65fr .8fr 60px;gap:6px;align-items:center}.sku-head{color:var(--muted);font-size:12px}.sku-row input{height:34px;font-size:12px}.sku-row button{height:34px;margin:0;font-size:12px}.checkline{display:grid;grid-template-columns:20px 1fr;align-items:center;gap:8px;margin-top:13px;color:var(--muted);font-size:12px}.checkline input{width:16px;height:16px;margin:0;accent-color:var(--brand)}.badge{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;background:#e8f2ff;color:var(--brand);font-size:12px}.modal{position:fixed;inset:0;z-index:10;display:none;place-items:center;padding:20px;background:rgba(255,255,255,.72);backdrop-filter:blur(18px)}.modal.open{display:grid}.modal-panel{width:min(760px,100%);max-height:92vh;overflow:auto}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hint{margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.ok{color:var(--ok)}.bad{color:var(--bad)}@media(max-width:1180px){main{margin:24px auto}.shell,.grid2,.run-row,.sku-row{grid-template-columns:1fr}.agent-row{grid-template-columns:1fr}.agent-actions{margin-top:0}.shop,.found-shop{grid-template-columns:22px 1fr}h1{font-size:30px}}
    .modal-actions{display:block}.modal-actions button{width:100%}.shop-filter{display:grid;grid-template-columns:140px 1fr;gap:8px;margin:0 0 8px}.shop-bulk{display:grid;grid-template-columns:1fr;gap:8px;margin:8px 0 10px}.shop-bulk .checkline{margin-top:0}.sku-head,.sku-row{grid-template-columns:1.08fr .78fr .58fr .58fr .58fr .58fr .58fr 48px 64px}.repair-card{margin-top:12px;padding:12px;border:1px solid rgba(215,0,21,.24);border-radius:12px;background:#fff7f7}.repair-card strong{display:block;color:var(--bad);margin-bottom:6px}.repair-card button{margin-top:10px}.shop{cursor:grab}.shop.dragging{opacity:.55}.shop-health{grid-column:2 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;color:var(--muted);font-size:12px}.shop-health .badge{margin-left:0}.shop-health button{width:auto;height:26px;margin:0;padding:0 9px;border-radius:999px;font-size:12px}.version-log{position:relative;width:min(100%,640px);height:34px;overflow:hidden;margin:-12px 0 22px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);font-size:12px;color:var(--text);font-weight:800;line-height:34px}.version-log-track{display:block;animation:versionRoll 42s linear infinite}.version-log-row{height:34px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:800}@keyframes versionRoll{from{transform:translateY(0)}to{transform:translateY(-340px)}}.manual-fallback{display:none}.shop-auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.shop-auth-actions button{margin:0}.found-shop-status{align-self:center;color:var(--muted);font-size:12px}.batch-panel{display:flex;flex-direction:column;height:var(--config-h,auto);min-height:var(--config-h,auto)}.batch-card{display:flex;flex:1;min-height:0;flex-direction:column;margin-top:0;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--panel2)}.batch-new{width:92px;height:30px;margin:0;padding:0 10px;border-radius:999px;font-size:12px}.batch-tools{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:10px}.batch-clean{display:none;margin:0 0 10px}.batch-clean.show{display:block}.batch-list{display:grid;align-content:start;gap:8px;flex:1;min-height:0;overflow:auto}.batch-row{display:grid;grid-template-columns:minmax(0,1fr) 54px;gap:8px;align-items:stretch}.batch-row.active .loadBatch{border-color:rgba(0,113,227,.45);background:#eef6ff}.loadBatch{display:grid;height:auto;min-height:62px;margin:0;padding:8px 10px;text-align:left}.loadBatch strong,.loadBatch span,.loadBatch small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loadBatch span,.loadBatch small{color:var(--muted);font-size:11px;font-weight:500}.delBatch{height:62px;margin:0;font-size:12px}@media(max-width:860px){.shop-filter,.shop-bulk,.sku-head,.sku-row,.batch-tools,.shop-auth-actions{grid-template-columns:1fr}.batch-panel{height:auto;min-height:auto}.batch-list{max-height:300px}}
    .agent-actions{grid-template-columns:repeat(3,minmax(0,1fr))}


/* source: apps/geeklisting_web/static/css/components/category-picker.css */
    .category-picker{position:relative;width:min(100%,588px);margin-top:8px}.preview-item.category-open{position:relative;z-index:50}.category-combo{display:grid;grid-template-columns:minmax(92px,.24fr) minmax(0,1fr) minmax(74px,.2fr) 22px;align-items:center;gap:10px;width:100%;min-height:44px;padding:7px 10px 7px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--text);font-size:12px;text-align:left;box-shadow:none}.category-combo:hover{box-shadow:0 10px 24px rgba(0,0,0,.08)}.category-main{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.category-path-mini{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11px}.category-scope{margin-top:8px;color:var(--muted);font-size:12px;line-height:1.5}.category-panel{display:none;position:absolute;z-index:20;left:0;right:0;top:52px;width:auto;max-width:none;padding:8px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 18px 50px rgba(0,0,0,.12)}.preview-item.category-open .category-panel{z-index:60}.category-picker.open .category-panel{display:block}.category-search-box{display:grid;grid-template-columns:minmax(0,1fr) 58px;gap:0;margin-bottom:6px}.category-search-box input{height:28px;margin:0;border-radius:0;border-right:0;background:#fff;font-size:12px}.category-search-box button{height:28px;margin:0;border-radius:0;background:var(--brand);font-size:12px;box-shadow:none}.category-search-hint{display:block;margin:0 0 6px;color:#444;font-size:12px;line-height:1.35}.category-current-path{margin:0 0 6px;color:#444;font-size:12px;line-height:1.35}.categoryCascade{display:flex;width:100%;max-width:570px;gap:4px;overflow:hidden;padding-bottom:2px}.cat-col{flex:0 1 max-content;width:max-content;min-width:86px;max-width:calc((570px - 12px)/4);min-height:172px;max-height:172px;overflow:auto;border:1px solid var(--line);border-radius:4px;background:#fff;padding:2px}.cat-node{display:grid;grid-template-columns:minmax(0,max-content) 10px;align-items:center;width:100%;height:22px;margin:0;padding:0 5px;border:0;border-radius:0;background:#fff;color:#333;box-shadow:none;font-size:12px;font-weight:400;text-align:left}.cat-node span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-node:hover{box-shadow:none;background:#f2f2f2}.cat-node.active{background:#e9e9e9;color:#111}.cat-node.leaf{font-weight:400}@media(max-width:760px){.category-picker{width:100%}.category-panel{position:static;width:100%;max-width:100%;margin-top:8px}.categoryCascade{max-width:100%;overflow-x:auto}.cat-col{max-width:calc((100vw - 44px - 12px)/4)}}
    .category-picker.is-execution-disabled .category-combo{border-color:#c7c7c7;background:#f7f7f7;color:#777}.category-picker.is-execution-disabled .category-main{color:#777}.category-execution-state{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8a8a8a;font-size:10px;font-weight:600;text-align:right}.cat-node.execution-disabled{color:#8c8c8c!important;background:#fafafa!important}.cat-node.execution-disabled:hover{background:#f0f0f0!important;color:#555!important}


/* source: apps/geeklisting_web/static/css/components/progress.css */
    .status{width:100%;height:auto;max-width:100%;max-height:250px;min-height:0;padding:8px;line-height:1.4;font-size:12px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:auto;background:var(--panel2);contain:layout paint}
    .status::-webkit-scrollbar{width:8px}.status::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(0,113,227,.22)}.status::-webkit-scrollbar-track{background:transparent}
    .task-list{display:grid;gap:6px;width:100%;min-width:0;max-width:100%;padding:0}
    .task-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;grid-template-areas:"time title progress" ". message message";width:100%;min-width:0;max-width:100%;gap:3px 9px;align-items:start;min-height:34px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:none}
    .task-row.failed,.task-row.error,.task-row.aborted,.task-row.stalled{border-left:3px solid var(--bad);background:#fff8f8}
    .task-row.previewing,.task-row.uploading,.task-row.running,.task-row.executing,.task-row.queued,.task-row.loading{border-left:3px solid var(--brand);background:#f7fbff}
    .task-row.ready,.task-row.success{border-left:3px solid var(--ok);background:#f8fff9}
    .task-time{grid-area:time;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
    .task-title{grid-area:title;min-width:0;overflow:hidden;color:var(--text);font-weight:700;text-overflow:ellipsis;white-space:nowrap}
    .task-msg{grid-area:message;min-width:0;max-width:100%;color:var(--muted);white-space:normal;overflow-wrap:anywhere;word-break:break-word}.task-msg:empty{display:none}.task-msg *{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.task-msg .readback-report,.task-msg .repair-card{width:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;overflow:visible}.task-msg .repair-card button{height:auto;min-height:34px;white-space:normal}
    .task-progress{grid-area:progress;color:var(--text);font-weight:700;white-space:nowrap;text-align:right}
    .title-limit-wrap{position:relative;width:100%}.title-limit-wrap input{padding-right:76px}.title-limit-count{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums;pointer-events:none}.title-limit-wrap.invalid input{border-color:var(--bad);box-shadow:0 0 0 3px rgba(215,0,21,.08);background:#fff}.title-limit-wrap.invalid .title-limit-count{color:var(--bad);font-weight:700}
    .path-row.drop-ready,.shell.workbench-drop-ready{border-radius:13px;outline:2px dashed rgba(0,113,227,.32);outline-offset:4px;background:rgba(0,113,227,.035)}
    .drag-tip{display:none;position:fixed;left:50%;top:50%;z-index:80;transform:translate(-50%,-50%);width:min(860px,calc(100vw - 48px));min-height:42vh;padding:34px 42px;border:1px solid rgba(0,113,227,.32);border-radius:28px;background:linear-gradient(145deg,rgba(238,246,255,.97),rgba(255,255,255,.98));color:var(--text);font-size:22px;font-weight:820;line-height:1.55;box-shadow:0 32px 90px rgba(0,0,0,.18),0 18px 46px rgba(0,113,227,.18);backdrop-filter:blur(18px);align-content:center;text-align:center}
    .shell.workbench-drop-ready .drag-tip{display:block}


/* source: apps/geeklisting_web/static/css/domains/media.css */
    .image-strip{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;overflow:visible;margin:12px 0 4px;padding:8px;border:1px solid var(--line);border-radius:12px;background:#fff}
    .image-tile{flex:0 0 88px;width:88px;position:relative}
    .image-tile img{width:88px;height:88px;display:block;object-fit:cover;border:1px solid var(--line);border-radius:10px;background:#f5f5f7}
    .image-tile.platform-portrait{flex-basis:72px;width:72px}.image-tile.platform-portrait img{width:72px;height:96px}
    .image-tile.platform-portrait.shein-semi-contain img{object-fit:contain;background:#f5f5f7}
    .image-tile .image-meta{display:block;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .image-index{position:absolute;left:5px;top:5px;padding:1px 5px;border-radius:999px;background:rgba(0,0,0,.62);color:#fff;font-size:10px}
    .image-tile.zoom-covered .image-index,.image-tile.zoom-covered .image-del{opacity:0;pointer-events:none}
    .sku-thumb{width:34px;height:34px;object-fit:cover;border:1px solid var(--line);border-radius:8px;background:#fff}.sku-thumb.platform-portrait{width:28px;height:38px}
    .sku-thumb.platform-portrait.shein-semi-contain{width:30px;height:40px;object-fit:contain;background:#f5f5f7}
    .sku-thumb-wrap{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:11px;position:relative;overflow:visible}
    .sku-thumb-action{flex:0 0 auto;width:34px!important;min-width:34px;height:22px!important;margin:0!important;padding:0!important;border-radius:999px!important;font-size:10px!important;line-height:20px!important;white-space:nowrap;writing-mode:horizontal-tb;letter-spacing:0}
    .video-box{display:grid;gap:8px;margin:8px 0 10px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff}.video-head{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.video-head strong{color:var(--text)}.video-card{display:grid;grid-template-columns:126px minmax(0,1fr) 72px 58px;gap:10px;align-items:center}.video-card video{width:126px;aspect-ratio:3/4;height:auto;max-height:168px;object-fit:cover;border:1px solid var(--line);border-radius:10px;background:#000}.video-url{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-empty{display:grid;grid-template-columns:minmax(0,1fr) 116px;gap:10px;align-items:center}.video-card button,.video-empty button{height:32px;margin:0;font-size:12px}


/* source: apps/geeklisting_web/static/css/domains/catalog.css */
    .preflight{margin:10px 0 0;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--muted);font-size:12px;line-height:1.45}
    .preflight.pass{border-color:rgba(36,138,61,.24);background:#f6fff7;color:var(--ok)}
    .preflight.warning{border-color:rgba(191,130,0,.28);background:#fffaf0;color:#8a5a00}
    .preflight.error{border-color:rgba(215,0,21,.28);background:#fff7f7;color:var(--bad)}
    .tk-compliance{margin:10px 0 0;padding:10px;border:1px solid rgba(0,113,227,.14);border-radius:12px;background:#f7fbff;color:var(--muted);font-size:12px;line-height:1.5}
    .tk-compliance strong{display:block;margin-bottom:3px;color:var(--text);font-size:12px}
    .tk-compliance-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
    .tk-compliance-grid label,.pop-grid label{margin:0;min-width:0}.tk-compliance-grid select,.pop-grid select{margin-top:5px;min-width:0;background-color:#fff}
    .pop-contract{display:grid;gap:9px;margin:10px 0 0;padding:10px;border:1px solid rgba(36,138,61,.22);border-radius:12px;background:#f7fff8;color:var(--muted);font-size:12px}
    .pop-contract-head,.pop-readonly{display:flex;align-items:center;justify-content:space-between;gap:8px}.pop-contract-head strong{color:var(--text)}.pop-contract-head button{width:auto;height:28px;margin:0;padding:0 10px;font-size:11px;box-shadow:none}
    .pop-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pop-package{grid-column:1 / -1;display:grid;gap:6px}.pop-package-head,.pop-package-row{display:grid;grid-template-columns:minmax(0,1fr) 88px 68px;gap:6px;align-items:start}.pop-package-head{color:var(--muted);font-size:11px}.pop-package-row input{height:34px;margin:0;border-radius:9px;background:#fff}.pop-package-combo{position:relative;min-width:0}.pop-package-suggestions{position:absolute;z-index:8;top:38px;left:0;right:0;display:grid;max-height:180px;overflow:auto;border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:0 12px 26px rgba(0,0,0,.12)}.pop-package-suggestions[hidden]{display:none}.pop-package-option{height:34px;margin:0;padding:0 10px;border-radius:0;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--text);box-shadow:none;text-align:left;font-weight:500}.pop-package-option:last-child{border-bottom:0}.pop-package-option:hover,.pop-package-option:focus{background:#eef6ff;box-shadow:none}.pop-package-empty{padding:8px 10px;color:var(--muted);font-size:12px}.pop-package-actions{display:flex;gap:4px}.pop-package-actions button{width:30px;height:30px;margin:2px 0 0;padding:0;border-radius:50%;box-shadow:none;font-size:18px;line-height:1}.pop-package-actions .removePopPackage{color:var(--bad)}.pop-readonly{justify-content:flex-start;flex-wrap:wrap}.pop-readonly span{padding:4px 8px;border-radius:8px;background:#fff;color:var(--text)}.pop-option-status{min-height:16px;word-break:break-word}
    .shop-compliance{grid-column:1 / -1;margin-top:8px;padding:10px;border:1px solid rgba(0,113,227,.13);border-radius:12px;background:linear-gradient(145deg,#f7fbff,#fff)}
    .shop-compliance-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;color:var(--text);font-size:12px;font-weight:760}
    .shop-compliance-head span{color:var(--muted);font-weight:500}
    .shop-compliance-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 54px;gap:7px;align-items:end}
    .shop-compliance-field{display:grid;gap:4px;min-width:0}
    .shop-compliance-field label{margin:0;color:var(--muted);font-size:11px}
    .shop-compliance select{height:32px;min-width:0;font-size:12px;background:#fff}
    select{appearance:none;-webkit-appearance:none;padding-right:34px;background-image:linear-gradient(45deg,transparent 50%,#6e6e73 50%),linear-gradient(135deg,#6e6e73 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.run-row #run{grid-column:1/-1}
    .shop-compliance button{height:32px;width:54px;margin:0;padding:0;font-size:12px;border-radius:9px}
    .quality-line{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.35}
    .quality-line strong{color:var(--text)}
    .batch-code{color:var(--bad);font-weight:700}


/* source: apps/geeklisting_web/static/css/domains/preview.css */
    .skc-wrap{position:relative;width:100%;max-width:100%;min-width:0;overflow:hidden;margin:0 0 14px}
    .skc-switcher{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding:3px 2px 8px;margin:0;scroll-behavior:auto;scrollbar-width:thin;scrollbar-color:rgba(0,113,227,.28) transparent;contain:layout paint}
    .skc-switcher::-webkit-scrollbar{height:8px}
    .skc-switcher::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(0,113,227,.24)}
    .skc-card{position:relative;flex:0 0 154px;min-height:54px;margin:0;padding:8px 10px 30px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--text);box-shadow:0 8px 18px rgba(0,0,0,.045);text-align:left;overflow:hidden;cursor:pointer}
    .skc-card.active{border-color:rgba(0,113,227,.42);background:linear-gradient(135deg,#fff,#eef6ff);box-shadow:0 12px 26px rgba(0,113,227,.12)}
    .skc-select-bar{display:flex;align-items:center;gap:12px;min-height:40px;margin:0 0 8px;color:var(--muted);font-size:12px}
    .skc-select-bar label{display:flex;align-items:center;gap:6px;margin:0}.skc-select-bar input,.skc-check{width:15px;height:15px;margin:0;accent-color:var(--brand)}
    .skc-check{position:absolute;right:9px;top:9px;z-index:2}
    .skc-card strong,.skc-card span,.skc-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .skc-card strong{font-size:13px}.skc-card span{margin-top:3px;color:var(--muted);font-size:11px;font-weight:500}
    .skc-regen{position:absolute;right:7px;bottom:6px;height:20px;margin:0;padding:0 8px;border-radius:999px;font-size:10px;line-height:18px;background:#f5f9ff;color:var(--brand);box-shadow:none}
    .skc-regen:disabled{opacity:.58}
    @media(max-width:1180px){.status{max-height:260px}.task-row.stack{margin-bottom:-14px}}


/* source: apps/geeklisting_web/static/css/domains/media-interactions.css */
    .image-strip{max-width:100%;scrollbar-width:thin}
    .image-tile{cursor:grab;border:1px solid transparent;border-radius:12px;padding:3px;background:#fff}
    .image-tile.dragging{opacity:.45}
    .image-tile.drop-target{border-color:rgba(0,113,227,.55);background:#eef6ff}
    .sku-thumb-wrap.sku-drop-target{outline:2px dashed rgba(0,113,227,.55);outline-offset:3px;border-radius:10px;background:#eef6ff}
    .image-tile .image-del{position:absolute;right:-12px;top:-7px;z-index:160;width:22px;height:22px;margin:0;padding:0;border-radius:999px;background:rgba(215,0,21,.94);color:#fff;font-size:13px;line-height:22px;box-shadow:0 6px 14px rgba(215,0,21,.22);cursor:pointer}
    .image-tile:hover .image-del{right:-16px;top:-10px}
    .image-tile:not(.image-add-tile):hover img{position:relative;z-index:30;transform:scale(2.65);transform-origin:center;box-shadow:0 18px 48px rgba(0,0,0,.22)}
    .preview-item:has(.sku-thumb-wrap:hover),.preview-item:has(.sku-thumb-wrap:focus-within){z-index:120;overflow:visible}
    .sku-row:has(.sku-thumb-wrap:hover),.sku-row:has(.sku-thumb-wrap:focus-within),.sku-thumb-wrap:hover,.sku-thumb-wrap:focus-within{position:relative;z-index:130}
    .sku-thumb-wrap .sku-thumb:hover{position:relative;z-index:140;transform:scale(6.85);transform-origin:right center;box-shadow:0 22px 58px rgba(0,0,0,.25)}
    .image-tile .image-del:hover~img,.image-tile:has(.image-del:hover) img{transform:none;box-shadow:none}
    .image-tile img,.sku-thumb{transition:transform .12s ease,box-shadow .12s ease}
    .image-tile.viewer-opening img,.sku-thumb-wrap.viewer-opening .sku-thumb{transition:none!important;transform:none!important;box-shadow:none!important}
    .image-tile:not(.image-add-tile) img,.sku-thumb{cursor:zoom-in}
    .image-lightbox{width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:0;border:0;background:transparent;overscroll-behavior:contain}.image-lightbox::backdrop{background:rgba(248,249,251,.12);backdrop-filter:none;-webkit-backdrop-filter:none}.image-lightbox-stage{display:grid;width:100%;height:100%;place-items:center;padding:48px;opacity:0;transition:opacity .12s ease}.image-lightbox.is-visible .image-lightbox-stage{opacity:1}.image-lightbox-image{display:block;width:min(440px,calc(100vw - 96px));height:auto;max-height:calc(100vh - 96px);object-fit:contain;border-radius:6px;background:#fff;box-shadow:0 18px 54px rgba(30,34,40,.16);transform:translateZ(0) scale(.985);transform-origin:center center;transition:transform .12s cubic-bezier(.2,.8,.2,1);will-change:transform;touch-action:none;cursor:zoom-in}.image-lightbox-image.is-zoomed{cursor:zoom-out;transition:transform .05s linear}.image-lightbox.is-visible .image-lightbox-image{transform:translateZ(0) scale(1)}.image-lightbox-close{position:fixed;right:24px;top:20px;width:38px!important;min-width:38px;height:38px!important;margin:0!important;padding:0!important;border-radius:50%!important;background:rgba(255,255,255,.72)!important;color:#111!important;box-shadow:0 8px 28px rgba(30,34,40,.14)!important;font-size:24px!important;line-height:1!important;backdrop-filter:blur(10px)}@media(max-width:520px){.image-lightbox-stage{padding:48px 18px}.image-lightbox-image{width:min(440px,calc(100vw - 36px));max-height:calc(100vh - 96px)}.image-lightbox-close{right:12px;top:12px}}
    .image-caption{display:flex;justify-content:space-between;gap:6px;margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.2}
    .image-caption span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .publish-mark{color:var(--ok);font-weight:800}
    .skip-mark{color:var(--bad);font-weight:800}
    .image-add-tile{cursor:pointer;padding:0!important;border:1px solid transparent;background:#fff;color:var(--brand);display:grid;place-items:center}
    .image-add-tile:hover{border-color:rgba(0,113,227,.72);box-shadow:0 8px 18px rgba(0,113,227,.12)}
    .image-add-box{width:100%;height:88px;display:grid;place-items:center;border:1px dashed rgba(0,113,227,.45);border-radius:10px;background:linear-gradient(180deg,#f7fbff,#eef6ff)}
    .image-add-tile.platform-portrait .image-add-box{height:96px}
    .image-add-tile strong{display:grid;place-items:center;width:52px;height:52px;border-radius:999px;background:#fff;color:var(--brand);font-size:16px;box-shadow:inset 0 0 0 1px rgba(0,113,227,.14)}
    .image-add-tile button{display:none}
    .image-add-tile input{height:26px;margin-top:4px;padding:0 6px;border-radius:8px;font-size:11px;background:#fff}
    .sku-upload{display:grid;gap:3px}
    .sku-upload button{height:22px;margin:0;padding:0 5px;border-radius:7px;font-size:10px}


/* source: apps/geeklisting_web/static/css/domains/preview-layout.css */
    .preview{position:relative;z-index:2;min-width:0;overflow:visible}
    .preview>.skc-wrap{overflow:hidden}
    .preview-item{position:relative;z-index:2;overflow:visible}
    .preview-item-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px}.preview-item-heading h3{min-width:0;margin:0}.preview-toolbar-actions{display:flex;align-items:center;gap:6px;min-width:0;margin-left:auto}.preview-toolbar-actions button{width:auto;min-width:150px;height:28px;margin:0;padding:0 12px;white-space:nowrap;font-size:12px}
    .sku-image-picker{position:fixed;z-index:180;display:grid;grid-template-columns:repeat(5,48px);gap:6px;width:282px;max-height:min(520px,calc(100vh - 24px));overflow-y:auto;padding:9px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 18px 48px rgba(0,0,0,.18)}
    .sku-image-choice{display:grid;grid-template-rows:44px 16px;width:48px;height:62px;margin:0;padding:2px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--text);box-shadow:none;font-size:10px}.sku-image-choice img{width:42px;height:42px;border-radius:5px;object-fit:cover}.sku-image-choice:hover,.sku-image-choice:focus{border-color:var(--brand);background:#eef6ff;box-shadow:none}.sku-image-choice:disabled{opacity:.38}.sku-image-upload{width:48px!important;height:62px!important;margin:0!important;padding:0 3px!important;border:1px dashed rgba(0,113,227,.45)!important;background:#f7fbff!important;color:var(--brand)!important;box-shadow:none!important;font-size:11px!important;line-height:1.25!important;white-space:normal}
    .preview-section{scroll-margin-top:56px}.title-field-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0 7px}.title-field-head label{margin:0}.title-field-head button{width:auto;height:30px;margin:0;padding:0 11px;font-size:12px}
    .preview-section+.preview-section{margin-top:10px;padding-top:10px;border-top:1px solid rgba(210,210,215,.7)}
    .progress-panel{position:relative;z-index:1;min-width:0;overflow:visible}
    .progress-wrap,.status{position:relative;z-index:0}
    .sku-head,.sku-row{grid-template-columns:minmax(150px,1.16fr) minmax(104px,.9fr) minmax(86px,.82fr) 62px 56px 56px 56px 62px 96px 62px}
    .shell{grid-template-columns:minmax(340px,386px) minmax(520px,1fr) minmax(340px,460px)}
    .active-batch-card{display:grid;gap:5px;margin:12px 0 10px;padding:10px 12px;border:1px solid rgba(0,113,227,.22);border-radius:13px;background:linear-gradient(135deg,#f4f9ff,#fff);font-size:12px;color:var(--muted)}
    .active-batch-card strong{color:var(--text);font-size:13px}
    .active-batch-card .active-line{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
    .active-batch-card .active-warn{color:#8a5a00;font-weight:700}
    .active-batch-card.empty{border-color:var(--line);background:var(--panel2)}
    .regenPreview{width:auto;margin:0 0 0 auto;font-size:12px;box-shadow:none}
    @media(max-width:1360px){.shell{grid-template-columns:360px minmax(0,1fr)}.batch-panel{grid-column:1 / -1;height:auto!important;min-height:auto!important}.batch-list{max-height:260px}}
    @media(max-width:860px){.shell{grid-template-columns:1fr}.batch-panel{grid-column:auto}}
    @media(max-width:860px){.tk-compliance-grid,.pop-grid{grid-template-columns:1fr}}
    @media(max-width:430px){main{margin:14px auto 24px;padding:0 12px}.config-panel,.progress-panel,.batch-panel,.modal-panel{padding:14px}.modal{padding:10px}.progress-panel,.preview,.preview>.skc-wrap,.preview-item{min-width:0;max-width:100%;overflow:hidden}.preview-item{padding:10px}.preview-item .sku{max-width:100%;overflow-x:auto}.preview-item .sku-head{min-width:720px}.pop-contract-head{align-items:flex-start}.pop-contract-head button{max-width:132px}.shop,.found-shop{min-width:0}.found-shop-status{grid-column:2;justify-self:start}}


/* source: apps/geeklisting_web/static/css/components/dialogs.css */
    .recognition-intent{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--panel2)}
    .recognition-choice{display:block;margin:0;cursor:pointer}.recognition-choice input{position:absolute;opacity:0;pointer-events:none}.recognition-choice span{display:grid;place-items:center;min-height:36px;padding:0 8px;border-radius:6px;color:var(--muted);font-size:12px;font-weight:700}.recognition-choice input:checked+span{background:#fff;color:var(--brand);box-shadow:0 2px 8px rgba(0,0,0,.08)}.recognition-choice input:focus-visible+span{outline:2px solid var(--brand);outline-offset:1px}
    .recognition-dialog{width:min(680px,calc(100vw - 28px));max-height:88vh;padding:0;overflow-x:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--text);box-shadow:0 28px 90px rgba(0,0,0,.22)}.recognition-dialog::backdrop{background:rgba(0,0,0,.28);backdrop-filter:blur(8px)}.recognition-dialog-inner,.recognition-row>*{min-width:0}.recognition-dialog-inner{padding:20px}.recognition-dialog h2{font-size:18px}.recognition-rows{display:grid;gap:10px;margin:16px 0}.recognition-row{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px;align-items:center;margin:0;padding:10px;border-bottom:1px solid var(--line)}.recognition-product-no{height:36px;font-size:13px;font-weight:700}.recognition-dialog-error{min-height:18px;color:var(--bad);font-size:12px}.recognition-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.recognition-dialog-actions button,.erp-row button{height:40px;margin:0}@media(max-width:560px){.recognition-row{grid-template-columns:1fr}.recognition-dialog-actions{grid-template-columns:1fr}}
    .product-no-dialog-field{margin:16px 0 8px}.product-no-dialog-field label{margin-top:0}.product-no-dialog-field input{width:100%}


/* source: apps/geeklisting_web/static/css/app/polish.css */
    :root{--bg:#fbfbfd;--panel:#fff;--panel2:#f5f5f7;--text:#1d1d1f;--muted:#6e6e73;--line:#d2d2d7;--brand:#0071e3;--bad:#d70015;--ok:#248a3d;--shadow:0 14px 34px rgba(0,0,0,.07)}
    body{background:linear-gradient(180deg,#fbfbfd 0%,#f5f7fb 100%)}
    main{max-width:1760px;margin:28px auto 40px}
    h1{font-size:34px;font-weight:800;letter-spacing:-.035em}
    .version-row{display:grid;grid-template-columns:auto minmax(260px,620px) minmax(220px,1fr);align-items:center;gap:10px;margin:0 0 22px;max-width:1280px}
    .version-card{width:auto;min-width:0;margin:0;border-radius:999px;background:rgba(255,255,255,.9);box-shadow:0 8px 22px rgba(0,0,0,.05)}
    .version-summary{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .version-log{width:auto;min-width:0;max-width:none;margin:0;border-radius:999px;background:rgba(255,255,255,.9);box-shadow:0 8px 22px rgba(0,0,0,.04)}
    @media(max-width:760px){.version-row{grid-template-columns:1fr}.version-card{margin:0}.version-summary{white-space:normal;line-height:1.45}.version-log{width:100%;max-width:100%}}
    .config-panel,.progress-panel,.batch-panel,.modal-panel{border-radius:22px;background:rgba(255,255,255,.96);box-shadow:var(--shadow)}
    .agent-card{background:linear-gradient(145deg,#f7fbff 0%,#fff 58%,#f4f7fb 100%);box-shadow:0 10px 24px rgba(0,113,227,.06)}
    .shop,.found-shop,.preview-item,.batch-card,.status,.image-strip,.video-box,.preflight,.active-batch-card{background:#fff;border-color:var(--line)}
    input,select{height:42px;border-radius:13px;background:#f5f5f7;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}
    input:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(0,113,227,.12);background:#fff}
    button{border-radius:13px;background:var(--brand);box-shadow:0 10px 22px rgba(0,113,227,.15);transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}
    button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 26px rgba(0,113,227,.20)}
    button:active:not(:disabled){transform:scale(.99)}
    button.secondary,button.ghost{background:#f5f5f7;border:1px solid var(--line);color:var(--text);box-shadow:none}
    button.secondary:hover:not(:disabled),button.ghost:hover:not(:disabled){box-shadow:0 8px 18px rgba(0,0,0,.06)}
    .shop,.found-shop,.preview-item,.skc-card,.loadBatch,.task-row{transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}
    .shop:hover,.found-shop:hover,.preview-item:hover,.skc-card:hover,.loadBatch:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(0,0,0,.06)}
    .progress-bar{background:var(--brand);box-shadow:none}
    .readback-report{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:12px;line-height:1.45;overflow-wrap:anywhere}
    .readback-report strong{display:inline;color:var(--text);margin:0;white-space:nowrap}.readback-report>div{display:inline}.readback-report>.readback-report,.readback-report>.repair-card{display:block;flex-basis:100%}
    .readback-report .bad{color:var(--bad)}
    .batch-row.active .loadBatch{border-color:rgba(0,113,227,.42);background:#eef6ff;box-shadow:0 10px 24px rgba(0,113,227,.10)}
    .shop-list,.batch-list,.status,.cat-col{scrollbar-width:thin;scrollbar-color:rgba(0,113,227,.28) transparent;scroll-behavior:auto}
    .shop-list::-webkit-scrollbar,.batch-list::-webkit-scrollbar,.status::-webkit-scrollbar,.cat-col::-webkit-scrollbar{width:8px;height:8px}
    .shop-list::-webkit-scrollbar-thumb,.batch-list::-webkit-scrollbar-thumb,.status::-webkit-scrollbar-thumb,.cat-col::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(0,113,227,.24)}
    .drag-tip{backdrop-filter:none;background:linear-gradient(145deg,#eef6ff,#fff);box-shadow:0 24px 70px rgba(0,0,0,.16),0 14px 34px rgba(0,113,227,.12)}
    .modal{backdrop-filter:none;background:rgba(255,255,255,.76)}
    .category-combo,.category-panel,.cat-col{background:#fff}


/* source: apps/geeklisting_web/static/css/domains/shops.css */
    .shop{grid-template-columns:18px minmax(0,1fr);gap:8px;padding:10px}
    .shop input{width:15px;height:15px;margin-top:4px}
    .shop strong{font-size:14px;line-height:20px}
    .shop span{font-size:11px;line-height:16px}
    .shop-main{display:flex;align-items:center;gap:8px;min-width:0}
    .shop-main strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .shop-actions{display:flex;gap:6px;margin-left:auto}
    .shop-actions button{width:42px;height:24px;border-radius:999px;font-size:11px}
    .shop-compliance{grid-column:1 / -1;margin-top:2px;padding:9px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}
    .shop-compliance-head{margin-bottom:5px;font-size:12px}
    .shop-compliance-head span{display:block;font-size:10px}
    .shop-compliance-row{grid-template-columns:minmax(0,1fr);gap:7px;align-items:stretch}
    .shop-compliance-field{gap:2px}
    .shop-compliance-field label{font-size:10px}
    .shop-compliance-fields{display:grid;gap:5px;min-width:0}
    .shop-compliance select{height:29px;border-radius:10px;padding:0 30px 0 9px;font-size:11px;overflow:hidden;text-overflow:ellipsis;background-color:#fff}
    .shop-compliance-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
    .shop-compliance button{width:100%;height:30px;min-height:30px;border-radius:9px;font-size:11px;background:#f5f5f7}
    .historical-sessions-panel{margin:12px 0 4px;padding:11px;border:1px solid var(--line);border-radius:12px;background:#fbfbfc}
    .historical-sessions-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
    .historical-sessions-head strong{display:block;font-size:13px;line-height:18px}
    .historical-sessions-head .hint{display:block;margin-top:2px;font-size:11px}
    .historical-sessions-head button{height:28px;min-height:28px;padding:0 9px;font-size:11px}
    .historical-sessions-tools{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
    .historical-recovery-panel{margin-top:9px;padding:9px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
    .historical-recovery-meta{color:var(--muted);font-size:11px;line-height:16px}
    .historical-recovery-list{display:grid;gap:6px;margin-top:7px}
    .historical-recovery-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:start;gap:7px;padding:7px 0;border-top:1px solid #ececf0}
    .historical-recovery-row:first-child{border-top:0}
    .historical-recovery-row input{margin-top:2px}
    .historical-recovery-copy{display:grid;gap:2px;min-width:0}
    .historical-recovery-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
    .historical-recovery-copy span{color:var(--muted);font-size:10px;line-height:15px}
    .historical-recovery-verdict{font-size:10px;font-weight:600;white-space:nowrap}
    .historical-recovery-verdict.ok{color:#16794c}.historical-recovery-verdict.warn{color:#9b5c00}.historical-recovery-verdict.bad{color:#b42318}
    .historical-recovery-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}
    .historical-recovery-actions label{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px}
    .historical-recovery-actions button{height:28px;min-height:28px;padding:0 9px;font-size:11px}
    .historical-sessions-list{display:grid;gap:7px;margin-top:9px}
    .historical-session-row{display:grid;gap:7px;padding:9px;border:1px solid var(--line);border-radius:10px;background:#fff}
    .historical-session-main{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0}
    .historical-session-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
    .historical-session-detail{display:flex;flex-wrap:wrap;gap:4px 9px;color:var(--muted);font-size:10px;line-height:15px}
    .historical-session-status{font-size:10px;font-weight:600;white-space:nowrap}
    .historical-session-status.ok{color:#16794c}.historical-session-status.warn{color:#9b5c00}.historical-session-status.bad{color:#b42318}
    .historical-session-actions{display:flex;flex-wrap:wrap;gap:5px}
    .historical-session-actions button{height:27px;min-height:27px;padding:0 8px;border-radius:8px;font-size:10px}
    .historical-session-actions button[disabled]{opacity:.45;cursor:not-allowed}
    .historical-session-row[data-status="cng_trust_root_mismatch"]{background:#fff8f7;border-color:#f2c5bf}


/* source: apps/geeklisting_web/static/css/domains/catalog-polish.css */
    .cat-node:hover{background:#f5f5f7}.cat-node.active{background:#e8f2ff;color:var(--brand);font-weight:700}


/* source: apps/geeklisting_web/static/css/domains/preview-save.css */
    .save-pill{display:inline-flex;align-items:center;gap:6px;min-height:22px;padding:2px 8px;border-radius:999px;background:#f5f5f7;color:var(--muted);font-size:12px;font-weight:700}
    .save-pill.saving{background:#e8f2ff;color:var(--brand)}
    .save-pill.saved{background:#f6fff7;color:var(--ok);box-shadow:0 0 0 2px rgba(42,157,80,.08)}
    .save-pill.failed{background:#fff7f7;color:var(--bad)}
    .skc-card small{display:block;margin-top:3px;color:var(--muted);font-size:10px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}


/* source: apps/geeklisting_web/static/css/domains/batches.css */
    .loadBatch{min-height:54px!important;padding:7px 9px!important}
    .batch-actions{display:grid;gap:6px}
    .batchRegen,.delBatch{height:24px!important;margin:0!important;padding:0!important;font-size:11px!important;border-radius:8px!important;min-width:54px!important}
    .batch-line{display:flex;gap:6px;align-items:center;min-width:0}
    .batch-line strong,.batch-line span,.batch-line small{min-width:0}
    .batch-products{font-size:12px;font-weight:780;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .batch-id{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .batch-state{flex:0 0 auto!important;padding:1px 6px;border-radius:999px;background:#e8f2ff;color:var(--brand)!important;font-size:10px!important;font-weight:760!important}
    .batch-time{font-size:10px!important}
    .batch-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 10px}
    .batch-tab{height:32px;margin:0;border-radius:999px;background:var(--panel2);color:var(--text);border:1px solid var(--line);box-shadow:none;font-size:12px}
    .batch-tab.active{background:#e8f2ff;border-color:rgba(0,113,227,.28);color:var(--brand)}
    .batch-tab-panel{display:none;min-height:0}
    .batch-tab-panel.active{display:grid;gap:10px;min-height:0}
    .team-batch-list{display:grid;align-content:start;gap:10px;min-height:0;overflow:auto}
    .team-batch-card{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff}
    .team-batch-title,.team-batch-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}
    .team-batch-products{display:flex;flex-wrap:wrap;gap:6px}
    .team-batch-products label{display:flex;align-items:center;gap:5px;margin:0;padding:4px 7px;border:1px solid var(--line);border-radius:8px;color:var(--text);background:var(--panel2)}
    .team-batch-products input{width:14px;height:14px;margin:0}
    .team-batch-actions button{width:auto;height:30px;margin:0;padding:0 10px}
    .team-batch-child{padding-left:10px;border-left:2px solid rgba(0,113,227,.18);color:var(--muted);font-size:11px}
    .shop-full{white-space:normal;word-break:break-word;line-height:1.35}


/* source: apps/geeklisting_web/static/css/domains/incidents.css */
    .repair-queue{display:grid;gap:7px;margin:0;padding:9px;border:1px solid rgba(215,0,21,.18);border-radius:13px;background:#fff7f7;font-size:12px;color:var(--muted)}
    .repair-queue.empty{min-height:0;padding:0;border-color:transparent;background:transparent;color:var(--muted)}
    .repair-queue strong{color:var(--bad)}
    .repair-row{display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:6px;align-items:center}
    .repair-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .repair-row button{height:24px;margin:0;padding:0;border-radius:8px;font-size:11px}
    .inline-mini{display:inline-block;width:auto;height:24px;margin:0 0 0 8px;padding:0 10px;border-radius:999px;font-size:11px;vertical-align:middle}


/* source: apps/geeklisting_web/static/css/domains/assistant.css */
    .ai-agent-fab{position:fixed;right:22px;bottom:22px;z-index:20;width:auto;height:48px;margin:0;padding:0 19px;border-radius:999px;background:#0071e3;box-shadow:0 16px 34px rgba(0,113,227,.24);font-size:15px}
    .ai-agent-panel{position:fixed;right:22px;bottom:76px;z-index:20;display:none;width:min(520px,calc(100vw - 32px));height:min(720px,calc(100vh - 96px));min-width:460px;min-height:620px;overflow:hidden;padding:0;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 24px 70px rgba(0,0,0,.18)}
    .ai-agent-panel.open{display:block}.ai-agent-panel.fullscreen{left:50%;top:50%;right:auto;bottom:auto;width:min(1120px,calc(100vw - 160px));height:min(920px,calc(100vh - 72px));min-width:0;min-height:0;max-height:none;transform:translate(-50%,-50%);border-radius:16px;background:rgba(248,249,251,.98);box-shadow:0 0 0 9999px rgba(0,0,0,.45),0 28px 90px rgba(0,0,0,.24);backdrop-filter:blur(18px)}.ai-agent-shell{display:grid;grid-template-columns:minmax(0,1fr);width:100%;height:100%;min-width:0;min-height:0}.ai-agent-panel.fullscreen .ai-agent-shell{grid-template-columns:220px minmax(0,1fr);height:100%}.ai-agent-sidebar{display:none;min-width:0;min-height:0;padding:16px;border-right:1px solid var(--line);background:#f6f7f9}.ai-agent-panel.fullscreen .ai-agent-sidebar{display:flex;flex-direction:column}.ai-agent-side-head{display:flex;align-items:center;gap:8px;margin-bottom:12px}.ai-agent-side-head strong{font-size:17px;white-space:nowrap}.ai-agent-side-head button{width:72px;height:32px;margin:0;border-radius:10px}.ai-agent-sessions{display:grid;align-content:start;gap:8px;min-width:0;overflow:auto}.ai-agent-session{height:auto;min-height:46px;margin:0;padding:8px 10px;border-radius:10px;background:#fff;color:var(--text);border:1px solid var(--line);box-shadow:none;text-align:left;font-size:13px}.ai-agent-session.active{border-color:rgba(0,113,227,.45);background:#eef6ff}.ai-agent-session small{display:block;margin-top:3px;color:var(--muted);font-size:11px;font-weight:500}.ai-agent-main{display:flex;min-width:0;min-height:0;flex-direction:column;gap:12px;padding:18px}.ai-agent-main .head-row{flex:0 0 auto;gap:9px;min-width:0;flex-wrap:nowrap}.ai-agent-main h2{margin:0;white-space:nowrap;writing-mode:horizontal-tb}.ai-agent-panel textarea{display:block;width:100%;min-width:0;min-height:88px;max-height:150px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel2);resize:vertical;font:inherit;font-size:15px;line-height:1.5;box-sizing:border-box}.ai-agent-status{display:inline-flex;align-items:center;max-width:170px;height:28px;padding:0 11px;border-radius:999px;background:#eef6ff;color:#0071e3;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-agent-history{display:grid;align-content:start;gap:10px;min-width:0;min-height:0;flex:1;overflow:auto;padding:2px}.ai-agent-panel.fullscreen .ai-agent-history{width:min(820px,100%);max-height:none;margin:0 auto;padding:14px 4px}.ai-agent-chat{width:min(92%,760px);min-width:0;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--muted);font-size:15px;line-height:1.62;white-space:pre-wrap;box-sizing:border-box}.ai-agent-panel.fullscreen .ai-agent-chat{font-size:15px}.ai-agent-chat.user{justify-self:end;background:#e8f2ff;border-color:rgba(0,113,227,.18);color:var(--text)}.ai-agent-chat.waiting{color:var(--muted);background:#fff}.ai-agent-chat strong{display:block;margin-bottom:4px;color:var(--text);font-size:13px}.ai-agent-chat .ai-agent-time{display:block;margin-top:6px;color:var(--muted);font-size:11px;line-height:1.3;white-space:nowrap}.ai-agent-input{flex:0 0 auto;width:100%;min-width:0;border-top:1px solid var(--line);padding-top:12px}.ai-agent-panel.fullscreen .ai-agent-input{width:min(860px,100%);margin:0 auto}.ai-agent-msg,.ai-agent-card{margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--panel2);color:var(--muted);font-size:14px;line-height:1.55}.ai-agent-pending{display:none;flex:0 0 auto;max-height:180px;overflow:auto;border-top:1px solid var(--line);padding-top:10px}.ai-agent-pending.open{display:block}.ai-agent-panel.fullscreen .ai-agent-pending{width:min(860px,100%);margin:0 auto}.ai-agent-pending h3{margin:0 0 7px;font-size:15px}.ai-agent-card strong{display:block;color:var(--text);font-size:14px}.ai-agent-card button{height:34px;margin-top:9px;border-radius:10px;font-size:13px}.ai-agent-card-result{margin-top:9px;padding:8px 9px;border-radius:10px;background:#fff;color:var(--text);font-size:13px;line-height:1.5}.ai-agent-card-result.pending{color:var(--muted)}.ai-agent-card-result.bad{color:var(--bad)}.ai-agent-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;margin-top:9px}.ai-agent-tools button{margin:0;min-width:88px;height:40px}.ai-agent-panel.fullscreen #aiAgentExpand{min-width:72px}@media(max-width:760px){.ai-agent-panel{right:10px;bottom:70px;width:calc(100vw - 20px);height:min(680px,calc(100vh - 88px));min-width:0;min-height:0}.ai-agent-panel.fullscreen{width:calc(100vw - 20px);height:calc(100vh - 20px);border-radius:14px}.ai-agent-panel.fullscreen .ai-agent-shell{grid-template-columns:1fr}.ai-agent-panel.fullscreen .ai-agent-sidebar{display:none}.ai-agent-main{padding:14px}.ai-agent-main .head-row{gap:7px}.ai-agent-status{max-width:120px}.ai-agent-chat{width:100%}}
    .ai-agent-shell{position:relative}.ai-agent-sessions-toggle,.ai-agent-sidebar-scrim{display:none}
    @media(max-width:760px){.ai-agent-panel.fullscreen.sessions-open .ai-agent-sidebar{position:absolute;inset:0 auto 0 0;z-index:3;display:flex;width:min(84vw,300px);border-radius:14px 0 0 14px;box-shadow:18px 0 42px rgba(0,0,0,.18)}.ai-agent-panel.fullscreen.sessions-open .ai-agent-sidebar-scrim{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:0;background:rgba(0,0,0,.28);box-shadow:none}.ai-agent-panel.fullscreen .ai-agent-sessions-toggle{display:block;grid-column:2;grid-row:1;width:38px;min-width:38px;height:36px;margin:0;padding:0;font-size:21px}.ai-agent-panel.fullscreen .ai-agent-main .head-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:7px}.ai-agent-panel.fullscreen .ai-agent-main h2{grid-column:1;grid-row:1;overflow:hidden;text-overflow:ellipsis}.ai-agent-panel.fullscreen #aiAgentExpand{grid-column:3;grid-row:1;width:48px;min-width:48px;padding:0 6px}.ai-agent-panel.fullscreen #aiAgentClose{grid-column:4;grid-row:1;width:48px;min-width:48px;padding:0 6px}.ai-agent-panel.fullscreen .ai-agent-status{grid-column:1 / -1;grid-row:2;max-width:100%;height:24px}}


/* source: apps/geeklisting_web/static/css/app/responsive.css */
    .team-filter-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;min-width:0}.team-filter-row select{min-width:0}
    @media(max-width:1360px){main{padding:0 18px}.shell{gap:16px}}


/* source: apps/geeklisting_web/static/css/components/brand-auth.css */
    .brand-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;min-width:0;min-height:58px;align-items:center;gap:24px;margin-bottom:10px;padding:7px 12px;border-bottom:1px solid var(--line);background:var(--panel)}.brand-title{display:flex;min-width:0;min-height:40px;align-items:center;gap:10px;margin:0;letter-spacing:0}.brand-title img{display:block;width:36px;height:36px;flex:0 0 auto;border-radius:7px;object-fit:contain}.brand-copy{display:grid;min-width:0;gap:1px}.brand-name{color:var(--brand);font-size:11px;font-weight:760;line-height:1.1}.brand-subtitle{color:var(--text);font-size:17px;font-weight:760;line-height:1.2}.brand-actions{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:nowrap}.workbench-link,.header-version,.brand-actions #agentBadge{display:inline-flex;min-height:30px;height:30px;align-items:center;justify-content:center;margin:0;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:var(--panel);font-size:12px;font-weight:680;line-height:1;white-space:nowrap;box-shadow:none}.workbench-link{color:var(--text);text-decoration:none}.header-version{color:var(--muted);font-variant-numeric:tabular-nums}.brand-actions #agentBadge{gap:7px;color:var(--bad)}.brand-actions #agentBadge::before{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:currentColor;content:""}.brand-actions #agentBadge.ok{color:var(--ok)}.workbench-link:hover{border-color:rgba(0,113,227,.35);background:#f7fbff;color:var(--brand)}.workbench-link:active{transform:translateY(1px)}.workbench-link:focus-visible{outline:3px solid rgba(0,113,227,.18);outline-offset:2px}
    .shop-auth-actions{grid-template-columns:1fr}.agent-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.agent-dialog-actions button{margin:0}.agent-download-link{display:flex;align-items:center;justify-content:center;height:40px;border-radius:11px;background:var(--brand);color:#fff;text-decoration:none;font-size:13px;font-weight:650;box-shadow:0 10px 24px rgba(0,113,227,.18)}
    @media(max-width:760px){.brand-bar{grid-template-columns:minmax(0,1fr);gap:8px;padding:7px 0 8px;background:transparent}.brand-title{min-height:36px}.brand-title img{width:34px;height:34px;border-radius:7px}.brand-name{font-size:10px}.brand-subtitle{font-size:16px}.brand-actions{width:100%;justify-content:flex-start;gap:7px;flex-wrap:wrap}.workbench-link,.header-version,.brand-actions #agentBadge{min-height:32px;height:32px;padding:0 10px}.task-row{grid-template-columns:58px minmax(0,1fr) auto}.task-msg{grid-column:2/-1}.preview-item-heading{align-items:flex-start;flex-wrap:wrap}.preview-toolbar-actions{width:100%;margin-left:0}.preview-toolbar-actions button{flex:1;min-width:0}.sku-image-picker{left:0;right:auto;grid-template-columns:repeat(4,48px);width:228px}.agent-dialog-actions{grid-template-columns:1fr}}
    @media(max-width:420px){.brand-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto}.workbench-link,.header-version,.brand-actions #agentBadge{min-width:0;padding:0 8px}}
    .auth-mode-switch{display:inline-flex;gap:4px;margin-top:8px;padding:3px;border:1px solid var(--line);border-radius:7px;background:var(--panel2)}.auth-mode-button{min-height:28px;margin:0;padding:0 9px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:12px;font-weight:650}.auth-mode-button.active{background:var(--panel);color:var(--brand);box-shadow:0 1px 2px rgba(20,32,52,.12)}.auth-mode-button:focus-visible{outline:3px solid rgba(0,113,227,.18);outline-offset:1px}
    .agent-card{padding:16px}.agent-row{gap:11px}.agent-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:1px}.agent-actions button{height:38px;border-radius:10px}.agent-refresh{height:28px}.agent-meta{min-height:38px;display:flex;align-items:center}.agent-dialog-actions{grid-template-columns:repeat(2,minmax(0,1fr))}

    /* Compliance-style top bar with the existing listing runtime IDs. */
    .app-header{width:100%;margin:0;background:var(--panel);border-bottom:1px solid var(--line)}.header-inner{width:min(1740px,calc(100% - 48px));min-height:72px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand-block{display:flex;align-items:center;gap:11px;min-width:0}.brand-block img{flex:0 0 auto;object-fit:contain}.brand-title{display:flex;align-items:center;gap:0;min-width:0;min-height:auto;margin:0}.brand-copy{display:grid;min-width:0;gap:1px}.brand-name{color:var(--brand);font-size:12px;font-weight:700;line-height:1.15}.brand-subtitle{color:var(--text);font-size:20px;font-weight:760;line-height:1.25}.header-status{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:10px}.header-status .header-version,.header-status .workbench-link,.header-status #agentBadge{min-height:30px;height:30px}.header-status .version-log{width:min(390px,22vw);min-width:180px;height:30px;margin:0;padding:0;overflow:hidden;border:0;border-radius:0;background:transparent;color:var(--text);font-weight:800;line-height:30px}.header-status .version-log-track{height:100%;overflow:hidden}.header-status .version-log-track>div{overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.header-status #agentBadge{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;padding:0 9px;border:1px solid var(--line);border-radius:5px;background:var(--panel);font-size:12px;font-weight:680;white-space:nowrap}.header-status #agentBadge::before{width:7px;height:7px;flex:0 0 auto;margin-right:7px;border-radius:50%;background:currentColor;content:""}.header-status #agentBadge.ok{color:var(--ok)}.header-status #agentBadge.bad{color:var(--bad)}.header-status .workbench-link{color:var(--brand);font-weight:700}.header-status .workbench-link:hover{border-color:var(--brand);background:#f7fbff}.header-status .header-version{padding:0 9px;border:1px solid var(--line);border-radius:5px;background:var(--panel2);color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.header-agent{display:flex;min-width:0;align-items:center;gap:7px}.header-agent-meta{max-width:180px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.header-agent-actions{display:flex;align-items:center;gap:6px}.header-tool-button{width:auto;min-width:54px;height:30px;margin:0;padding:0 9px;border:1px solid var(--line);border-radius:5px;background:var(--panel2);box-shadow:none;color:var(--text);font-size:12px;font-weight:680}.header-tool-button:hover{border-color:rgba(0,113,227,.35);background:#f7fbff;box-shadow:none;color:var(--brand)}.header-tool-primary{border-color:var(--brand);background:var(--brand);color:#fff}.header-tool-primary:hover{background:#0678e8;color:#fff}
    @media(max-width:1420px){.header-inner{gap:14px}.header-status{gap:7px}.header-status .version-log{width:230px;min-width:120px}.header-agent-meta{display:none}}
    @media(max-width:1080px){.header-inner{align-items:flex-start;flex-direction:column;gap:8px;padding:8px 0 10px}.header-status{width:100%;justify-content:flex-start;flex-wrap:wrap}.header-status .version-log{flex:1 1 220px;width:auto}}
    @media(max-width:760px){.header-inner{width:calc(100% - 24px);min-height:66px}.brand-block{min-height:34px}.brand-block img{width:34px;height:34px}.brand-subtitle{font-size:17px}.header-status .workbench-link,.header-status .header-version,.header-status #agentBadge,.header-tool-button{min-height:32px;height:32px}.header-agent{flex:1 1 100%;justify-content:space-between}.header-agent-meta{display:block;max-width:none;flex:1}.header-agent-actions{flex:0 0 auto}}
    @media(max-width:520px){.header-status{display:grid;grid-template-columns:minmax(0,1fr) auto}.header-status .version-log{grid-column:1/-1;grid-row:1;min-width:0;width:100%}.header-status .workbench-link{grid-column:1;grid-row:2}.header-status .header-version{grid-column:2;grid-row:2}.header-agent{grid-column:1/-1;grid-row:3;display:grid;grid-template-columns:auto minmax(0,1fr)}.header-agent-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.header-tool-button{width:100%;min-width:0;padding:0 6px}.header-status #agentBadge{justify-self:start}.header-agent-meta{min-width:0}}

    .app-header{position:sticky;top:0;z-index:40;width:100%;margin:0;padding:0;isolation:isolate}.header-inner{display:grid;grid-template-columns:max-content minmax(0,1fr);width:100%;min-height:56px;margin:0;padding:0 24px;gap:20px}.brand-block img{width:36px;height:36px}.header-status{display:grid;grid-template-columns:max-content max-content minmax(180px,1fr) max-content;justify-content:stretch;gap:8px}.header-status .workbench-link{grid-column:1}.header-status .header-version{grid-column:2}.header-status .version-log{grid-column:3;width:100%;min-width:180px;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--muted);font-weight:650}.header-status #agentBadge{margin:0}.header-status #agentBadge.ok{border-color:rgba(36,138,61,.38);background:#f3faf5}.header-status #agentBadge.bad{border-color:rgba(215,0,21,.3);background:#fff5f6}.header-agent{grid-column:4;justify-content:flex-end;padding-left:10px;border-left:1px solid var(--line)}
    @media(max-width:1080px){.header-inner{grid-template-columns:1fr;width:100%;min-height:auto;padding:8px 18px 10px;gap:7px}.header-status{display:grid;grid-template-columns:max-content max-content minmax(0,1fr);width:100%;justify-content:stretch;flex-wrap:nowrap}.header-status .workbench-link{grid-column:1;grid-row:1}.header-status .header-version{grid-column:2;grid-row:1}.header-status .version-log{grid-column:3;grid-row:1;width:100%;min-width:0}.header-agent{grid-column:1/-1;grid-row:2;width:100%;justify-content:flex-end;padding-left:0;border-left:0}}
    @media(max-width:760px){.header-inner{width:100%;padding:8px 12px 10px}.header-agent{width:100%}.header-agent-actions{flex:0 0 auto}}
    @media(max-width:520px){.header-status{grid-template-columns:minmax(0,1fr) auto}.header-status .version-log{grid-column:1/-1;grid-row:1}.header-status .workbench-link{grid-column:1;grid-row:2}.header-status .header-version{grid-column:2;grid-row:2}.header-agent{grid-column:1/-1;grid-row:3;display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center}.header-agent-meta{display:none}.header-agent-actions{grid-column:2;grid-row:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}}

    .app-header{inset-block-start:0}.header-inner{height:56px;min-height:56px}.header-status .version-log{position:relative}.header-status .version-log-track{display:flex;width:max-content;height:30px;align-items:center;overflow:visible;animation:headerVersionMarquee 56s linear infinite;will-change:transform}.header-status .version-log-track>div{flex:0 0 auto;height:30px;padding:0 32px 0 0;overflow:visible;text-overflow:clip;line-height:30px}.header-agent{min-height:32px}.header-agent-actions{min-height:30px}@keyframes headerVersionMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
    .header-agent-actions{min-width:0;flex-wrap:nowrap;gap:6px;padding:0 0 0 8px;border-left:1px solid var(--line)}.header-agent-actions .header-tool-button{min-width:78px;text-align:center}.incident-ledger-dialog{width:min(820px,calc(100vw - 28px))}.incident-ledger-filters{display:grid;grid-template-columns:minmax(0,1fr) 160px auto;gap:8px;margin:16px 0 8px}.incident-ledger-filters>*{min-width:0;height:38px;margin:0}.incident-ledger-rows{display:grid;gap:8px;max-height:56vh;overflow:auto}.incident-ledger-row{padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel2)}.incident-ledger-row-head,.incident-ledger-row-body{display:flex;align-items:center;gap:12px;min-width:0}.incident-ledger-row-head{justify-content:space-between}.incident-ledger-row-head span,.incident-ledger-row-foot{color:var(--muted);font-size:12px}.incident-ledger-row-body{flex-wrap:wrap;margin-top:8px;color:var(--text);font-size:12px}.incident-ledger-row-body>*{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.incident-ledger-row-foot{margin-top:8px}@media(max-width:760px){.header-agent-actions{width:100%;padding-left:0;border-left:0}.header-agent-actions .header-tool-button{min-width:0;flex:1}.incident-ledger-filters{grid-template-columns:1fr 1fr}.incident-ledger-filters button{grid-column:1/-1}}@media(max-width:520px){.header-agent-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.header-agent-actions .header-tool-button{width:100%;padding:0 4px}.incident-ledger-row-head{display:grid;gap:4px}.incident-ledger-row-body{display:grid;grid-template-columns:1fr 1fr;gap:6px}}
    @media(max-width:1080px){.header-inner{height:auto;min-height:0}}


/* source: apps/geeklisting_web/static/css/layout-contract.css */
/* V3.399 layout contract: one source of truth for the workbench, SKU table and SKC attributes. */
:root {
  --gl-main-max: 1760px;
  --gl-config-col: 386px;
  --gl-batch-col: 460px;
  --gl-workbench-gap: 18px;
  --gl-rail-list-max: min(560px, calc(100vh - 320px));
}

input:not([type="checkbox"]):not([type="radio"]):not(:disabled):not([readonly]),
select:not(:disabled),
textarea:not(:disabled):not([readonly]) {
  background-color: #fff;
}

main {
  width: min(100%, var(--gl-main-max));
  max-width: var(--gl-main-max);
  margin: 0 auto 40px;
  padding: 16px 24px 0;
}

.shell {
  display: grid;
  grid-template-columns: minmax(340px, var(--gl-config-col)) minmax(0, 1fr) minmax(340px, var(--gl-batch-col));
  gap: var(--gl-workbench-gap);
  align-items: start;
}

.config-panel,
.progress-panel,
.batch-panel,
.batch-card,
.preview-item,
.task-row,
.shop,
.team-batch-card {
  min-width: 0;
}

.config-panel,
.progress-panel,
.batch-panel {
  width: 100%;
}

/* The right rail owns its scroll window; it must not inherit the left rail height. */
.batch-panel {
  height: auto !important;
  min-height: 0 !important;
}

.batch-card {
  height: auto;
  min-height: 0;
}

.batch-list,
.team-batch-list {
  max-height: var(--gl-rail-list-max);
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
}

.shop-list,
.status,
.cat-col {
  overscroll-behavior: contain;
}

/* Keep SKU actions inside the preview card at every desktop width. */
.preview-section[id$="-sku"] {
  max-width: 100%;
  min-width: 0;
  overflow: visible;
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.preview-section[id$="-sku"] .sku {
  position: relative;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding-top: 38px;
  margin-top: 0;
  border-top: 0;
}

.preview-section[id$="-sku"] .sku-head,
.preview-section[id$="-sku"] .sku-row {
  grid-template-columns:
    minmax(118px, 1.35fr)
    minmax(92px, 1fr)
    minmax(76px, .9fr)
    56px
    48px
    48px
    48px
    54px
    minmax(102px, .86fr)
    56px;
  gap: 6px;
  width: 100%;
  min-width: 0;
}

.preview-section[id$="-sku"] .sku-head > span,
.preview-section[id$="-sku"] .sku-row > * {
  min-width: 0;
}

.preview-section[id$="-sku"] .sku-row input {
  width: 100%;
  min-width: 0;
  padding-right: 8px;
  padding-left: 8px;
}

.preview-section[id$="-sku"] .sku-row {
  position: relative;
  overflow: visible;
}

.preview-section[id$="-sku"] .sku-thumb-wrap {
  display: grid;
  grid-template-columns: 34px minmax(16px, auto) 34px;
  gap: 4px;
  align-items: center;
  width: 100%;
  min-width: 0;
}

.preview-section[id$="-sku"] .sku-thumb-wrap > span {
  white-space: nowrap;
}

.preview-section[id$="-sku"] .sku-head > span:last-child {
  position: absolute;
  top: 0;
  right: 0;
}

.preview-section[id$="-sku"] .addSku {
  width: auto;
  min-width: 80px;
  height: 30px;
  margin: 0;
  padding: 0 12px;
  white-space: nowrap;
}

.preview-section[id$="-sku"] .delSku {
  width: 56px;
  min-width: 56px;
  padding: 0;
  white-space: nowrap;
}

/* SKC attributes are one collapsible band. Only the platform contract decides
   which controls are editable; quantity and packaging stay aligned inside the
   same band without adding nested cards. */
.skc-attributes{margin:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;overflow:visible}
.skc-attributes summary{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 2px;cursor:pointer;font-size:13px;font-weight:750;list-style:none}
.skc-attributes summary::-webkit-details-marker{display:none}
.skc-attributes summary:after{content:"+";margin-left:auto;color:var(--muted);font-size:18px;font-weight:400}
.skc-attributes[open] summary:after{content:"−"}
.attribute-summary-note{color:var(--muted);font-size:12px;font-weight:500}
.skc-contract-status{margin-left:auto;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:650;white-space:nowrap}
.skc-contract-status.is-ok{color:#177245;background:#e8f6ed}.skc-contract-status.is-readonly{color:#7a5a18;background:#fff7dc}.skc-contract-status.is-bad{color:#a33b19;background:#fff0e9}
.skc-attribute-body{padding:0 0 4px}
.skc-contract-section{padding:12px 0 4px;border-top:1px solid rgba(210,210,215,.55)}
.skc-contract-section:first-child{border-top:0}
.attribute-group-head{display:flex;align-items:center;gap:8px;min-height:28px;margin-bottom:8px;color:var(--text);font-size:12px}
.attribute-group-head span{margin-left:auto;color:var(--muted);font-weight:500;text-align:right}
.skc-quantity-status{margin-left:auto;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:650;white-space:nowrap}
.skc-quantity-status.is-ok{color:#177245;background:#e8f6ed}.skc-quantity-status.is-bad{color:#a33b19;background:#fff0e9}
.skc-quantity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;align-items:end;margin-bottom:10px}
.skc-quantity-grid label{margin:0;min-width:0}.skc-quantity-grid input,.skc-quantity-grid select{height:36px;margin-top:5px}
.skc-count-input{display:grid;grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:6px}.skc-count-input input{width:100%;min-width:0}.skc-count-input span{margin-top:5px;color:var(--muted);text-align:center}
.skc-quantity-hint,.skc-attribute-empty{padding:8px 0 10px;color:var(--muted);font-size:12px;line-height:1.45}
.pop-package{padding:0 0 6px}.pop-package-title{display:flex;align-items:center;gap:8px;margin-bottom:8px}.pop-package-title .hint{font-size:11px}
.platform-attribute-list{display:grid;gap:0}.platform-attribute-group{padding:3px 0 5px}.platform-attribute-group+.platform-attribute-group{border-top:1px solid rgba(210,210,215,.55);margin-top:4px;padding-top:8px}
.platform-attribute-field{display:grid;grid-template-columns:minmax(170px,.36fr) minmax(0,1fr);gap:14px;align-items:center;padding:9px 0;border-top:1px solid rgba(210,210,215,.4);font-size:12px}
.platform-attribute-field[hidden]{display:none}
.platform-attribute-field:first-child{border-top:0}.attribute-label{display:flex;align-items:center;gap:6px;min-width:0}.attribute-label strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attribute-label small{margin-left:auto;color:var(--muted);font-size:10px;font-weight:500;white-space:nowrap}
.required-mark{margin-left:0;color:var(--bad);font-size:11px}.platform-attribute-control{min-width:0}.attribute-control{width:100%;height:34px;margin:0}.attribute-choice-panel{min-width:0}.attribute-option-search{width:min(280px,100%);height:32px;margin:0 0 8px}.attribute-choice-grid{display:flex;flex-wrap:wrap;gap:8px 14px}.attribute-choice-panel.is-searchable .attribute-choice-grid{max-height:220px;overflow:auto;align-content:flex-start;padding-right:4px}.attribute-choice{display:inline-flex;align-items:center;gap:6px;margin:0;color:var(--text);font-size:12px}.attribute-choice input{width:14px;height:14px;margin:0}.attribute-scalar{display:flex;align-items:center;gap:7px}.attribute-scalar .attribute-control{flex:1}.attribute-scalar span{color:var(--muted);white-space:nowrap}.attribute-toggle{display:inline-flex;align-items:center;gap:7px;margin:0;color:var(--text);font-size:12px}.attribute-toggle input{width:16px;height:16px;margin:0}.attribute-readonly{display:flex;align-items:center;gap:8px;min-height:34px;padding:0 10px;background:rgba(245,246,248,.78);color:var(--muted);border-radius:7px}.attribute-readonly strong{color:var(--text);font-weight:650}.attribute-readonly span{font-size:11px}
@media (max-width:900px){.skc-quantity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-attribute-field{grid-template-columns:1fr;gap:6px}.attribute-label small{margin-left:auto}}
@media (max-width:560px){.skc-quantity-grid{grid-template-columns:1fr}}

@media (max-width: 1360px) {
  main {
    padding: 16px 18px 0;
  }

  .shell { gap: 16px; }

  .batch-panel {
    grid-column: 1 / -1;
  }

  .batch-list,
  .team-batch-list {
    max-height: 320px;
  }
}

/* At browser zoom / compact laptop widths, do not squeeze the preview beside the config rail. */
@media (max-width: 1180px) {
  .shell { grid-template-columns: 1fr; }
  .batch-panel { grid-column: auto; }
}

@media (max-width: 860px) {
  .shell {
    grid-template-columns: 1fr;
  }

  .batch-panel {
    grid-column: auto;
  }

  .batch-list,
  .team-batch-list {
    max-height: 300px;
  }

  .preview-section[id$="-sku"] {
    overflow-x: auto;
    overflow-y: hidden;
  }

  .preview-section[id$="-sku"] .sku {
    min-width: 720px;
  }
}

@media (max-width: 430px) {
  main {
    padding: 14px 12px 0;
  }
}

