.customer-studio{--studio-radius:12px}.customer-studio .shop-main{max-width:1420px}.studio-hero{padding:1rem 0 2rem;border-bottom:1px solid var(--shop-line)}.studio-hero h1{font-size:clamp(2.25rem,5vw,4rem);line-height:1.08;letter-spacing:-.05em;margin:.6rem 0 1rem;font-weight:680}.studio-hero>p:not(.eyebrow){color:var(--shop-muted);max-width:760px;font-size:1.05rem}.studio-badges,.studio-chips,.studio-tabs,.studio-session,.studio-section-heading,.studio-actions,.studio-dialog-top{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap}.studio-badges span{border:1px solid var(--shop-line);border-radius:50px;padding:.35rem .75rem;font-size:.76rem;color:var(--shop-gold)}.studio-session{justify-content:space-between;background:var(--shop-card);border:1px solid var(--shop-line);border-radius:10px;padding:.9rem 1rem;margin:1.25rem 0;font-size:.85rem}.studio-session p{margin:.25rem 0;overflow-wrap:anywhere}.studio-session>div{min-width:0}.studio-steps{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:1.5rem 0 2rem;gap:.6rem}.studio-steps li{border-top:2px solid var(--shop-gold);padding:.7rem 0;color:var(--shop-muted);font-size:.85rem}.studio-section{padding:1rem 0 2.5rem;scroll-margin-top:95px}.studio-section h2{font-size:1.55rem;letter-spacing:-.02em}.studio-section-heading{justify-content:space-between;margin-bottom:1rem}.studio-section-heading h2{margin:0}.studio-muted,.studio-empty{color:var(--shop-muted)}.studio-create-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem}.studio-tabs{margin:0 0 1.2rem;align-items:stretch}.studio-tabs button{font-size:.85rem}.studio-tabs button[aria-pressed=true]{border-color:var(--shop-gold)}.studio-guidelines{margin-top:1.25rem;border-top:1px solid var(--shop-line);padding-top:1rem;font-size:.8rem;color:var(--shop-muted)}.studio-guidelines summary{font-size:.9rem;color:var(--shop-text);cursor:pointer}.studio-artwork{min-height:220px;display:grid;place-items:center}.studio-artwork img{width:100%;max-height:430px;object-fit:contain;display:block;border-radius:8px;background-color:#eee;background-image:linear-gradient(45deg,#d7d7d7 25%,transparent 25%),linear-gradient(-45deg,#d7d7d7 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d7d7d7 75%),linear-gradient(-45deg,transparent 75%,#d7d7d7 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0}.studio-artwork-panel .actions{margin-top:1rem}.studio-notice{background:#bca6500d;border:1px solid #8a784566;border-left:3px solid var(--shop-gold);border-radius:7px;padding:1rem;margin:.75rem 0;font-size:.88rem}.studio-error{color:#ffb8a4!important}.studio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}.studio-card{border:1px solid var(--shop-line);background:var(--shop-card);border-radius:var(--studio-radius);overflow:hidden;display:flex;flex-direction:column;min-width:0}.studio-card-photo{width:100%;aspect-ratio:1;object-fit:contain;background:#f1efe8}.studio-card-body{display:flex;flex-direction:column;gap:.65rem;padding:1rem;flex:1}.studio-card h3,.studio-card p{margin:0}.studio-card h3{font-size:1rem;font-weight:650;line-height:1.4}.studio-card .studio-actions{margin-top:auto;padding-top:.4rem}.studio-card .studio-actions button,.studio-card .studio-actions a{font-size:.82rem}.studio-card-meta{font-size:.78rem;color:var(--shop-muted);overflow-wrap:anywhere}.studio-card .studio-price{font-size:1.1rem;color:var(--shop-gold);font-weight:650}.studio-chips{margin-bottom:1.2rem}.studio-chips button{font-size:.83rem;border-radius:99px;min-height:38px;padding:.4rem .85rem}.studio-chips button[aria-pressed=true]{border-color:var(--shop-gold)}.studio-empty{border:1px dashed var(--shop-line);padding:1.5rem;border-radius:8px;grid-column:1/-1;font-size:.9rem}.studio-dialog{color:var(--shop-text);background:var(--shop-bg);border:1px solid var(--shop-line);border-radius:14px;width:min(960px,calc(100% - 2rem));max-height:90dvh;padding:1.5rem;overflow-y:auto}.studio-dialog::backdrop{background:#000b;backdrop-filter:blur(3px)}.studio-dialog-top{justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;gap:1rem}.studio-dialog-top h2{font-size:1.4rem;margin:.4rem 0}.studio-dialog .shop-panel{padding:1rem}.studio-dialog .shop-panel h3{margin-top:0}.studio-dialog form,.studio-form{display:grid;gap:1rem}.studio-dialog label,.studio-form label{display:grid;gap:.4rem;font-size:.85rem}.studio-dialog input,.studio-dialog textarea,.studio-dialog select,.studio-form input,.studio-form select,.studio-form textarea{background:var(--shop-card);color:var(--shop-text);border:1px solid var(--shop-line);border-radius:6px;min-height:44px;width:100%;padding:.6rem}.studio-dialog input[type=checkbox],.studio-form input[type=checkbox]{min-height:0;width:18px;height:18px;accent-color:var(--shop-gold)}.studio-dialog label.check,.studio-form label.check{display:flex;align-items:flex-start;gap:.6rem}.studio-dialog label.check input{flex:0 0 auto;margin-top:.25rem}.studio-two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.studio-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.studio-preview{width:100%;aspect-ratio:1;object-fit:contain;background:#f1efe8;border-radius:10px}.studio-placement{position:relative;overflow:hidden;background:#eee;border:2px dashed #7d816f;aspect-ratio:1;min-height:180px;border-radius:8px}.studio-placement img{position:absolute;object-fit:contain;max-width:100%;max-height:100%;transform:translate(-50%,-50%);pointer-events:none}.studio-thumbnails{display:flex;gap:.5rem;overflow-x:auto;padding:.5rem 0}.studio-thumbnails button{background:var(--shop-card);padding:.2rem;width:75px;height:75px;flex:0 0 auto}.studio-thumbnails img{width:100%;height:100%;object-fit:contain}.studio-variant-list{display:grid;gap:.5rem;max-height:260px;overflow-y:auto;border:1px solid var(--shop-line);border-radius:8px;padding:.8rem}.studio-variant-list label{display:flex;gap:.6rem;align-items:center}.studio-variant-list input{flex:0 0 auto}.studio-progress{width:100%;accent-color:var(--shop-gold)}.studio-cart-row,.studio-order{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--shop-line);border-radius:10px;padding:1rem;margin:.65rem 0;background:var(--shop-card)}.studio-cart-row img{width:70px;height:70px;object-fit:contain;border-radius:6px;background:#eee}.studio-cart-row .studio-cart-details{flex:1}.studio-cart-row p,.studio-order p{margin:.2rem 0}.studio-order{display:block}.studio-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.5rem 1rem;margin:1rem 0}.studio-summary dt{color:var(--shop-muted)}.studio-summary dd{margin:0;text-align:right;overflow-wrap:anywhere}.studio-summary .studio-total{font-weight:700;font-size:1.1rem;color:var(--shop-text);border-top:1px solid var(--shop-line);padding-top:.6rem}.studio-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1.5rem}.studio-metric{border:1px solid var(--shop-line);background:var(--shop-card);border-radius:10px;padding:1rem}.studio-metric strong{display:block;font-size:1.8rem;font-weight:650}.studio-metric span{font-size:.8rem;color:var(--shop-muted)}.studio-admin-table-wrap{overflow-x:auto}.studio-admin-table{border-collapse:collapse;width:100%;font-size:.86rem;white-space:nowrap}.studio-admin-table th,.studio-admin-table td{text-align:left;border-bottom:1px solid var(--shop-line);padding:.8rem}.studio-admin-table th{color:var(--shop-muted);font-weight:500}.studio-admin-table td.studio-wrap{white-space:normal;min-width:180px}.studio-admin-settings{max-width:760px}.studio-admin-settings fieldset{border:1px solid var(--shop-line);border-radius:10px;padding:1.2rem;margin:0 0 1rem}.studio-admin-settings legend{padding:0 .5rem;color:var(--shop-gold)}.studio-admin-settings .hint{color:var(--shop-muted);font-size:.8rem}.studio-inline-status{color:var(--shop-gold);font-size:.8rem}.studio-danger{border-color:#b16753!important;color:#ffb8a4!important;background:transparent!important}.studio-swatch{width:16px;height:16px;border:1px solid #aaa;display:inline-block;border-radius:50%;vertical-align:middle;margin-right:5px}.studio-disclaimer{font-size:.85rem;border:1px solid var(--shop-line);border-radius:8px;padding:1rem}.studio-disclaimer h3{font-size:.8rem;letter-spacing:.06em}.studio-working::before{content:"";display:inline-block;width:7px;height:7px;background:var(--shop-gold);border-radius:50%;margin-right:.5rem;animation:studio-pulse 1.4s ease-in-out infinite}@keyframes studio-pulse{50%{opacity:.3}}@media(max-width:1000px){.studio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.studio-create-grid,.studio-two-column{grid-template-columns:1fr}.studio-hero{padding-top:0}.studio-hero h1{font-size:2.45rem}.studio-hero>p:not(.eyebrow){font-size:.94rem}.studio-badges{gap:.35rem}.studio-badges span{font-size:.68rem;padding:.3rem .5rem}.studio-steps{gap:.35rem}.studio-steps li{font-size:.72rem}.studio-section-heading{align-items:flex-start}.studio-section-heading h2{font-size:1.3rem}.studio-grid{gap:.7rem}.studio-card-body{padding:.8rem}.studio-card .studio-actions{display:grid}.studio-card h3{font-size:.87rem}.studio-card .studio-actions button,.studio-card .studio-actions a{padding:.55rem;font-size:.75rem;width:100%}.studio-dialog{padding:1rem;width:calc(100% - 1rem);max-height:94dvh}.studio-form-row{grid-template-columns:1fr}.studio-tabs{gap:.45rem}.studio-tabs button{font-size:.75rem;padding:.6rem}.studio-cart-row{flex-wrap:wrap}.studio-cart-row img{width:52px;height:52px}.studio-section{scroll-margin-top:80px}.studio-session{align-items:flex-start}.studio-card-meta{font-size:.72rem}.studio-admin-table{font-size:.78rem}}@media(prefers-reduced-motion:reduce){.studio-working::before{animation:none}}
.studio-upload-divider{border-top:1px solid var(--shop-line);margin-top:1.6rem;padding-top:1rem}.studio-upload-divider h3{margin:0 0 .4rem}.studio-contact-options{display:grid;gap:.65rem}.studio-entry-actions{display:grid;gap:.8rem;max-width:460px;margin:1.2rem auto}.studio-entry-actions button{width:100%}.studio-profile-fields{display:grid;gap:.85rem;margin:1.3rem 0}.studio-profile-fields fieldset{border:1px solid var(--shop-line);border-radius:9px;padding:1rem;display:grid;gap:.75rem}.studio-profile-fields legend{padding:0 .4rem;color:var(--shop-gold)}

.studio-create-grid>*,.studio-two-column>*,.studio-form-row>*,.studio-dialog form,.studio-profile-fields fieldset{min-width:0}.studio-dialog input,.studio-dialog select,.studio-dialog textarea,.studio-form input,.studio-form select,.studio-form textarea{min-width:0}

/* The shared cart-link rule uses gold text. This filled account button needs
   its own contrasting foreground, including before account JavaScript loads. */
.customer-studio>.shop-toolbar{height:auto;min-height:76px;flex-wrap:wrap}
.studio-artwork-panel{scroll-margin-top:95px}.studio-artwork-panel:focus-visible{outline:3px solid var(--shop-gold);outline-offset:4px}.studio-category-options{border:1px solid var(--shop-line);border-radius:10px;padding:1rem;margin:1rem 0}.studio-category-options legend{padding:0 .4rem}.studio-category-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:.75rem}.studio-category-choices .check{display:flex;align-items:center;gap:.6rem;min-height:48px;background:var(--shop-card);border:1px solid var(--shop-line);border-radius:7px;padding:.75rem;cursor:pointer}.studio-category-choices input{width:20px;height:20px;accent-color:var(--shop-gold);flex:0 0 auto}.studio-batch-progress{border:1px solid var(--shop-line);border-radius:10px;background:var(--shop-card);padding:1rem;margin:0 0 1rem}.studio-batch-progress h3,.studio-batch-progress p{margin:.25rem 0}.studio-batch-progress h3{font-size:1rem}
.customer-studio .shop-toolbar #studio-account-open{background:var(--shop-gold);color:#000;display:block;min-width:0;max-width:min(22rem,42vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto}
@media(max-width:680px){
  .customer-studio>.shop-toolbar{min-height:65px;gap:.35rem .65rem}
  .customer-studio>.shop-toolbar>.shop-logo{flex:1 1 0;min-width:0;white-space:normal}
  .customer-studio>.shop-toolbar>.toolbar-links{order:3;flex:1 0 100%;width:100%;min-width:0;margin:0;padding:.1rem 0}
  .customer-studio>.shop-toolbar>.toolbar-links a{flex:0 0 auto}
  .customer-studio .shop-toolbar #studio-account-open{max-width:55%;font-size:.8rem}
  .customer-studio .studio-section,.customer-studio .studio-artwork-panel{scroll-margin-top:125px}
}

.studio-ai-panel>summary{cursor:pointer;font-size:1.25rem;font-weight:650;min-height:44px;padding:.4rem 0;color:var(--shop-text)}
.studio-ai-panel>summary::marker{color:var(--shop-gold)}
.studio-ai-panel>summary:focus-visible{outline:3px solid var(--shop-gold);outline-offset:4px;border-radius:4px}
.studio-ai-panel[open]>summary{margin-bottom:1rem}


.studio-product-details{margin:.15rem 0;font-size:.82rem}.studio-product-details>summary{cursor:pointer;font-weight:600;min-height:32px}.studio-product-details>summary:focus-visible{outline:2px solid var(--shop-gold);outline-offset:3px}.studio-product-details[open]>summary{margin-bottom:.6rem}.studio-product-details[open]>p,.studio-product-details[open]>div{margin:.4rem 0}

/* Account setup and sign-in within the private studio. */
.studio-dialog{color-scheme:dark}
.studio-dialog .actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px;margin:16px 0}
.studio-dialog .actions>button{flex:1 1 180px;min-width:0;white-space:normal;overflow-wrap:anywhere;min-height:48px}
.studio-dialog-top>button{min-height:48px;flex:0 0 auto}
.studio-dialog form>button{min-height:48px;margin-top:8px;white-space:normal}
.studio-dialog fieldset{min-width:0}
@media(max-width:480px){.studio-dialog .actions{flex-direction:column}.studio-dialog .actions>button{flex:auto;width:100%}}
