/* Studio tabs, Product rebranding (rebrand.js) and Brand library (brand-library.js). Uses the studio
   tokens from studio.css: cream and green, DM Sans and Instrument Serif. */
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.studio-views{display:flex;gap:4px;margin-right:auto;margin-left:28px;overflow-x:auto;scrollbar-width:none}
.studio-views a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;font-size:11px;letter-spacing:2px;font-weight:600;text-decoration:none;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap}
.studio-views a[aria-current=page]{color:var(--ink);border-bottom-color:var(--coral)}
.studio-views a:hover{color:var(--ink)}
.studio-views a:focus-visible,.rebrand button:focus-visible,.rebrand input:focus-visible,.rebrand select:focus-visible,.rebrand textarea:focus-visible,.rebrand a:focus-visible,.rb-row:focus-within,.rb-look-card:focus-within,.rb-lib-tile:focus-within{outline:3px solid var(--coral);outline-offset:2px}
.rebrand button,.rebrand .secondary,.rebrand select,.rebrand input[type=search]{min-height:44px}
.rebrand input[type=checkbox],.rebrand input[type=radio]{width:22px;height:22px;margin:0;accent-color:var(--green);flex:none}
.rb-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.rb-head h1{margin-bottom:10px}.rb-store{min-width:220px;margin:0}
.rb-title{font:400 28px/1.15 'Instrument Serif',serif;margin-bottom:12px}
.rb-steps{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:20px 0 28px;border-bottom:1px solid var(--line)}
.rb-steps button{display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:0 14px;color:var(--muted);border-bottom:2px solid transparent}
.rb-steps button span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid var(--line);font-size:12px}
.rb-steps button[aria-current]{color:var(--ink);border-bottom-color:var(--coral)}.rb-steps button[aria-current] span{background:var(--green);border-color:var(--green);color:#fff}
.rb-steps-images{margin-left:auto}
.rb-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px;align-items:start}
.rb-side{position:sticky;top:20px;border:1px solid var(--line);background:#fff;border-radius:8px;padding:22px;display:grid;gap:10px}
.rb-side .primary,.rb-side .secondary{width:100%;text-align:center;margin:0}
.rb-count{font-size:17px;margin:0}.rb-count strong{font:400 34px/1 'Instrument Serif',serif;color:var(--green)}
.rb-warn{background:#fdf0eb;color:#8a3a26;border-radius:6px;padding:10px 12px;margin:0}
.rb-banner{background:var(--cream);border-radius:6px;padding:10px 14px}
.rb-tools{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.rb-toggle{display:inline-flex;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.rb-toggle button{border:0;background:#fff;padding:0 16px;color:var(--muted)}.rb-toggle button[aria-pressed=true]{background:var(--green);color:#fff}
.rb-search{flex:1;min-width:200px;margin:0}.rb-search input{margin:0}
.rb-list{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:8px;background:#fff}
.rb-list li+li{border-top:1px solid var(--line)}
.rb-row{display:flex;align-items:center;gap:14px;margin:0;padding:10px 16px;min-height:64px;cursor:pointer;color:var(--ink);font-size:15px}
.rb-row img,.rb-thumb-empty{width:52px;height:52px;object-fit:cover;border-radius:5px;background:var(--cream);flex:none}
.rb-row-text{display:grid;flex:1;min-width:0}.rb-row-text strong{font-weight:500;overflow-wrap:anywhere}
.rb-look{font-size:12px;color:var(--muted);text-align:right}
.rb-row:has(input:disabled){cursor:default;opacity:.6}
.rb-looks{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;margin-bottom:22px}
.rb-look-card{position:relative;display:grid;gap:8px;margin:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;color:var(--ink)}
.rb-look-card input{position:absolute;top:16px;left:16px}
.rb-look-card img,.rb-swatch{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:5px}
.rb-look-card:has(input:checked){border-color:var(--green);box-shadow:0 0 0 2px var(--green)}
.rb-current{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:99px;background:var(--cream);color:var(--ink)}
.rb-label{font-size:12px;color:var(--muted);margin-bottom:6px}
.rb-lib{border:1px solid var(--line);border-radius:8px;padding:16px 18px;margin-top:22px;background:#fff}.rb-lib legend{padding:0 6px;font-weight:500}
.rb-lib h3{font-size:14px;margin:16px 0 8px}
.rb-lib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}
.rb-lib-tile{position:relative;display:grid;gap:6px;margin:0;padding:8px;border:1px solid var(--line);border-radius:6px;cursor:pointer;font-size:12px;color:var(--ink)}
.rb-lib-tile input{position:absolute;top:12px;left:12px}.rb-lib-tile img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px}
.rb-lib-tile:has(input:checked){border-color:var(--green);box-shadow:0 0 0 2px var(--green)}
.rb-none{place-items:center;min-height:120px;text-align:center}.rb-none input{position:static}
.rb-confirm{background:var(--cream);border-radius:6px;padding:14px}.rb-confirm p{margin:0 0 6px}
.rb-review-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap;margin-bottom:12px}
.rb-progress{height:10px;border-radius:99px;background:var(--cream);overflow:hidden;margin-bottom:28px}.rb-progress span{display:block;height:100%;background:var(--green);transition:width .4s}
.rb-product{margin-bottom:28px}.rb-product h3{margin-bottom:10px}
.rb-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.rb-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:14px}.rb-card h4{margin:0 0 10px;font-size:13px;font-weight:600;letter-spacing:.5px}
.rb-compare{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rb-compare figure{margin:0}
.rb-compare figcaption{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.rb-compare img,.rb-placeholder{display:grid;place-items:center;width:100%;aspect-ratio:1;object-fit:cover;border-radius:5px;background:var(--cream);color:var(--muted);font-size:12px;text-align:center;padding:8px}
.rb-card .actions{margin-top:12px}.rb-card .actions .primary,.rb-card .actions .secondary{margin:0}
.rb-ok{margin:12px 0 0;color:var(--green);font-size:13px}
.rb-redo{margin-top:12px}.rb-redo label{margin:0 0 6px}
.rb-empty{text-align:center;padding:40px 0}
.rb-grid{list-style:none;padding:0;margin:14px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}
.rb-tile{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;display:grid;gap:6px}
.rb-tile label{position:relative;display:grid;gap:4px;margin:0;color:var(--ink);font-size:13px;cursor:pointer}
.rb-tile input{position:absolute;top:8px;left:8px}.rb-tile img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:5px}
.rb-tile strong{font-weight:500;overflow-wrap:anywhere}.rb-tile .text{justify-self:start;padding:0 4px;color:var(--green);text-decoration:underline}
.rb-download fieldset{border:0;padding:0;margin:0 0 6px}.rb-download legend{font-weight:600;font-size:13px;margin-bottom:4px}
.rb-download label{margin:8px 0}.rb-radio{display:flex!important;align-items:center;gap:10px;min-height:44px;color:var(--ink)!important;font-size:14px!important}.rb-radio small{display:block}
.rb-copy{border-top:1px solid var(--line);padding-top:12px}.rb-copy h3{font-size:14px;margin:0}
.bl-section{margin-top:34px}.bl-section-head p{margin-top:-6px}.bl-count{color:var(--muted);font-family:'DM Sans',sans-serif;font-size:16px}
.bl-upload{margin:12px 0;cursor:pointer}.bl-upload:focus-within{outline:3px solid var(--coral);outline-offset:2px}
.bl-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}
.bl-tile{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;display:grid;gap:6px;font-size:13px}
.bl-tile img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:5px}.bl-tile strong{font-weight:500;overflow-wrap:anywhere}.bl-tile .secondary{padding:8px 12px}
.bl-logos{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.bl-logo{margin:0;border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px;display:grid;gap:6px;justify-items:center;min-width:150px}
.bl-logo img{max-width:160px;max-height:70px;object-fit:contain}.bl-logo figcaption{font-size:12px;color:var(--muted)}
.bl-add-logo{display:inline-flex;align-items:center;min-height:44px;cursor:pointer;margin:0;font-size:14px;color:var(--ink)}
.bl-add-logo:focus-within{outline:3px solid var(--coral);outline-offset:2px}
.bl-confirm{margin-top:14px;background:var(--cream);border-radius:8px;padding:14px 16px;max-width:640px}.bl-confirm .primary{margin:0}
@media(max-width:900px){.rb-layout{grid-template-columns:1fr}.rb-side{position:static}.studio-views{order:3;width:100%;margin:0}.top{flex-wrap:wrap}}
@media(max-width:600px){.studio-views{gap:0}.studio-views a{padding:0 6px;letter-spacing:.4px;font-size:10.5px}.rb-review-head .primary{width:100%}.rb-cards{grid-template-columns:1fr}.rb-look{display:none}.rb-steps-images{margin-left:0}.rb-grid,.bl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rb-head .rb-store{width:100%}}
.rb-retired{margin:12px 0 0;color:var(--muted);font-weight:600}.rb-limit{margin:12px 0 0;background:#fdf0eb;color:#8a3a26;border-radius:6px;padding:10px 12px;font-size:13px}.rb-batch{margin:0;min-width:200px}.rb-review-head .actions{align-items:flex-end}
