/* Connected work tools use the existing palette and card anatomy. */
.wb-note{color:var(--muted);font-size:12px;line-height:1.7;margin:12px 0;overflow-wrap:anywhere}
.wb-view-toolbar{display:flex;align-items:center;gap:10px;margin-left:auto;flex-wrap:wrap}.wb-view-toolbar label{display:flex;align-items:center;gap:7px;font-size:11px;white-space:nowrap;margin:0}.wb-view-toolbar svg{width:15px;height:15px;color:var(--accent)}.wb-view-toolbar select{max-width:190px;min-width:130px}.wb-view-toolbar .btn{white-space:nowrap}
.wb-column-picker{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:18px 0}.wb-column-picker>div{display:flex;align-items:center;padding:7px 9px;border:1px solid var(--border);border-radius:8px;background:var(--surface-subtle)}.wb-column-picker label{display:flex;gap:8px;align-items:center;flex:1;font-size:12px;margin:0}.wb-column-picker .icon-btn{width:27px;height:27px}.wb-column-picker input{width:15px;height:15px}
.wb-editable-cell{display:flex;align-items:center;gap:3px;min-width:0}.wb-editable-cell>.product-link{flex:1;min-width:0}.wb-editable-cell>span{overflow:hidden;text-overflow:ellipsis}.wb-pencil{display:grid;place-items:center;flex:none;border:0;background:transparent;color:var(--muted);cursor:pointer;width:22px;height:26px;border-radius:5px;opacity:0}.wb-pencil svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.6}.product-row:hover .wb-pencil,.wb-pencil:focus-visible{opacity:1}.wb-pencil:hover{background:var(--accent-soft);color:var(--accent)}.wb-editable-cell form{min-width:160px;max-width:250px;padding:5px 0}.wb-editable-cell .field{margin:0 0 7px}.wb-editable-cell .field>label{font-size:10px}.wb-editable-cell input,.wb-editable-cell select,.wb-editable-cell textarea{width:100%;min-width:0;font-size:12px}.wb-editable-cell .actions{gap:4px}.wb-editable-cell .btn{padding:5px 8px}.wb-editable-cell .form-error{white-space:normal;font-size:11px}
.wb-completeness{width:100%;padding:6px 0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;border-radius:5px}
.portfolio-table th[data-column=selection]{width:30px!important}.portfolio-table th[data-column=number]{width:24px!important}.portfolio-table th[data-column=name]{width:185px!important}.portfolio-table th[data-column=supplier_name]{width:104px!important}.portfolio-table th[data-column=category]{width:90px!important}.portfolio-table th[data-column=passport_status]{width:182px!important}.portfolio-table th[data-column=version]{width:45px!important}.portfolio-table th[data-column=completeness]{width:90px!important}.portfolio-table th[data-column=updated_at]{width:88px!important}.portfolio-table th[data-column=actions]{width:165px!important}.portfolio-table th[data-column=country],.portfolio-table th[data-column=carbon_kg],.portfolio-table th[data-column=target_date]{width:130px!important}.portfolio-table th[data-column=sku],.portfolio-table th[data-column=lifecycle]{width:100px!important}
.wb-product-tools{display:flex;gap:7px;flex-wrap:wrap;padding-bottom:17px;margin-bottom:18px;border-bottom:1px solid var(--border)}.wb-product-tools .btn{font-size:11px}
.wb-readiness-summary{display:flex;gap:20px;align-items:center;padding:22px;border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));border-radius:12px;background:var(--accent-soft)}.wb-readiness-summary>strong{font-size:38px;color:var(--accent)}.wb-readiness-summary p{margin:5px 0 0;color:var(--muted)}.wb-checks{display:grid;gap:7px;margin:18px 0}.wb-checks>div,.wb-issue{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:12px 14px;border-radius:8px;background:var(--surface-subtle);border:1px solid var(--border)}.wb-checks .complete{color:var(--state-teal)}.wb-checks .missing{color:var(--state-amber)}.wb-checks small,.wb-issue small{display:block;margin-top:5px;font-size:11px;color:var(--muted);line-height:1.6}.wb-issue{margin:7px 0}.wb-issue>div{min-width:0}.wb-next-step{display:grid;gap:7px;padding:17px 20px;border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:8px;margin:18px 0}.wb-next-step small{color:var(--muted)}.wb-success{color:var(--state-teal)}.wb-warning{color:var(--state-amber)}
.dialog.wb-wide-dialog{width:min(1280px,calc(100vw - 48px));max-width:none}.wb-source-select{display:flex;align-items:center;gap:12px;margin-bottom:18px}.wb-source-select select{flex:1;min-width:0}.wb-source-layout{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(280px,1.2fr);gap:22px}.wb-source-layout>section{min-width:0}.wb-source-layout pre,.wb-passport-field pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65;background:var(--surface-subtle);padding:12px;border-radius:7px;margin:7px 0 18px}.wb-source-layout h3{margin:9px 0 22px}.wb-definition>div{padding:10px 0;border-bottom:1px solid var(--border);display:grid;grid-template-columns:90px 1fr;gap:12px}.wb-definition dt{font-size:11px;color:var(--muted)}.wb-definition dd{margin:0;font-size:12px;overflow-wrap:anywhere}.wb-document-preview{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.wb-document-preview iframe{width:100%;height:540px;border:1px solid var(--border);border-radius:10px;background:var(--surface-subtle)}.wb-document-preview img{max-width:100%;max-height:540px;object-fit:contain;border-radius:9px}.wb-quantity-preview{display:block;font-size:14px;font-weight:650;color:var(--accent);margin:10px 0}.wb-quantity-history{margin-top:22px}.wb-quantity-history .list-row{gap:18px;font-size:12px}.wb-quantity-history small{display:block;margin-top:5px;color:var(--muted)}
.wb-compare-controls{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:16px}.wb-compare-controls label{display:grid;gap:6px;flex:1;min-width:150px;font-size:11px;color:var(--muted)}.wb-snapshot-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.wb-passport-preview{padding:22px;background:var(--surface);border:1px solid var(--border);border-radius:14px;min-width:0}.wb-passport-preview header{border-bottom:1px solid var(--border);padding-bottom:18px}.wb-passport-preview header>span:first-child{font-size:10px;letter-spacing:.08em;color:var(--accent)}.wb-passport-preview header h2{font-size:22px;line-height:1.4;margin:10px 0}.wb-passport-preview header small{display:block;margin-top:8px;color:var(--muted)}.wb-passport-field{padding:12px;margin:10px 0;border-radius:8px;border:1px solid transparent}.wb-passport-field small{font-size:10px;color:var(--muted)}.wb-passport-field p{font-size:12px;line-height:1.7;margin:7px 0;white-space:pre-wrap;overflow-wrap:anywhere}.wb-passport-preview .changed,.wb-changed{background:color-mix(in srgb,var(--state-amber) 9%,var(--surface));border-color:color-mix(in srgb,var(--state-amber) 30%,var(--border))}.wb-snapshot-images{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.wb-snapshot-images img{max-width:100%;width:130px;height:110px;object-fit:contain;border-radius:8px;background:var(--surface-subtle)}.wb-passport-preview h3{font-size:15px;margin:22px 0 10px}.mobile .wb-passport-preview{width:100%;max-width:360px;margin:auto;padding:16px}.mobile .wb-passport-preview h2{font-size:18px}
.wb-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.wb-kpis>div{padding:18px;border:1px solid var(--border);border-radius:10px;background:var(--surface-subtle)}.wb-kpis small{display:block;color:var(--muted);font-size:11px;line-height:1.6}.wb-kpis strong{display:block;font-size:26px;color:var(--accent);margin-top:10px}.wb-stage-times{display:grid;grid-template-columns:1fr 1fr;gap:15px}.wb-stage-times>div{display:grid;gap:9px;padding:17px;border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:8px}.wb-stage-times span{font-size:12px}.wb-range{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.wb-range .field{margin:0;flex:1}.wb-range input{min-width:160px}.wb-scroll-list{max-height:300px;overflow:auto;margin:12px 0 20px}.wb-data-row{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;text-align:left;padding:12px;background:transparent;border:0;border-bottom:1px solid var(--border);font:inherit;font-size:12px;cursor:pointer;color:var(--ink)}.wb-data-row>span:first-child{flex:1}.wb-data-row:hover{background:var(--accent-soft)}
.wb-widget-summary{display:flex;align-items:center;gap:12px;margin-bottom:15px}.wb-widget-summary>b{font-size:28px;color:var(--accent)}.wb-widget-summary>span{font-size:12px;color:var(--muted);flex:1}.wb-agenda-row{display:flex;align-items:center;gap:10px;border-top:1px solid var(--border);padding:10px 0}.wb-agenda-row>button:first-child{border:0;background:transparent;text-align:left;color:var(--ink);font:inherit;flex:1;min-width:0;cursor:pointer}.wb-agenda-row small,.wb-agenda-row time{display:block;font-size:10px;color:var(--muted);margin:4px 0}.wb-agenda-row b{font-size:12px;display:block}.wb-target-row{display:flex;gap:12px;align-items:center;justify-content:space-between;width:100%;text-align:left;padding:12px 0;border:0;border-top:1px solid var(--border);background:transparent;color:var(--ink);font:inherit;cursor:pointer}.wb-target-row b{font-size:12px}.wb-target-row small{display:block;font-size:10px;color:var(--muted);line-height:1.6;margin-top:5px}.wb-target-date{font-size:11px;white-space:nowrap;text-align:right}.wb-target-date.overdue{color:var(--state-red)}.wb-target-date.at_risk{color:var(--state-amber)}.widget-myWork{--widget-color:var(--state-violet)}.widget-publicationTargets{--widget-color:var(--state-blue)}.widget-approvalFlow{--widget-color:var(--state-teal)}.ux-calendar-event.target,.ux-calendar-filters .target{--event-color:var(--state-violet)}
.wb-team-options{margin:16px 0;padding:15px;border:1px solid var(--border);border-radius:9px;background:var(--surface-subtle)}.wb-team-options>label{margin:8px 0}.wb-team-roles{display:flex;gap:15px;flex-wrap:wrap;margin:12px 0}.wb-team-roles label{display:flex;align-items:center;gap:6px;font-size:12px}
.wb-pencil:focus-visible,.wb-completeness:focus-visible,.wb-data-row:focus-visible,.wb-target-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(hover:none){.wb-pencil{opacity:1}}
@media(max-width:800px){.wb-source-layout,.wb-snapshot-grid{grid-template-columns:1fr}.wb-kpis{grid-template-columns:1fr 1fr}.wb-column-picker{grid-template-columns:1fr}.wb-stage-times{grid-template-columns:1fr}.wb-view-toolbar{margin-left:0}.dialog.wb-wide-dialog{width:calc(100vw - 24px)}.wb-product-tools .btn{padding:7px 9px}.wb-range{align-items:stretch}.wb-range .field{flex-basis:40%}}

.wb-quantity-warning[hidden]{display:none!important}

.wb-pdf-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;background:var(--surface);border-bottom:1px solid var(--line);font-size:12px}.wb-pdf-page{padding:16px;background:#e9edf3;min-height:380px;max-height:570px;overflow:auto}.wb-pdf-page canvas{display:block;height:auto;background:white;box-shadow:0 2px 12px #15264a20}.wb-document-preview [data-wb-pdf]{width:100%}

.wb-value-list{display:grid;gap:9px;margin-top:10px}.wb-value-list>div{display:flex;flex-wrap:wrap;gap:9px 18px;padding:12px;border:1px solid var(--border);border-radius:8px;font-size:12px}.wb-value-list span{display:grid;gap:5px;overflow-wrap:anywhere;min-width:70px}.wb-passport-preview p{overflow-wrap:anywhere}.wb-pdf-controls{border-color:var(--border)}

.dialog.wb-view-dialog{width:min(880px,calc(100vw - 40px));max-width:none}.wb-view-dialog .wb-column-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.wb-view-dialog form>p{margin:12px 0;color:var(--muted);font-size:12px;line-height:1.6}.wb-view-dialog .consent{margin:16px 0}.wb-view-dialog .form-actions{margin-top:16px}@media(max-width:800px){.wb-view-dialog .wb-column-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.wb-view-dialog .wb-column-picker{grid-template-columns:1fr}}

.wb-column-save{display:flex;align-items:center;gap:10px;min-height:28px;color:var(--accent);font-size:12px;line-height:1.6}.wb-column-save.error{color:var(--danger)}
.portfolio-table th.product-version .product-sort{justify-content:center;width:100%;gap:3px}.portfolio-table th[data-column=version]{width:64px!important}

/* Product column order uses the same pointer and keyboard handles as other collections. */
.wb-columns-button{width:36px;height:36px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--muted)}
.wb-columns-button:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}
.wb-columns-button svg{width:19px;height:19px}
.wb-column-picker>div{gap:7px;padding:8px;min-width:0}.wb-column-picker .reorder-handle{width:26px;height:30px}.wb-column-picker label{line-height:1.5}.wb-column-picker input{flex:none}
.wb-column-picker .is-reordering-item{opacity:.45}.wb-column-picker .reorder-target{background:var(--accent-soft);outline-style:solid;outline-offset:1px}
.wb-view-dialog .wb-drag-help{font-size:11px;margin-top:-5px}
.wb-target-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;padding:10px 12px 18px;min-height:155px}
.wb-target-empty>svg{width:27px;height:27px;color:var(--accent)}.wb-target-empty>b{font-size:12px;line-height:1.5}.wb-target-empty>.wb-note{margin:0;font-size:11px;max-width:32ch}.wb-target-empty>.btn{margin-top:4px}
.wb-target-create{padding-top:14px}.wb-target-completed{font-size:11px;color:var(--muted);line-height:1.6;margin:12px 0 0}.wb-target-completed b{color:var(--accent)}
.product-sort{gap:6px;border-radius:5px;transition:color .15s}
.product-sort .product-sort-icon{box-sizing:border-box;width:14px;height:14px;padding:0;flex:none;border-radius:4px;opacity:.5;transition:transform .18s,opacity .18s,background .18s}
.product-sort .product-sort-icon.is-active{background:var(--accent-soft);color:var(--accent)}
.product-sort .product-sort-icon path{opacity:1}.product-sort:hover .product-sort-icon,.product-sort:focus-visible .product-sort-icon,.product-sort .product-sort-icon.is-active{opacity:1}
.product-sort .product-sort-icon.is-descending{transform:rotate(180deg)}
