/* i2Style button studio: isolated, responsive editor layout. */
.button-studio{--studio-accent:var(--accent,#460bd8);--studio-soft:var(--accent-soft,#f0ebff);--studio-surface:var(--surface,#fff);--studio-alt:var(--surface-alt,#f8f9fc);--studio-text:var(--text,#20202b);--studio-muted:var(--muted,#777786);--studio-line:var(--line,#e9e7ee);border:1px solid var(--studio-line);border-radius:24px;background:var(--studio-surface);color:var(--studio-text);box-shadow:0 14px 60px #29144a08;overflow:hidden;scroll-margin-top:100px;text-align:start}
.button-studio *{box-sizing:border-box}
.button-studio [hidden]{display:none!important}
.button-studio button,.button-studio input,.button-studio select{font:inherit;letter-spacing:inherit}
.button-studio button{cursor:pointer}
.button-studio svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.button-studio button:focus-visible,.button-studio input:focus-visible,.button-studio select:focus-visible,.button-studio [tabindex]:focus-visible{outline:3px solid #9972ff;outline-offset:3px}
.studio-toolbar{padding:20px 25px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--studio-line)}
.studio-title{display:flex;align-items:center;gap:11px;min-width:0}
.studio-title h2{font-size:17px;font-weight:650;letter-spacing:-.4px;margin:0}
.studio-live-dot,.studio-code-dot{width:7px;height:7px;background:#29ad7d;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 4px #29ad7d12}
.studio-save-status{font-size:11px;color:var(--studio-muted);margin-inline-start:10px}
.studio-reset{display:flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--studio-muted);font-size:12px!important;padding:7px 9px;border-radius:7px}
.studio-reset:hover{background:var(--studio-alt);color:var(--studio-text)}
.studio-reset svg{width:15px;height:15px}
.studio-workspace{display:grid;grid-template-columns:76px 298px minmax(0,1fr);height:698px}
.studio-rail{padding:18px 8px;background:var(--studio-alt);border-inline-end:1px solid var(--studio-line);display:flex;flex-direction:column;gap:9px}
.studio-rail-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:100%;min-height:66px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--studio-muted);font-size:10px!important;font-weight:550!important;transition:background .16s,color .16s}
.studio-rail-tab{padding-inline:3px}
.studio-rail-tab span{max-width:100%;overflow-wrap:anywhere;hyphens:auto;line-height:1.35}
.studio-rail-tab svg{width:21px;height:21px}
.studio-rail-tab:hover{background:var(--studio-surface);color:var(--studio-accent)}
.studio-rail-tab[aria-selected=true]{background:var(--studio-surface);border-color:var(--studio-line);color:var(--studio-accent);box-shadow:0 2px 5px #35126605}
.studio-settings{min-height:0;border-inline-end:1px solid var(--studio-line);display:flex;flex-direction:column}
.studio-edit-state{min-height:73px;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--studio-line);font-size:10px;color:var(--studio-muted)}
.studio-segment{display:inline-flex;padding:3px;background:var(--studio-alt);border:1px solid var(--studio-line);border-radius:8px;gap:2px}
.studio-segment button{border:0;background:transparent;color:var(--studio-muted);padding:6px 10px;border-radius:5px;font-size:11px;font-weight:550}
.studio-segment button[aria-pressed=true]{background:var(--studio-surface);color:var(--studio-accent);box-shadow:0 1px 4px #1f113015}
.studio-panels{min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--studio-line) transparent;overscroll-behavior:contain}
.studio-panel{padding:23px 22px 28px;outline-offset:-4px!important}
.studio-panel-heading{margin-bottom:22px}
.studio-panel-heading h3{font-size:16px;margin:0 0 5px;letter-spacing:-.45px;font-weight:650}
.studio-panel-heading p{font-size:11px;line-height:1.6;color:var(--studio-muted);margin:0}
.studio-panel h4{font-size:12px;margin:0 0 18px;font-weight:650}
.studio-presets{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:24px}
.studio-preset{position:relative;min-height:64px;padding:8px 5px 7px;border:1px solid var(--studio-line);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;background:var(--studio-surface);transition:border-color .15s,background .15s}
.studio-preset:hover{border-color:#bba5f8;background:var(--studio-alt)}
.studio-preset[aria-pressed=true]{border-color:var(--studio-accent);box-shadow:0 0 0 1px var(--studio-accent)}
.studio-preset-sample{display:inline-block;max-width:95%;padding:6px 11px;font-size:10px;font-weight:600;line-height:1.2;white-space:nowrap;pointer-events:none}
.studio-preset-name{font-size:9px;color:var(--studio-muted);line-height:1}
.studio-field{margin-bottom:18px;min-width:0}
.studio-field label,.studio-color-field>label{display:block;font-size:11px;font-weight:550;margin-bottom:8px;color:var(--studio-text)}
.studio-field input,.studio-field select{width:100%;min-width:0;border:1px solid var(--studio-line);border-radius:8px;padding:10px 11px;min-height:39px;background:var(--studio-surface);color:var(--studio-text);font-size:12px;outline-offset:2px}
.studio-field select{padding-inline-end:24px}
.studio-field input:hover,.studio-field select:hover{border-color:#bfb6d0}
.studio-field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.studio-range-field{margin-bottom:20px}
.studio-field-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}
.studio-field-head label{font-size:11px;font-weight:500;line-height:1.4}
.studio-number-wrap{display:flex;align-items:center;justify-content:flex-end;gap:2px;min-width:60px;border:1px solid var(--studio-line);border-radius:6px;background:var(--studio-surface);padding:4px 7px;color:var(--studio-muted);font-size:10px}
.studio-number{width:42px;border:0;background:transparent;color:var(--studio-text);font-size:11px!important;text-align:end;padding:0;appearance:textfield;-moz-appearance:textfield}
.studio-number::-webkit-inner-spin-button,.studio-number::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.button-studio input[type=range]{display:block;appearance:none;-webkit-appearance:none;width:100%;height:4px;margin:8px 0 9px;border:0;border-radius:10px;background:linear-gradient(to right,var(--studio-accent) 0%,var(--studio-accent) var(--range-progress,40%),var(--studio-line) var(--range-progress,40%),var(--studio-line) 100%);cursor:pointer;accent-color:var(--studio-accent)}
.button-studio input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:13px;height:13px;border:2px solid var(--studio-accent);border-radius:50%;background:var(--studio-surface);box-shadow:0 1px 4px #0001}
.button-studio input[type=range]::-moz-range-thumb{width:10px;height:10px;border:2px solid var(--studio-accent);border-radius:50%;background:var(--studio-surface)}
.studio-color-field{margin-bottom:18px}
.studio-color-input{display:flex;align-items:center;border:1px solid var(--studio-line);border-radius:8px;background:var(--studio-surface);min-height:40px;overflow:hidden;padding:5px;gap:9px}
.studio-color-input input[type=color]{width:29px;height:29px;border:0;padding:0;background:transparent;border-radius:5px;cursor:pointer;flex-shrink:0}
.studio-color-input input[type=color]::-webkit-color-swatch-wrapper{padding:0}
.studio-color-input input[type=color]::-webkit-color-swatch{border:1px solid #0001;border-radius:5px}
.studio-color-input input[type=color]::-moz-color-swatch{border:1px solid #0001;border-radius:5px}
.studio-color-input input[type=text]{min-width:0;width:100%;border:0;background:transparent;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;color:var(--studio-text);text-transform:uppercase;letter-spacing:.4px;padding:3px}
.studio-color-input:focus-within{outline:2px solid #9972ff;outline-offset:2px}
.studio-color-input input:focus-visible{outline:0}
.studio-color-input input[aria-invalid=true]{color:#d34450}
.studio-divider{height:1px;background:var(--studio-line);margin:24px 0}
.studio-toggle{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:12px;font-weight:550;margin:0 0 22px;cursor:pointer}
.studio-toggle input{position:absolute;inset-inline-end:0;opacity:0;width:34px;height:20px;margin:0}
.studio-switch{width:32px;height:19px;border-radius:15px;background:#c8c3d2;position:relative;transition:background .15s;flex-shrink:0}
.studio-switch:after{content:"";position:absolute;left:3px;top:3px;width:13px;height:13px;border-radius:50%;background:white;transition:transform .15s;box-shadow:0 1px 2px #0002}
.studio-toggle input:checked+.studio-switch{background:var(--studio-accent)}
.studio-toggle input:checked+.studio-switch:after{transform:translateX(13px)}
.studio-toggle input:focus-visible+.studio-switch{outline:3px solid #9972ff;outline-offset:3px}
.studio-help{font-size:11px;line-height:1.7;color:var(--studio-muted);margin:0}
.studio-tip{display:flex;gap:9px;color:var(--studio-muted);background:var(--studio-alt);padding:13px 11px;border-radius:9px;margin-top:22px}
.studio-tip svg{color:var(--studio-accent);width:15px;height:15px;margin-top:2px}
.studio-tip p{font-size:10px;line-height:1.7;margin:0}
.studio-output{min-width:0;min-height:0;display:flex;flex-direction:column}
.studio-preview-header{display:flex;justify-content:space-between;align-items:center;padding:23px 28px 14px;gap:15px}
.studio-overline{font-size:9px;font-weight:650;letter-spacing:1.6px;color:var(--studio-muted);display:block;margin-bottom:5px}
.studio-preview-header h3{font-size:21px;letter-spacing:-.7px;font-weight:550;line-height:1.2;margin:0}
.studio-canvas-options{display:flex;gap:4px;border:1px solid var(--studio-line);border-radius:9px;padding:3px;background:var(--studio-surface)}
.studio-canvas-options button{display:grid;place-items:center;width:30px;height:29px;border:0;border-radius:6px;background:transparent;color:var(--studio-muted)}
.studio-canvas-options button[aria-pressed=true]{background:var(--studio-alt);color:var(--studio-text)}
.studio-canvas-options svg{width:16px;height:16px}
.studio-canvas{position:relative;min-height:210px;flex:0 0 225px;margin:0 22px;border-radius:12px;background-color:#faf9fd;background-image:radial-gradient(#dad6e7 1px,transparent 1px);background-size:16px 16px;overflow:auto;color:#292233;transition:background-color .2s}
.studio-canvas.is-dark{background-color:#211d2b;background-image:radial-gradient(#42394f 1px,transparent 1px);color:#c5bfd0}
.studio-preview-position{display:flex;align-items:center;justify-content:center;min-width:100%;min-height:100%;width:max-content;padding:35px}
.button-studio .studio-preview-button{display:inline-block;max-width:100%;box-sizing:border-box;overflow-wrap:anywhere;cursor:pointer;transition:background .18s,box-shadow .18s,transform .18s;flex-shrink:0;appearance:none;-webkit-appearance:none}
.studio-dimensions{position:absolute;bottom:12px;left:0;right:0;display:block;text-align:center;color:#9991a6;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px;pointer-events:none}
.studio-preview-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 28px 20px;font-size:10px;color:var(--studio-muted)}
.studio-preview-states{display:flex;gap:3px}
.studio-preview-states button{border:0;border-radius:5px;background:transparent;color:var(--studio-muted);padding:5px 8px;font-size:10px}
.studio-preview-states button[aria-pressed=true]{background:var(--studio-soft);color:var(--studio-accent)}
.studio-code-section{border-top:1px solid var(--studio-line);background:var(--studio-alt);min-height:0;flex:1;display:flex;flex-direction:column}
.studio-code-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 22px;min-height:49px;border-bottom:1px solid var(--studio-line)}
.studio-code-tabs{display:flex;align-self:stretch;gap:22px}
.studio-code-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--studio-muted);font-size:11px;font-weight:600;padding:0 2px}
.studio-code-tabs button[aria-selected=true]{color:var(--studio-accent);border-bottom-color:var(--studio-accent)}
.studio-code-actions{display:flex;gap:10px}
.studio-code-actions button{border:0;border-radius:6px;background:transparent;color:var(--studio-muted);display:flex;align-items:center;gap:6px;font-size:10px;padding:7px}
.studio-code-actions button:hover{background:var(--studio-surface);color:var(--studio-text)}
.studio-code-actions svg{width:13px;height:13px}
.studio-class-field{padding:12px 25px 0;display:flex;align-items:center;gap:5px;color:var(--studio-accent);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}
.studio-class-field label{color:var(--studio-muted);font:10px system-ui,sans-serif;margin-inline-end:6px}
.studio-class-field input{font-family:inherit;font-size:11px;width:150px;max-width:50%;border:0;border-bottom:1px solid transparent;color:var(--studio-accent);padding:3px 1px;background:transparent}
.studio-class-field input:hover{border-bottom-color:var(--studio-line)}
.studio-code{margin:0;padding:12px 25px 17px;overflow:auto;color:var(--studio-text);font-family:ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace;font-size:11px;line-height:1.75;tab-size:2;min-height:90px;flex:1;white-space:pre;scrollbar-width:thin;scrollbar-color:var(--studio-line) transparent;direction:ltr;text-align:left;outline-offset:-4px!important}
.studio-code code{font:inherit;background:transparent;color:inherit;padding:0}
.studio-code-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 25px;border-top:1px solid var(--studio-line);color:var(--studio-muted);font-size:9px;min-height:37px}
.studio-code-footer>span:first-child{display:flex;align-items:center;gap:7px}
.studio-code-dot{width:5px;height:5px;box-shadow:none}
#studio-copy-status{color:var(--studio-accent)}
.studio-noscript{padding:20px;border-top:1px solid var(--studio-line);font-size:14px}
.studio-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(min-width:1400px){.studio-workspace{grid-template-columns:80px 318px minmax(0,1fr)}.studio-panel{padding-inline:26px}.studio-edit-state{padding-inline:24px}.studio-presets{gap:11px}.studio-preset{min-height:64px}}
@media(max-width:1000px){.studio-workspace{grid-template-columns:65px 265px minmax(0,1fr)}.studio-panel{padding:20px 17px}.studio-edit-state{padding-inline:13px}.studio-save-status{display:none}.studio-preview-header{padding:22px 20px 15px}.studio-preview-footer{padding-inline:20px}.studio-code-toolbar{padding-inline:16px}.studio-code-actions{gap:2px}.studio-code-actions #studio-download span{display:none}.studio-code-tabs{gap:15px}.studio-canvas{margin-inline:16px}.studio-code-footer{padding-inline:18px}.studio-code,.studio-class-field{padding-inline:18px}}
@media(max-width:760px){.button-studio{border-radius:18px;scroll-margin-top:90px}.studio-toolbar{padding:17px 18px}.studio-title h2{font-size:16px}.studio-workspace{grid-template-columns:minmax(0,1fr);height:auto}.studio-rail{flex-direction:row;justify-content:space-around;overflow-x:auto;border-inline-end:0;border-bottom:1px solid var(--studio-line);padding:9px 12px;gap:8px}.studio-rail-tab{width:auto;flex:1;min-width:53px;min-height:58px;gap:5px;border-radius:9px}.studio-rail-tab svg{width:19px;height:19px}.studio-settings{border-inline-end:0;border-bottom:1px solid var(--studio-line)}.studio-edit-state{min-height:60px;padding:12px 22px;font-size:11px}.studio-panels{max-height:430px;min-height:290px}.studio-panel{padding:22px}.studio-panel-heading{margin-bottom:19px}.studio-panel-heading h3{font-size:17px}.studio-panel-heading p{font-size:12px}.studio-presets{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:22px}.studio-preset{min-height:71px}.studio-tip{margin-top:15px}.studio-field label,.studio-color-field>label,.studio-field-head label{font-size:12px}.studio-field input,.studio-field select{font-size:16px;min-height:42px}.studio-color-input input[type=text]{font-size:14px}.studio-preview-header{padding:24px 22px 16px}.studio-canvas{margin-inline:22px;min-height:235px;flex-basis:235px}.studio-preview-footer{padding:14px 22px 22px}.studio-code-section{min-height:310px}.studio-code{height:190px;flex-basis:190px;font-size:11px}.studio-code-toolbar{padding-inline:22px;min-height:52px}.studio-code-actions #studio-download span{display:inline}.studio-class-field,.studio-code,.studio-code-footer{padding-inline:22px}.studio-code-footer{font-size:9px}.studio-class-field input{font-size:14px}.studio-color-input{min-height:43px}.studio-code-actions button{font-size:10px}}
@media(max-width:430px){.studio-presets{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.studio-panels{max-height:480px}.studio-preset{min-height:69px}.studio-preview-footer{flex-direction:column;gap:11px;align-items:center}.studio-preview-states button{padding:6px 12px;font-size:11px}.studio-code-tabs{gap:15px}.studio-code-toolbar{padding-inline:16px;gap:4px}.studio-code-actions{gap:3px}.studio-code-actions button{padding:6px}.studio-code-actions #studio-download span{display:none}.studio-code-footer{padding-inline:16px;flex-wrap:wrap}.studio-canvas{margin-inline:16px}.studio-class-field,.studio-code{padding-inline:16px}.studio-panel{padding:22px 19px}}
@media(prefers-reduced-motion:reduce){.button-studio *{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:380px){.studio-rail{gap:3px;padding-inline:8px}.studio-rail-tab{min-width:45px}}

/* Expanded preset collection; keep filtering within the existing settings pane. */
.button-studio .studio-preset-filter{margin-bottom:10px}
.button-studio .studio-preset-count{margin:0 0 13px;color:var(--studio-muted);font-size:10px;line-height:1.5}
