/* A focused canvas workspace with the brand's existing graffiti lettering. */
.graffiti-theme #design-shirt{padding-top:42px;max-width:1540px;margin-inline:auto}
.graffiti-theme #design-shirt>.section-heading{margin-bottom:24px}
.graffiti-theme #design-shirt>.face-examples-note{margin-bottom:12px}
.graffiti-theme #design-shirt>.design-approval-notice{padding:16px 22px;margin-bottom:24px}
.graffiti-theme #design-shirt>.design-approval-notice h3{font-size:20px}
.graffiti-theme #design-shirt>.design-approval-notice p{font-size:14px;line-height:1.7}
#shirt-designer{max-width:none}
#designer-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
#designer-form>.designer-studio-host,#designer-form>.studio-design-preferences,#designer-form>.studio-garment-options{grid-column:1/-1}
#designer-form>.designer-fieldset.studio-garment-options{grid-column:1/-1;border:1px solid #9caaa7;background:#f8f5ed;padding:24px;border-radius:12px;scroll-margin-top:135px}
#designer-form>.studio-face-details,#designer-form>.design-request{grid-column:auto;align-self:start}
#designer-form>.studio-face-details{padding:20px;border:1px solid #9caaa7;border-radius:12px;background:#f8f5ed}
#designer-form>.design-request{padding:22px;border:1px solid #9caaa7;border-radius:12px;background:#f8f5ed}
#designer-form>.design-send-panel{border:2px solid #b89229;border-radius:12px;background:#fff7de;padding:26px}
#designer-form>.builder-hint:empty{display:none}
#designer-form>[hidden],.art-studio [hidden]{display:none!important}
.studio-design-preferences{border:1px solid #9caaa7;border-radius:12px;padding:20px 24px;background:#f8f5ed}
.studio-design-preferences>summary,.studio-face-details>summary{font-family:var(--brush-font);font-size:19px;line-height:1.6;cursor:pointer;color:#153b45}
.studio-preference-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:22px}
.studio-preference-grid>.designer-fieldset{min-width:0;margin:0}
.studio-face-details .face-photo{margin-bottom:0}
.graffiti-theme .art-studio{border:1px solid #49636b;border-radius:15px;overflow:hidden;background:#0f1a23;box-shadow:0 18px 60px #0004;color:#eaf3f5}
.studio-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;padding:24px 26px;background:linear-gradient(120deg,#142632,#142029)}
.studio-step{font:700 12px/1.5 Arial,sans-serif;letter-spacing:2px;color:#73d6df}
.graffiti-theme .art-studio h3{font-family:var(--brush-font);font-size:clamp(24px,2.6vw,36px);line-height:1.4;margin:7px 0 0}
.studio-badge{font:700 11px/1.5 Arial,sans-serif;letter-spacing:1.2px;border:1px solid #53848e;padding:8px 12px;border-radius:20px;color:#cce9ef}
.studio-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:13px 18px;border-block:1px solid #344e59;background:#182934}
.studio-toolbar-spacer{flex:1}
.graffiti-theme .art-studio button,.graffiti-theme .art-studio input,.graffiti-theme .art-studio select{font-family:Arial,Helvetica,sans-serif!important;font-weight:600!important;font-size:14px;letter-spacing:0!important;line-height:1.5;transform:none;text-shadow:none!important;-webkit-text-stroke:0!important}
.graffiti-theme .art-studio button{min-height:42px;padding:9px 13px;background:#233c49;border:1px solid #537581;border-radius:7px;color:#f5fbff!important;-webkit-text-fill-color:currentColor;cursor:pointer;transition:background .15s,border-color .15s;overflow-wrap:anywhere}
.graffiti-theme .art-studio button:hover:not(:disabled){background:#315363;border-color:#8dcddc}
.graffiti-theme .art-studio button:disabled{opacity:.45;cursor:default}
.graffiti-theme .art-studio :is(button,input,select,canvas):focus-visible{outline:3px solid #efc858;outline-offset:3px}
.studio-workspace{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:0}
.studio-artboard-column{padding:24px;background:#c8d3d8;min-width:0;color:#253d47}
.studio-artboard{position:relative;width:100%;max-width:660px;aspect-ratio:1;margin:auto;background-color:#fff;background-image:linear-gradient(45deg,#e5e9ec 25%,transparent 25%),linear-gradient(-45deg,#e5e9ec 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e5e9ec 75%),linear-gradient(-45deg,transparent 75%,#e5e9ec 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0;box-shadow:0 3px 20px #1a303130}
.studio-artboard.drag-active{outline:5px solid #087d8e;outline-offset:4px}
.studio-artboard canvas{display:block;width:100%;height:100%;touch-action:none;cursor:move}
.studio-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:24px;text-align:center;background:#f9fbfce8;color:#18313e;pointer-events:none}
.studio-empty strong{font-family:var(--brush-font);font-size:clamp(23px,2.3vw,34px);font-weight:400;line-height:1.4}
.studio-empty p{font:16px/1.6 Arial,sans-serif;margin:14px 0 20px}
.graffiti-theme .studio-empty button{pointer-events:auto;background:#0d6575;border:1px solid #0d6575;padding:13px 22px;font-size:16px;box-shadow:3px 3px 0 #c7b040}
.studio-empty small{font:12px/1.6 Arial,sans-serif;margin-top:20px;color:#4e6570}
.studio-canvas-help{font:13px/1.6 Arial,sans-serif!important;max-width:660px;margin:14px auto}
.studio-canvas-options{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap;max-width:660px;margin:auto}
.studio-canvas-options label{font:700 12px/1.6 Arial,sans-serif;display:flex;flex-direction:column;gap:5px}
.graffiti-theme .studio-canvas-options select{color:#182f3a;background:#fff;border:1px solid #6c858d;border-radius:6px;padding:9px 30px 9px 12px;min-height:42px}
.studio-inspector{min-width:0;padding:23px 19px;background:#12232e;border-left:1px solid #344e59}
.graffiti-theme .studio-inspector h4{margin:0 0 10px;font-family:var(--brush-font);font-size:22px;color:#fff3cb}
.studio-inspector h4 span{font:600 12px/1.5 Arial,sans-serif;margin-left:10px;color:#a4bdc8}
.studio-small{font:13px/1.6 Arial,sans-serif!important;color:#b7cdd5;margin:10px 0}
.studio-layers{display:grid;gap:6px;max-height:210px;overflow-y:auto;padding:3px;margin:14px -3px}
.graffiti-theme .studio-layers button{width:100%;text-align:left;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.graffiti-theme .studio-layers button[aria-pressed="true"]{background:#ffe15d;color:#10212d!important;border-color:#ffe15d}
.studio-selected{font:700 12px/1.5 Arial,sans-serif;text-transform:uppercase;letter-spacing:1px!important;color:#89d7e5;border-top:1px solid #365361;padding-top:17px;margin:16px 0 10px;overflow-wrap:anywhere}
.studio-layer-controls label{display:block;font:600 13px/1.6 Arial,sans-serif!important;margin:12px 0;color:#e9f3f8}
.graffiti-theme .studio-layer-controls input:not([type=range]),.graffiti-theme .studio-layer-controls select{display:block;width:100%;min-width:0;min-height:40px;margin-top:6px;padding:8px;background:#fff;border:1px solid #81969e;border-radius:6px;color:#12212c;-webkit-text-fill-color:currentColor}
.studio-layer-controls input[type=range]{width:100%;padding:0;accent-color:#ffe15d;margin-top:8px;min-height:25px}
.studio-layer-controls output{float:right;color:#8fd4df}
.studio-color-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.graffiti-theme .studio-color-options input[type=color]{padding:3px;height:40px}
.studio-layer-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:16px}
.graffiti-theme .studio-layer-actions button{font-size:12px;padding:8px}
.studio-layer-actions [data-studio-delete]{grid-column:1/-1}
.studio-status{font:13px/1.6 Arial,sans-serif!important;color:#ffe7a0;min-height:20px;margin:18px 0 12px}
.graffiti-theme .art-studio .studio-use-design{width:100%;font-size:15px;background:#ffe15d;border-color:#ffe15d;color:#10212d!important;padding:12px}
.graffiti-theme .art-studio .studio-use-design:hover:not(:disabled){background:#ffed9d;border-color:#ffed9d}
.studio-submit-note{border-left:3px solid #e9c759;padding-left:15px}
@media(max-width:1000px){.studio-workspace{grid-template-columns:minmax(0,1fr) 250px}.studio-artboard-column{padding:18px}.studio-inspector{padding:18px 14px}.studio-badge{display:none}}
@media(max-width:760px){#designer-form{grid-template-columns:1fr}#designer-form>.studio-face-details,#designer-form>.design-request{grid-column:1/-1}.studio-workspace{grid-template-columns:1fr}.studio-inspector{border-left:0;border-top:1px solid #344e59}.studio-layer-controls{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.studio-layer-controls>[data-text-controls],.studio-selected{grid-column:1/-1}.studio-layer-actions{grid-column:1/-1;grid-template-columns:repeat(2,1fr)}.studio-layers{max-height:145px}.studio-preference-grid{grid-template-columns:1fr}.studio-heading{padding:20px}.studio-toolbar{padding:12px;gap:6px}.studio-toolbar-spacer{display:none}}
@media(max-width:430px){.graffiti-theme #design-shirt{padding-inline:4%}.studio-artboard-column{padding:12px}.graffiti-theme .studio-toolbar button{font-size:12px;padding:8px 10px}.studio-empty{padding:16px}.studio-empty strong{font-size:23px}.studio-empty p{font-size:14px;margin:10px 0 14px}.studio-empty small{font-size:11px;margin-top:12px}.studio-design-preferences,#designer-form>.studio-garment-options,#designer-form>.design-send-panel{padding:18px}.studio-canvas-options{gap:10px}.studio-canvas-help{font-size:12px!important}}
@media(forced-colors:active){.studio-artboard{background:Canvas;outline:1px solid CanvasText}.graffiti-theme .art-studio button{border:1px solid ButtonText;color:ButtonText!important}.studio-layers button[aria-pressed="true"]{outline:3px solid Highlight}}

/* Keep the expanded shirt palette compact in product details. */
.product-color-select{width:100%;min-height:48px;padding:12px;border:1px solid #8d998f;background:#fffdf7;color:#142b34;font:16px/1.5 var(--brush-font,Arial,sans-serif);border-radius:6px}
.product-color-select:focus-visible{outline:3px solid #b97817;outline-offset:3px}

/* Give the canvas room to work while keeping the overall design flow compact. */
.graffiti-theme #design-shirt>.section-heading{align-items:center;gap:24px}
.graffiti-theme #design-shirt>.design-approval-notice{border-left:4px solid #b5922f;border-radius:6px;padding:16px 20px;box-shadow:none}
.graffiti-theme #design-shirt>.design-approval-notice h3{font-size:18px;line-height:1.5;margin-bottom:6px}
.graffiti-theme #design-shirt>.design-approval-notice p,.graffiti-theme #design-shirt>.design-approval-notice strong{font-family:Arial,Helvetica,sans-serif!important;letter-spacing:0;line-height:1.7;font-size:15px;text-shadow:none;-webkit-text-stroke:0}
.graffiti-theme #designer-form{gap:22px}
.graffiti-theme .art-studio{border-radius:8px;box-shadow:0 8px 24px #0002}
.studio-heading{padding:20px 24px}
.studio-artboard{max-width:540px}
.studio-canvas-help,.studio-canvas-options{max-width:540px}
.studio-artboard-column{padding:20px}
.studio-workspace{grid-template-columns:minmax(0,1fr) 290px}
.graffiti-theme .studio-step,.graffiti-theme .studio-badge{font-family:Arial,Helvetica,sans-serif!important}
.graffiti-theme .studio-toolbar button{min-height:46px}
.graffiti-theme .studio-inspector .studio-use-design{margin-top:10px;min-height:48px}
.studio-toolbar [data-studio-upload],.studio-toolbar [data-studio-text]{border-color:#78b8c5}
.graffiti-theme .studio-design-preferences>summary,.graffiti-theme .studio-face-details>summary{font-family:Arial,Helvetica,sans-serif!important;font-size:17px;font-weight:700;line-height:1.6;color:#153b45;text-shadow:none;-webkit-text-stroke:0}
.studio-design-preferences>summary{padding-block:8px}
.studio-face-details>summary{padding-block:6px}
#designer-form>.designer-fieldset.studio-garment-options,#designer-form>.studio-face-details,#designer-form>.design-request,.studio-design-preferences{border-radius:8px}
#designer-form>.designer-fieldset.studio-garment-options{border-left:5px solid #287f8a;scroll-margin-top:235px}
#designer-form>.design-send-panel{border-radius:8px;box-shadow:none;scroll-margin-top:235px}
#designer-form>.studio-face-details,#designer-form>.design-request{padding:20px}
#designer-form>.design-request{align-self:stretch}
@media(max-width:1000px){.studio-workspace{grid-template-columns:minmax(0,1fr) 260px}.studio-heading{padding:18px 20px}}
@media(max-width:760px){
 .graffiti-theme #design-shirt>.section-heading{align-items:flex-start;gap:14px;flex-direction:column}
 .graffiti-theme #design-shirt>.section-heading>.collection-note{text-align:left;flex:none;max-width:100%;font-size:16px;line-height:1.6}
 .graffiti-theme #design-shirt>.section-heading>div{flex:none;width:100%}
 .studio-workspace{grid-template-columns:minmax(0,1fr)}
 .studio-artboard{max-width:440px}
 .studio-canvas-help,.studio-canvas-options{max-width:440px}
 .studio-artboard-column{padding:16px}
 .studio-inspector{padding:20px}
 #designer-form>.designer-fieldset.studio-garment-options,#designer-form>.design-send-panel{scroll-margin-top:285px}
}
@media(max-width:460px){
 .graffiti-theme #design-shirt{padding-inline:5%}
 .graffiti-theme #design-shirt>.design-approval-notice{padding:14px 16px}
 .studio-heading{padding:16px}
 .studio-toolbar{gap:7px;padding:12px}
 .graffiti-theme .studio-toolbar button{font-size:13px;flex:1 1 auto;padding:10px}
 .studio-artboard-column{padding:12px}
 .studio-inspector{padding:16px}
 .studio-layer-controls{gap:0 12px}
 .studio-design-preferences,#designer-form>.designer-fieldset.studio-garment-options,#designer-form>.design-send-panel{padding:18px}
 #designer-form>.studio-face-details,#designer-form>.design-request{padding:18px}
}
.studio-new-text{display:flex;gap:12px;align-items:end;padding:18px;background:#f8f2df;border-bottom:1px solid #c5c1b5}.studio-new-text label{flex:1;font-weight:700}.studio-new-text input{display:block;width:100%;box-sizing:border-box;margin-top:8px;padding:13px;border:2px solid #303c41;font:inherit;background:white;color:#10161b}.studio-new-text button{padding:14px;background:#10161b;color:#fff2c8;border:0;font-weight:800;min-height:48px;cursor:pointer}.studio-inspector [data-image-controls]{padding:12px;border:1px solid #b8c5cb;margin:12px 0}.studio-inspector [data-image-controls] summary{cursor:pointer;font-weight:800}@media(max-width:600px){.studio-new-text{align-items:stretch;flex-direction:column}}
.art-studio .studio-new-text label{color:#15262e}.art-studio .studio-new-text button{color:#fff2c8}
