.gds-wrap{--panel:#152238;--panel2:#1d2d47;--border:#344a68;--muted:#aebdd0;color:#fff}
.gds-header{padding:20px 22px;margin-bottom:14px;border:1px solid #213651;border-radius:12px;background:#0d1624}
.gds-header h1{margin:0 0 6px;color:#fff;font-size:28px}.gds-header h1 span{padding:4px 8px;border-radius:5px;background:#50a6ff;color:#07111f;font-size:12px;vertical-align:middle}.gds-header p{margin:0;color:var(--muted)}
.gds-grid{display:grid;grid-template-columns:390px minmax(0,1fr);gap:14px;align-items:start}.gds-side,.gds-main{display:flex;flex-direction:column;gap:14px}
.gds-card{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.gds-card h2{margin:0 0 13px;color:#fff;font-size:18px}
.gds-field{display:flex;flex-direction:column;gap:6px;margin-bottom:11px;color:#edf4fc;font-size:12px;font-weight:700}.gds-field input,.gds-field select,.gds-field textarea{width:100%;min-height:40px;padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:var(--panel2);color:#fff;font:inherit}.gds-field textarea{min-height:80px;resize:vertical}.gds-field input[type=color]{padding:4px}
.gds-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gds-check{display:flex;align-items:center;gap:8px;margin:9px 0;color:#edf4fc;font-size:13px}
.gds-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.gds-toolbar p{margin:0;color:var(--muted)}
.gds-canvas-wrap{min-height:620px;padding:16px;display:flex;align-items:center;justify-content:center;overflow:auto;border:1px solid var(--border);border-radius:10px;background:#e9edf3}.gds-canvas-wrap canvas{display:block;max-width:100%;height:auto;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.28)}
.gds-downloads{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.gds-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.gds-metrics div{padding:13px;border:1px solid var(--border);border-radius:9px;background:#101b2c}.gds-metrics strong,.gds-metrics span{display:block}.gds-metrics strong{font-size:21px}.gds-metrics span{color:var(--muted);font-size:12px}
.gds-help{margin:13px 0 0;color:var(--muted)}.gds-file-name{margin:5px 0 0;color:#8fd4aa;font-size:12px}
.gds-lines{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}.gds-line-row{padding:10px;border:1px solid var(--border);border-radius:9px;background:#101b2c}.gds-line-top{display:flex;gap:8px}.gds-line-top input{flex:1}.gds-line-actions{display:flex;gap:5px}.gds-line-grid{display:grid;grid-template-columns:1.35fr .65fr .65fr .65fr .8fr;gap:8px;margin-top:8px}.gds-line-grid .gds-field{margin:0}.gds-line-actions-row{display:flex;align-items:end;gap:6px;flex-wrap:wrap}.gds-logo-actions{display:flex;gap:8px;flex-wrap:wrap}.gds-canvas-wrap canvas{touch-action:none}.gds-canvas-hint{margin:0 0 8px;color:var(--muted);font-size:12px}
@media(max-width:740px){.gds-line-grid{grid-template-columns:1fr}}
@media(max-width:1100px){.gds-grid{grid-template-columns:1fr}.gds-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:740px){.gds-side,.gds-row,.gds-metrics{grid-template-columns:1fr}.gds-toolbar{align-items:flex-start;flex-direction:column}}

/* v6.2 compact production workspace */
.gds-grid{grid-template-columns:360px minmax(0,1fr);gap:16px}
.gds-side{gap:12px}
.gds-main{position:static;align-self:start;max-height:none}
.gds-main>.gds-card:first-child{display:flex;flex-direction:column;max-height:none}
.gds-canvas-wrap{min-height:420px;height:auto;max-height:720px;padding:12px;overflow:auto}
.gds-canvas-wrap canvas{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.gds-downloads{flex-shrink:0}
.gds-line-row{transition:border-color .15s,background .15s}
.gds-line-row:hover{border-color:#58759c}
.gds-line-actions button{width:38px;min-width:38px}
@media(max-width:1100px){
  .gds-main{position:static;max-height:none}
  .gds-main>.gds-card:first-child{max-height:none}
  .gds-canvas-wrap{height:auto;min-height:420px;max-height:none;overflow:auto}
}


.gds-image-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.gds-image-item{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--border);border-radius:8px;background:#101b2c;cursor:pointer}
.gds-image-item.active{border-color:#5d7cff;background:#162643}
.gds-image-thumb{width:42px;height:42px;object-fit:contain;border-radius:5px;background:#fff}
.gds-image-meta{min-width:0;flex:1}
.gds-image-meta strong,.gds-image-meta span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gds-image-meta span{font-size:11px;color:var(--muted)}
.gds-image-controls[hidden]{display:none}


/* v6.4.3 compact text editor */
.gds-text-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.gds-lines{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}
.gds-line-row{padding:10px;border:1px solid var(--border);border-radius:9px;background:#101b2c}
.gds-line-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.gds-line-top input{width:100%;min-width:0}
.gds-line-actions{display:flex;gap:5px}
.gds-line-actions button{width:34px;min-width:34px;height:38px;padding:0}
.gds-line-grid{display:grid;grid-template-columns:minmax(105px,1.25fr) 62px 72px 72px minmax(90px,.8fr);gap:7px;margin-top:8px;align-items:end}
.gds-line-grid .gds-field{margin:0;min-width:0}
.gds-line-grid .gds-field input,.gds-line-grid .gds-field select{min-width:0;padding:7px 8px}
.gds-line-single-action{display:flex;align-items:end}
.gds-line-single-action .button{width:100%;min-height:40px;padding:7px 8px;white-space:normal}
@media(max-width:1280px){
  .gds-line-grid{grid-template-columns:1fr 62px 72px 72px}
  .gds-line-grid .align-field{grid-column:1/3}
  .gds-line-single-action{grid-column:3/5}
}
@media(max-width:740px){
  .gds-line-top{grid-template-columns:1fr}
  .gds-line-actions{justify-content:flex-start}
  .gds-line-grid{grid-template-columns:1fr 1fr}
  .gds-line-grid .align-field,.gds-line-single-action{grid-column:auto}
}


.gds-subcard{margin-top:12px;padding:12px;border:1px solid var(--border);border-radius:9px;background:#101b2c}
.gds-subcard h3{margin:0 0 10px;color:#fff;font-size:15px}


.gds-base-preview-wrap{min-height:180px;padding:14px;display:flex;align-items:center;justify-content:center;overflow:auto;border:1px solid var(--border);border-radius:10px;background:#e9edf3}
.gds-base-preview-wrap canvas{display:block;max-width:100%;max-height:260px;width:auto;height:auto;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.22)}


/* v6.5.7 fixed desktop workspace */
.gds-wrap{padding-bottom:34px}
.gds-grid{
  align-items:start;
  min-height:calc(100vh - 190px);
}
.gds-side,.gds-main{min-width:0}
.gds-side{
  position:sticky;
  top:12px;
  max-height:calc(100vh - 24px);
  overflow-y:auto;
  overflow-x:hidden;
  padding-right:4px;
  scrollbar-gutter:stable;
}
.gds-main{
  position:sticky;
  top:12px;
  height:calc(100vh - 24px);
  max-height:calc(100vh - 24px);
  display:grid;
  grid-template-rows:minmax(0,1fr) auto auto;
  gap:12px;
  overflow:hidden;
  padding-bottom:0;
}
.gds-main>.gds-card{
  min-width:0;
}
.gds-main>.gds-card:first-child{
  position:static;
  z-index:auto;
  min-height:0;
  max-height:none;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.gds-canvas-wrap{
  min-height:0;
  height:auto;
  flex:1 1 auto;
  max-height:none;
  padding:10px;
  overflow:hidden;
}
.gds-canvas-wrap canvas{
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
}
.gds-downloads{
  margin-top:10px;
  flex-shrink:0;
}
.gds-main>.gds-card:nth-child(2){
  padding:12px 14px;
}
.gds-main>.gds-card:nth-child(2) .gds-toolbar{
  margin-bottom:8px;
}
.gds-base-preview-wrap{
  min-height:105px;
  height:120px;
  max-height:120px;
  padding:8px;
  overflow:hidden;
}
.gds-base-preview-wrap canvas{
  max-height:104px;
}
.gds-main>.gds-card:nth-child(3){
  padding:12px 14px;
}
.gds-main>.gds-card:nth-child(3) h2{
  margin-bottom:9px;
}
.gds-main>.gds-card:nth-child(3) .gds-metrics{
  gap:7px;
}
.gds-main>.gds-card:nth-child(3) .gds-metrics div{
  padding:9px 10px;
}
.gds-main>.gds-card:nth-child(3) .gds-metrics strong{
  font-size:17px;
}
.gds-main>.gds-card:nth-child(3) .gds-help{
  margin-top:8px;
  font-size:11px;
}
@media(max-width:1100px){
  .gds-grid{min-height:0}
  .gds-side,.gds-main{
    position:static;
    max-height:none;
    height:auto;
    overflow:visible;
    padding-right:0;
  }
  .gds-main{
    display:flex;
  }
  .gds-canvas-wrap{
    height:auto;
    min-height:420px;
    overflow:auto;
  }
  .gds-base-preview-wrap{
    height:auto;
    max-height:none;
    min-height:150px;
    overflow:auto;
  }
  .gds-base-preview-wrap canvas{
    max-height:220px;
  }
}

/* Laser Tools Hub light theme */
.tool-acrylic-sign-generator .tool-shell-inner{width:min(1760px,calc(100% - 28px));max-width:none}
.tool-acrylic-sign-generator .gds-wrap{--panel:#fff;--panel2:#f7f9fc;--border:#dce4ef;--muted:#64748b;color:#13213a;padding-bottom:34px}
.tool-acrylic-sign-generator .gds-header{background:#fff;border-color:#dce4ef;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.tool-acrylic-sign-generator .gds-header h1,.tool-acrylic-sign-generator .gds-card h2,.tool-acrylic-sign-generator .gds-subcard h3{color:#13213a}
.tool-acrylic-sign-generator .gds-header h1 span{background:#dbe5ff;color:#2949b8}
.tool-acrylic-sign-generator .gds-header p,.tool-acrylic-sign-generator .gds-toolbar p,.tool-acrylic-sign-generator .gds-help,.tool-acrylic-sign-generator .gds-canvas-hint,.tool-acrylic-sign-generator .gds-image-meta span,.tool-acrylic-sign-generator .gds-metrics span{color:#64748b}
.tool-acrylic-sign-generator .gds-card{background:#fff;border-color:#dce4ef;box-shadow:0 8px 24px rgba(15,23,42,.04)}
.tool-acrylic-sign-generator .gds-field,.tool-acrylic-sign-generator .gds-check{color:#26364f}
.tool-acrylic-sign-generator .gds-field input,.tool-acrylic-sign-generator .gds-field select,.tool-acrylic-sign-generator .gds-field textarea{background:#f7f9fc;color:#13213a;border-color:#ced9e8}
.tool-acrylic-sign-generator .gds-line-row,.tool-acrylic-sign-generator .gds-image-item,.tool-acrylic-sign-generator .gds-subcard,.tool-acrylic-sign-generator .gds-metrics div{background:#f7f9fc;border-color:#dce4ef}
.tool-acrylic-sign-generator .gds-image-item.active{background:#edf2ff;border-color:#5b7cff}
.tool-acrylic-sign-generator .gds-canvas-wrap,.tool-acrylic-sign-generator .gds-base-preview-wrap{background:#eef3f9;border-color:#dce4ef}
.tool-acrylic-sign-generator .gds-metrics strong{color:#13213a}
.tool-acrylic-sign-generator .gds-downloads .button:not(.button-outline-dark),
.tool-acrylic-sign-generator #as-generate{background:#5b7cff;border-color:#5b7cff;color:#fff}
.tool-acrylic-sign-generator .tool-output-notice{margin:0 0 10px}
