/* 05 Warm editorial interface. Cabinet geometry and exported drawings are unchanged. */
:root {
  color-scheme:light;
  font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;
  background:#f2efe8;
  color:#49453f;
  --accent:#a45343;
  --muted:#948b7d;
  --border:#dfdbd2;
  --studio-surface:#fcfbf8;
  --studio-paper:#e9e6dd;
}
body {
  background:#f2efe8;
}
button,select,input {
  font-family:inherit;
}
button,a,input,select,summary {
  outline-offset:3px;
}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible {
  outline:2px solid #9e7862;
}
a {
  color:inherit;
  text-decoration:none;
}
button {
  transition:background .15s,border-color .15s;
}
button:disabled {
  opacity:.55;
}
.topbar {
  height:92px;
  padding:0 40px;
  background:#fcfbf8;
  border-color:#e4dfd5;
  gap:30px;
}
.studio-brand {
  border:0;
  background:none;
  display:flex;
  flex-direction:column;
  align-items:start;
  gap:8px;
  padding:0;
  cursor:pointer;
}
.studio-logo {
  display:block;
  position:relative;
  overflow:hidden;
  width:220px;
  aspect-ratio:6492/780;
  background:white;
  flex:none;
}
.studio-logo img {
  position:absolute;
  max-width:none;
  width:100.786%;
  height:auto;
  left:-.385%;
  top:-4.103%;
}
.studio-brand-caption {
  font-size:9px;
  color:#a09688;
  letter-spacing:1.7px;
}
.studio-nav {
  display:flex;
  align-items:stretch;
  gap:31px;
  height:100%;
}
.studio-nav button {
  position:relative;
  border:0;
  background:transparent;
  padding:0 4px;
  color:#9a9285;
  font-size:12px;
  min-width:62px;
}
.studio-nav button.active {
  color:#514b41;
}
.studio-nav button.active:after {
  content:"";
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:1px;
  background:#a45343;
}
.studio-account {
  display:flex;
  align-items:center;
  gap:8px;
  font-size:10px;
  color:#a19889;
}
.studio-account i {
  width:4px;
  height:4px;
  background:#929d7b;
  border-radius:50%;
}
.studio-edition {
  border:1px solid #ded6c7;
  padding:5px 8px;
  margin-left:17px;
  color:#a4937c;
  font-size:9px;
}
.studio-account .failed {
  color:#b44a37;
}
.studio-home {
  max-width:1440px;
  margin:auto;
  padding:33px 40px 27px;
}
.studio-hero {
  display:grid;
  grid-template-columns:1.22fr 1fr;
  background:#e9e5db;
  min-height:440px;
  overflow:hidden;
}
.studio-hero-picture {
  min-width:0;
  position:relative;
}
.studio-hero-picture img {
  display:block;
  width:100%;
  height:100%;
  min-height:440px;
  object-fit:cover;
  object-position:42% 50%;
}
.studio-hero-picture>span {
  position:absolute;
  left:24px;
  bottom:20px;
  color:#fff;
  font:9px Arial;
  letter-spacing:1.6px;
  text-shadow:0 1px 8px #0007;
}
.studio-hero-copy {
  padding:38px 44px 28px;
  display:flex;
  flex-direction:column;
  align-items:start;
}
.studio-kicker {
  font:9px Arial,sans-serif;
  letter-spacing:1.5px;
  color:#a29989;
  display:flex;
  align-items:center;
  gap:14px;
}
.studio-kicker i {
  width:26px;
  height:1px;
  background:#c9beac;
}
.studio-hero-copy h1 {
  font:36px/1.5 "Songti SC",SimSun,serif;
  letter-spacing:1px;
  color:#51493e;
  margin:22px 0 16px;
}
.studio-hero-copy p {
  font-size:11px;
  line-height:2;
  color:#9b9387;
  margin:0;
}
.studio-hero-copy>.button {
  font-size:11px;
  min-width:0;
  padding:0 19px;
  height:41px;
  margin-top:23px;
  font-weight:400;
}
.studio-hero-copy>.button span {
  font-size:15px;
  margin-left:15px;
}
.studio-continue {
  border:0;
  border-bottom:1px solid #c4b8a6;
  padding:0 0 7px;
  margin:18px 0 27px;
  color:#8e806e;
  font-size:10px;
  background:none;
  display:flex;
  gap:30px;
  align-items:center;
  min-height:25px;
}
.studio-continue:disabled {
  opacity:.45;
  cursor:default;
}
.studio-material {
  margin-top:auto;
  width:100%;
  border-top:1px solid #d2cabd;
  padding-top:17px;
  display:flex;
  justify-content:space-between;
  gap:12px;
  font-size:8px;
  color:#a29989;
}
.studio-material span:first-child {
  color:#827763;
}
.studio-flow {
  padding:25px 0 26px;
}
.studio-section-caption {
  display:flex;
  justify-content:space-between;
  font-size:11px;
  color:#6e6558;
}
.studio-section-caption>span:last-child {
  font-size:10px;
  color:#aaa18f;
}
.studio-flow nav {
  display:flex;
  gap:14px;
  margin-top:20px;
  overflow:auto;
  scrollbar-width:none;
}
.studio-flow button {
  display:flex;
  align-items:center;
  justify-content:start;
  gap:20px;
  min-width:132px;
  flex:1;
  background:none;
  border:0;
  padding:5px 0;
  font-size:11px;
  color:#6b655a;
  text-align:left;
  white-space:nowrap;
}
.studio-flow button>span:first-child {
  color:#aaa291;
  font:10px Arial;
}
.studio-flow button:after {
  content:"›";
  font:13px Arial;
  color:#c6bdad;
  margin-left:auto;
  margin-right:5px;
}
.studio-flow button:last-child:after {
  display:none;
}
.studio-flow button:disabled {
  opacity:.5;
}
.studio-flow button.current {
  color:#a45343;
}
.studio-projects {
  padding-top:26px;
  border-top:1px solid #dcd5c8;
  scroll-margin-top:24px;
}
.studio-projects-heading {
  display:flex;
  align-items:end;
  justify-content:space-between;
  margin-bottom:20px;
  gap:15px;
}
.studio-projects h2 {
  font:23px/1.5 "Songti SC",SimSun,serif;
  font-weight:400;
  margin:7px 0 0;
  letter-spacing:.6px;
}
.studio-projects-heading>span {
  color:#a89e8e;
  font-size:10px;
}
#studio-project-list {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.studio-project-card {
  display:flex;
  align-items:stretch;
  padding:14px 0;
  background:none;
  border:0;
  border-top:1px solid #d7d1c6;
  border-bottom:1px solid #d7d1c6;
  text-align:left;
  min-width:0;
  color:#5b5448;
}
.studio-project-card:hover {
  background:#eae5da66;
}
.studio-project-thumb {
  display:grid;
  place-items:center;
  width:34%;
  min-height:126px;
  background:#e6e0d3;
  color:#a4957b;
  flex:none;
}
.studio-project-thumb svg {
  width:85%;
  height:100px;
}
.studio-project-thumb path {
  fill:#f4f0e8;
  stroke:#a39986;
  stroke-width:1.2;
  stroke-linejoin:round;
}
.studio-project-info {
  padding:14px 22px;
  display:flex;
  flex-direction:column;
  flex:1;
  min-width:0;
}
.studio-project-info small {
  font-size:9px;
  color:#a79d8b;
}
.studio-project-info strong {
  font:17px/1.5 "Songti SC",SimSun,serif;
  margin:8px 0 6px;
  overflow-wrap:anywhere;
}
.studio-project-info>span {
  font-size:10px;
  color:#a19886;
  line-height:1.7;
}
.studio-project-info em {
  font-size:9px;
  font-style:normal;
  color:#a17761;
  margin-top:auto;
  padding-top:14px;
}
.studio-empty {
  grid-column:1/-1;
  display:flex;
  align-items:center;
  gap:25px;
  padding:30px 26px;
  background:#ece7dc;
  border:1px solid #e3dbce;
}
.studio-empty strong {
  font:19px "Songti SC",SimSun,serif;
  color:#86755e;
  white-space:nowrap;
}
.studio-empty p {
  font-size:11px;
  line-height:1.9;
  color:#a89c88;
  margin:0;
  flex:1;
}
.studio-empty .button {
  font-size:11px;
  font-weight:400;
  height:39px;
}
.studio-footer {
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-top:28px;
  color:#a99e8c;
  font-size:9px;
  letter-spacing:.2px;
}
.workspace {
  max-width:1520px;
  padding:28px 38px 30px;
}
.project-toolbar {
  border-bottom:1px solid #ddd5c7;
  padding-bottom:20px;
  margin-bottom:23px;
  gap:10px;
}
.project-toolbar .button {
  font-size:11px;
  min-height:39px;
  height:39px;
  font-weight:400;
  border-radius:0;
}
.project-toolbar select {
  min-height:39px;
  border-radius:0;
  color:#6e6558;
  border-color:#ddd5c7;
  background:#fcfbf8;
  font-size:12px;
  max-width:360px;
}
.project-toolbar label {
  font-size:10px;
  color:#a1947f;
}
.project-toolbar #project-status {
  font-size:10px;
  color:#ab9b83;
  margin-left:auto;
  max-width:360px;
  line-height:1.7;
}
.steps {
  border:0;
  border-bottom:1px solid #dcd4c5;
  border-radius:0;
  background:none;
  margin-bottom:29px;
  padding:0 0 18px;
  gap:8px;
  overflow:auto;
  scrollbar-width:none;
}
.steps li {
  height:35px;
  background:none;
  justify-content:start;
  font-size:11px;
  min-width:124px;
  flex:1;
  gap:8px;
  color:#aaa18f;
}
.steps li+li:before {
  display:none;
}
.steps li button {
  gap:9px;
  font-weight:400;
  font-size:11px;
  padding:0 4px;
  min-height:35px;
}
.steps li.current {
  background:none;
  color:#9b5140;
  font-weight:400;
}
.steps .step-number {
  width:21px;
  height:21px;
  font:10px Arial;
  background:#e9e5dc;
  color:#aaa291;
}
.steps .current .step-number {
  background:#a45343;
  color:#fff;
}
.steps .done .step-number {
  background:#e5e8dd;
  color:#93a087;
}
.steps .done {
  color:#929b83;
}
.steps li button:disabled {
  opacity:.5;
}
.page-heading {
  margin-bottom:25px;
}
.eyebrow {
  font-size:10px;
  color:#aa9580;
  font-weight:400;
  letter-spacing:1.6px;
}
.page-heading h1 {
  font:28px/1.5 "Songti SC",SimSun,serif;
  color:#51493f;
  letter-spacing:.6px;
  margin:9px 0 10px;
  font-weight:400;
}
.page-heading p {
  font-size:12px;
  color:#9a8f7d;
  line-height:1.9;
}
.page-note {
  color:#b4a995;
}
.button {
  border-radius:0;
  font-weight:400;
  font-size:12px;
}
.primary {
  background:#a45343;
  min-width:136px;
}
.primary:not(:disabled):hover {
  background:#904333;
}
.primary:disabled {
  background:#cfb5a6;
}
.secondary {
  background:#fcfbf8;
  color:#8e7e69;
  border-color:#dcd2c3;
}
.secondary:not(:disabled):hover {
  background:#f0e9de;
}
.selection-panel,.preview-panel,.layout-side,.layout-board,.upper-card,.drawing-settings,.drawing-sheet-card,.adjustment-card,.pricing-card,.render-canvas-card,.render-settings,.actionbar {
  background:#fcfbf8;
  border-color:#dfd7ca;
  border-radius:0;
  box-shadow:none;
}
.panel-heading h2,.upper-card h2,.layout-side h2,.pricing-card h2,.render-settings h2 {
  font-weight:400;
  color:#695b49;
}
.panel-heading>span {
  color:#b4a68e;
}
.main-grid {
  grid-template-columns:1fr 1.3fr;
  gap:22px;
}
.selection-panel {
  padding:25px;
}
.preview-panel {
  padding:25px;
}
.shape-options {
  gap:12px;
}
.shape-card {
  border-radius:0;
  border-color:#e1d8c9;
  background:#faf8f3;
  padding:17px;
}
.shape-card:hover {
  border-color:#c0ad93;
  background:#f6f0e6;
}
.shape-card.selected {
  border-color:#ae775d;
  background:#f6eee3;
  box-shadow:none;
}
.shape-card .card-name {
  font-weight:400;
  color:#76644e;
  font-size:14px;
}
.shape-card .card-description {
  color:#b0a18b;
  font-size:11px;
}
.shape-card svg {
  color:#b0a18c;
}
.shape-card.selected svg {
  color:#a57659;
}
.shape-card input {
  accent-color:#a47659;
}
.selection-hint {
  color:#ae9f89;
}
.preview-canvas {
  border-radius:0;
  background-color:#eeeadf;
  background-image:linear-gradient(#d5cdbc45 1px,transparent 1px),linear-gradient(90deg,#d5cdbc45 1px,transparent 1px);
  border-color:#e2d9c9;
  min-height:350px;
}
.room-fill {
  fill:#e4dccb;
}
.room-boundary {
  stroke:#9f8c71;
}
.vertex {
  stroke:#9f8c71;
  fill:#fcfbf8;
}
.room-caption {
  fill:#a49174;
}
.view-label {
  background:#f1ece3;
  color:#b1a28c;
  border-radius:0;
}
.empty-preview {
  color:#b6a68e;
}
.empty-preview>span {
  color:#b9aa93;
}
.view-indicator {
  color:#b4a58b;
}
.preview-description strong {
  font-weight:400;
  color:#8c795e;
}
.preview-description p {
  color:#b09f85;
}
.confirmation {
  background:#e8ecdf;
  border-color:#d9dfc9;
  border-radius:0;
  color:#8b9773;
}
.confirmation-icon {
  background:#9da686;
}
.confirmation p {
  color:#a2aa8d;
}
.actionbar {
  padding:19px 23px;
  margin-top:23px;
}
.save-info strong {
  font-weight:400;
  color:#88765e;
}
.save-info p {
  color:#b0a18b;
}
.save-dot {
  background:#b9ae99;
}
.save-dot.saved {
  background:#a2ac8d;
}
.sketch-toolbar,.layout-toolbar {
  background:#fcfbf8;
  border-color:#dfd7ca;
  border-radius:0;
}
.sketch-grid {
  gap:20px;
}
.drawing-panel,.measurement-panel {
  border-radius:0;
  border-color:#dfd7ca;
}
.drawing-header {
  background:#fcfbf8;
  color:#98856b;
}
.drawing-surface {
  background:#f6f2e9;
}
.drawing-actions {
  background:#fcfbf8;
  color:#9b886c;
}
.drawing-actions button,.sketch-toolbar button,.tool-group button {
  border-radius:0;
}
.segment-row {
  border-color:#e0d6c5;
}
.segment-row input {
  color:#7b684d;
  border-color:#d6c8b1;
  border-radius:0;
  background:#fffdf7;
}
.measurement-panel h2 {
  font-weight:400;
}
.layout-field {
  color:#a08e74;
}
.layout-field input,.layout-field select {
  border-radius:0;
  border-color:#ddd2c0;
  background:#fffdf7;
  color:#7a664a;
}
.layout-check {
  color:#a38f72;
}
.layout-grid {
  grid-template-columns:280px minmax(0,1fr);
  gap:20px;
}
.layout-board {
  grid-column:2;
  grid-row:1;
}
.layout-side {
  grid-column:1;
  grid-row:1;
  padding:22px;
}
.layout-board-header {
  background:#fcfbf8;
  color:#968065;
  border-color:#dfd7ca;
}
.layout-board-header span {
  color:#b2a38b;
}
.layout-board-note {
  color:#b4a185;
  border-color:#dfd7ca;
}
.layout-side p {
  color:#af9d82;
}
.layout-selected-actions button,.layout-history button,#layout-items button,.cabinet-walls button,.under-stove button {
  border-radius:0;
  background:#fffdf7;
  border-color:#ded3c0;
  color:#958061;
}
.layout-side h2 {
  font-family:"Songti SC",SimSun,serif;
  font-size:18px;
}
.layout-fridge {
  border-color:#e1d6c3;
}
.layout-fridge h3 {
  font-weight:400;
  color:#9f8968;
}
.layout-message {
  color:#ae9b7c;
}
.layout-side summary {
  color:#9f8869;
}
.layout-toolbar .layout-history {
  margin-left:auto;
}
.layout-basic-size {
  color:#aa9577;
}
.cabinet-walls button[aria-pressed=true] {
  border-color:#a8795d;
  background:#f4e9db;
  color:#a17658;
}
.upper-grid {
  grid-template-columns:280px minmax(0,1fr);
  gap:20px;
}
.upper-card {
  border-radius:0;
}
.upper-card p {
  color:#ad997b;
}
.upper-card summary {
  color:#967c5c;
}
.upper-preview-column {
  min-width:0;
}
.upper-board-heading h2 {
  font-weight:400;
}
.upper-board-heading>span {
  color:#b49d7a;
}
.upper-drag-tools {
  border-color:#ddd1bc;
}
.upper-drag-tools span {
  color:#ac9472;
}
.drawing-settings>summary {
  color:#ac9475;
}
.drawing-tabs button {
  border-radius:0;
  background:#fcfbf8;
  color:#a78d6a;
  border-color:#ddd0bb;
  font-size:12px;
}
.drawing-tabs button[aria-selected=true] {
  border-color:#a47655;
  background:#efe3d1;
  color:#9c704c;
}
.drawing-sheet-heading {
  background:#fcfbf8;
  color:#ad9979;
  border-color:#ddd0b8;
}
.drawing-sheet-heading button {
  border-radius:0;
  background:#fcfbf8;
  border-color:#ddd0ba;
  color:#9e815a;
  font-size:11px;
}
.drawing-auto-quote {
  color:#a98c66;
  font-size:11px;
}
.drawing-workspace.is-adjusting {
  grid-template-columns:280px minmax(0,1fr);
  grid-template-areas:"controls preview";
  height:calc(100dvh - 24px);
  max-height:900px;
  gap:17px;
}
.drawing-workspace.is-adjusting>.adjustment-card {
  padding:18px 16px;
}
.drawing-workspace.is-marking>.drawing-sheet-card {
  height:calc(100dvh - 24px);
}
.adjustment-toolbar button,.adjustment-steps button,.dimension-control button,.adjustment-controls select {
  border-radius:0;
  background:#fffdf7;
  border-color:#ded0b9;
  color:#a78c65;
}
.adjustment-toolbar #adjustment-toggle[aria-pressed=true] {
  background:#a47e5a;
  color:#fff;
  border-color:#a47e5a;
}
.adjustment-toolbar {
  gap:5px;
}
.adjustment-toolbar button {
  padding:8px;
  font-size:11px;
}
.dimension-control {
  grid-template-columns:58px minmax(0,1fr) 73px;
  gap:5px;
}
.dimension-control label {
  font-size:11px;
  color:#a68b63;
}
.dimension-control button {
  font-size:12px;
  color:#b18d5b;
  padding:8px 4px;
}
.dimension-control input[type=range] {
  accent-color:#ad9173;
}
#adjustment-message {
  font-size:11px;
  color:#ae9673;
}
.adjustment-position summary {
  font-size:11px;
  color:#ad926b;
}
.drawing-count,.drawing-note {
  color:#ad9875;
  font-size:11px;
}
.drawing-quote-summary {
  border-radius:0;
  background:#fcfbf8;
  color:#ab8f66;
}
.drawing-quote-summary td,.drawing-quote-summary th {
  border-color:#e0d2ba;
}
.drawing-export-actions {
  gap:12px;
}
.drawing-dimension-tools {
  background:#e9e3d6;
  border-color:#d7c8af;
}
.drawing-dimension-tools p {
  color:#9c835e;
}
.drawing-dimension-tools button {
  border-radius:0;
  border-color:#d3c1a2;
  background:#fcfbf8;
  color:#9d7e50;
}
.pricing-card h2 {
  font-size:17px;
  font-family:"Songti SC",SimSun,serif;
}
.pricing-card {
  padding:23px;
}
.pricing-field {
  color:#9a825f;
  font-size:12px;
}
.pricing-field input {
  border-radius:0;
  border-color:#dbccb4;
  background:#fffdf8;
  color:#8e7048;
}
.pricing-field small,.pricing-entry-note,.pricing-rule {
  color:#ad9673;
}
.pricing-table th {
  background:#eee7d9;
  color:#a68b62;
}
.pricing-table td {
  color:#9e825c;
}
.pricing-table td:last-child {
  color:#b39b78;
}
.pricing-total strong {
  color:#a45343;
  font-weight:400;
}
.pricing-table caption {
  color:#9a7e55;
}
.pricing-entry-note button {
  color:#a45343;
}
.render-layout {
  grid-template-columns:280px minmax(0,1fr);
  gap:20px;
}
.render-settings {
  grid-column:1;
  grid-row:1;
  padding:20px;
}
.render-canvas-card {
  grid-column:2;
  grid-row:1;
  top:14px;
}
.render-toolbar {
  border-color:#ddd0b7;
}
.render-toolbar button {
  border-radius:0;
  background:#fcfbf8;
  border-color:#d9c7a8;
  color:#a4875d;
}
.render-toolbar label {
  color:#af946b;
  font-size:12px;
}
.render-settings h2 {
  font-family:"Songti SC",SimSun,serif;
  font-size:19px;
}
.render-swatch {
  border-radius:0;
  background:#fcfbf8;
  color:#a78b65;
}
.render-swatch span:first-child {
  border-radius:0;
}
.render-swatch.selected {
  border-color:#a77c4c;
  background:#f2e7d4;
}
.render-settings select {
  border-radius:0;
  background:#fffdf7;
  border-color:#d6c3a1;
  color:#9f7c4e;
}
.render-material-note {
  background:#f0e9db;
  border-radius:0;
  color:#b09771;
}
.render-palette-note,#render-feedback {
  color:#b19973;
}
.render-color-name {
  color:#9c7c50;
  font-weight:400;
}
.render-viewport {
  min-height:470px;
  height:min(67vh,720px);
}
.project-dialog,.layout-picker,.drawing-annotation-dialog,.adjustment-dimension-dialog,.drawing-zoom-dialog {
  border-radius:0;
  background:#fcfbf8;
  border-color:#d8c7a9;
  color:#8e724e;
}
.project-dialog h2,.layout-picker h2 {
  font:23px "Songti SC",SimSun,serif;
  font-weight:400;
}
.project-dialog input,.layout-choice,.layout-picker .button,.drawing-annotation-dialog button,.adjustment-dimension-dialog input,.adjustment-dimension-dialog button {
  border-radius:0;
}
.project-dialog::backdrop,.layout-picker::backdrop {
  background:#3e352b66;
  backdrop-filter:blur(3px);
}
@media(max-width:1100px) {
  .topbar {
    padding:0 26px;
    gap:20px;
  }
  .studio-nav {
    gap:20px;
  }
  .studio-edition {
    margin-left:8px;
  }
  .studio-home {
    padding:27px 26px;
  }
  .studio-hero-copy {
    padding:32px 31px 25px;
  }
  .studio-hero-copy h1 {
    font-size:31px;
  }
  .studio-hero {
    min-height:410px;
  }
  .studio-hero-picture img {
    min-height:410px;
  }
  .studio-material {
    display:block;
  }
  .studio-material span {
    display:block;
    line-height:1.8;
  }
  .studio-material span+span {
    margin-top:3px;
  }
  .workspace {
    padding:26px;
  }
  .layout-grid,.upper-grid {
    grid-template-columns:255px minmax(0,1fr);
  }
  .layout-side {
    padding:19px;
  }
  .render-layout {
    grid-template-columns:255px minmax(0,1fr);
  }
  .render-settings {
    padding:15px;
  }
  .drawing-workspace.is-adjusting {
    grid-template-columns:270px minmax(0,1fr);
  }
  .studio-empty {
    gap:18px;
    flex-wrap:wrap;
  }
  .studio-empty strong {
    font-size:18px;
  }
  .studio-project-info {
    padding:13px 17px;
  }
  .studio-project-info strong {
    font-size:16px;
  }
}
@media(max-width:800px) {
  .studio-account>i,.studio-account #studio-save-state {
    display:none;
  }
  .studio-nav {
    gap:10px;
  }
  .studio-nav button {
    font-size:11px;
  }
  .studio-logo {
    width:190px;
  }
  .studio-home {
    padding:23px;
  }
  .studio-hero-copy {
    padding:30px 25px;
  }
  .studio-hero-copy h1 {
    font-size:28px;
  }
  .studio-hero-copy p {
    font-size:10px;
  }
  .studio-kicker {
    font-size:7px;
    gap:10px;
  }
  .studio-hero-copy>.button {
    font-size:10px;
    padding:0 13px;
  }
  .studio-hero-copy>.button span {
    margin-left:8px;
  }
  .studio-continue {
    font-size:9px;
  }
  .studio-material {
    font-size:7px;
  }
  .studio-flow button {
    min-width:123px;
    font-size:10px;
  }
  .studio-project-info>span {
    font-size:9px;
  }
  .studio-project-thumb {
    width:32%;
  }
  .studio-projects-heading>span {
    font-size:9px;
  }
  .drawing-workspace.is-adjusting {
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:minmax(180px,1fr) auto;
    grid-template-areas:"preview" "controls";
    gap:9px;
    height:calc(100dvh - 16px);
  }
  .drawing-workspace.is-adjusting>.adjustment-card {
    max-height:min(390px,52dvh);
    padding:13px 15px;
  }
  .render-layout {
    display:flex;
    flex-direction:column;
  }
  .render-canvas-card {
    width:100%;
    position:sticky;
    top:0;
    z-index:3;
  }
  .render-settings {
    width:100%;
    padding:18px;
  }
  .render-viewport {
    height:34vh;
    min-height:240px;
    max-height:320px;
  }
  .render-colors {
    grid-template-columns:repeat(6,minmax(0,1fr));
    max-height:190px;
  }
  .layout-grid {
    display:flex;
    flex-direction:column;
  }
  .layout-board {
    width:100%;
  }
  .layout-side {
    width:100%;
  }
  .main-grid {
    grid-template-columns:1fr;
  }
  .upper-grid {
    display:flex;
    flex-direction:column;
  }
  .upper-settings,.upper-preview-column {
    width:100%;
  }
}
@media(max-width:600px) {
  .topbar {
    height:auto;
    min-height:85px;
    flex-wrap:wrap;
    padding:18px 20px 0;
    gap:16px;
  }
  .studio-brand {
    gap:7px;
  }
  .studio-logo {
    width:185px;
  }
  .studio-brand-caption {
    font-size:8px;
    letter-spacing:1px;
  }
  .studio-account {
    margin-left:auto;
  }
  .studio-edition {
    font-size:8px;
    padding:4px 6px;
    margin:0;
  }
  .studio-nav {
    order:3;
    width:100%;
    height:43px;
    gap:28px;
    justify-content:start;
  }
  .studio-nav button {
    font-size:11px;
    padding:0 0 12px;
    min-width:65px;
  }
  .studio-home {
    padding:20px 18px 24px;
  }
  .studio-hero {
    display:flex;
    flex-direction:column;
  }
  .studio-hero-picture {
    height:246px;
  }
  .studio-hero-picture img {
    height:100%;
    min-height:0;
    object-position:50% 47%;
  }
  .studio-hero-picture>span {
    left:18px;
    bottom:15px;
    font-size:7px;
  }
  .studio-hero-copy {
    padding:29px 28px 27px;
  }
  .studio-kicker {
    font-size:8px;
    letter-spacing:1.3px;
  }
  .studio-hero-copy h1 {
    font-size:30px;
    line-height:1.5;
    margin:20px 0 15px;
  }
  .studio-hero-copy p {
    font-size:11px;
  }
  .studio-hero-copy>.button {
    height:42px;
    padding:0 18px;
    font-size:11px;
    margin-top:23px;
  }
  .studio-hero-copy>.button span {
    margin-left:15px;
  }
  .studio-continue {
    font-size:10px;
    margin-top:18px;
    margin-bottom:26px;
    min-height:27px;
  }
  .studio-material {
    display:flex;
    font-size:7px;
    padding-top:17px;
    gap:14px;
  }
  .studio-material span+span {
    margin-top:0;
  }
  .studio-flow {
    padding:25px 0;
  }
  .studio-section-caption {
    font-size:10px;
  }
  .studio-section-caption>span:last-child {
    font-size:8px;
  }
  .studio-flow nav {
    gap:15px;
    margin-top:15px;
  }
  .studio-flow button {
    min-width:116px;
    gap:13px;
    font-size:10px;
  }
  .studio-projects {
    padding-top:23px;
  }
  .studio-projects h2 {
    font-size:21px;
  }
  .studio-projects-heading>span {
    font-size:8px;
  }
  .studio-projects .studio-kicker {
    font-size:7px;
  }
  #studio-project-list {
    grid-template-columns:1fr;
    gap:16px;
  }
  .studio-empty {
    padding:23px 20px;
    display:block;
  }
  .studio-empty strong {
    font-size:18px;
    white-space:normal;
  }
  .studio-empty p {
    font-size:10px;
    margin-top:12px;
  }
  .studio-empty .button {
    margin-top:18px;
    font-size:11px;
  }
  .studio-project-thumb {
    width:32%;
    min-height:120px;
  }
  .studio-project-info {
    padding:11px 16px;
  }
  .studio-project-info strong {
    font-size:16px;
  }
  .studio-project-info>span {
    font-size:9px;
  }
  .studio-footer {
    font-size:8px;
    display:block;
    padding-top:24px;
    line-height:2;
  }
  .studio-footer span {
    display:block;
  }
  .workspace {
    padding:21px 16px;
  }
  .project-toolbar {
    gap:8px;
    padding-bottom:18px;
    margin-bottom:20px;
  }
  .project-toolbar .button {
    min-height:41px;
    height:41px;
    padding:0 11px;
    font-size:10px;
  }
  .project-toolbar select {
    min-height:41px;
    font-size:12px;
    max-width:none;
  }
  .project-toolbar .project-choice {
    flex:1 1 calc(100% - 130px);
  }
  .project-toolbar #project-status {
    margin:0;
    max-width:none;
    font-size:9px;
    line-height:1.8;
  }
  .steps {
    margin-bottom:23px;
    gap:12px;
    padding-bottom:15px;
  }
  .steps li {
    min-width:114px;
    height:34px;
    flex-direction:row;
  }
  .steps li button {
    font-size:11px;
    white-space:nowrap;
  }
  .steps li .step-number {
    width:20px;
    height:20px;
    font-size:10px;
  }
  .page-heading h1 {
    font-size:25px;
    line-height:1.5;
    margin-top:9px;
  }
  .page-heading p {
    font-size:11px;
    line-height:1.9;
  }
  .eyebrow {
    font-size:9px;
  }
  .selection-panel,.preview-panel {
    padding:19px;
  }
  .shape-card {
    padding:15px 12px;
  }
  .shape-card .card-name {
    font-size:13px;
  }
  .shape-card .card-description {
    font-size:10px;
  }
  .preview-canvas {
    min-height:280px;
  }
  .preview-canvas>svg {
    height:280px;
  }
  .layout-side {
    padding:19px;
  }
  .layout-board-header {
    padding:15px;
    font-size:12px;
  }
  .layout-board-note {
    padding:12px 15px;
    font-size:11px;
  }
  .layout-surface {
    min-height:310px;
  }
  .layout-toolbar {
    padding:11px;
  }
  .layout-toolbar #layout-add {
    font-size:12px;
  }
  .layout-toolbar .button {
    font-size:11px;
  }
  .layout-history button {
    font-size:11px;
  }
  .actionbar {
    padding:18px;
    align-items:stretch;
  }
  .actionbar .actions {
    flex-wrap:wrap;
    gap:8px;
  }
  .actionbar .button {
    font-size:11px;
    min-width:0;
    min-height:43px;
    padding:0 13px;
  }
  .save-info strong {
    font-size:12px;
  }
  .save-info p {
    font-size:10px;
  }
  .upper-card {
    padding:18px;
  }
  .upper-board-heading>span {
    font-size:10px;
  }
  .drawing-sheet-heading {
    padding:7px 10px;
    font-size:10px;
  }
  .drawing-sheet-heading button {
    font-size:11px;
    padding:0 9px;
  }
  .drawing-auto-quote {
    font-size:10px;
  }
  .drawing-export-actions .button {
    font-size:12px;
  }
  .adjustment-toolbar {
    flex-wrap:wrap;
  }
  .dimension-control {
    grid-template-columns:60px minmax(0,1fr) 78px;
  }
  .dimension-control label {
    font-size:11px;
  }
  .drawing-workspace.is-adjusting>.adjustment-card {
    padding:12px 14px;
  }
  .pricing-card {
    padding:18px;
  }
  .pricing-rates {
    gap:14px;
  }
  .pricing-field {
    font-size:11px;
  }
  .pricing-field small {
    font-size:10px;
  }
  .pricing-rule,.pricing-entry-note {
    font-size:11px;
  }
  .render-settings h2 {
    font-size:19px;
  }
  .render-toolbar {
    padding:10px;
  }
  .render-toolbar button {
    font-size:11px;
    padding:8px 10px;
  }
  .render-toolbar label {
    font-size:10px;
  }
  .render-settings {
    padding:17px;
  }
  .render-swatch {
    font-size:9px;
  }
  .render-material-note,.render-palette-note {
    font-size:11px;
  }
  .render-settings .layout-field {
    font-size:12px;
  }
  .render-transport .button {
    font-size:11px;
  }
  .project-dialog {
    padding:22px;
  }
  .project-dialog h2 {
    font-size:22px;
  }
}
@media(max-height:520px) and (min-width:600px) {
  .drawing-workspace.is-adjusting {
    grid-template-columns:260px minmax(0,1fr);
    grid-template-rows:minmax(0,1fr);
    grid-template-areas:"controls preview";
    min-height:0;
  }
  .drawing-workspace.is-adjusting>.adjustment-card {
    max-height:none;
  }
}
.layout-board.generated .layout-surface,.layout-legend {
  background:#e9e6dd;
  color:#8e9b92;
}
.cabinet-ready>rect:first-of-type {
  fill:#e9e6dd;
}
.cabinet-ready .cabinet-footprint {
  fill:#e2dfd5;
  stroke:#889b9e;
}
.cabinet-ready .layout-wall,.cabinet-ready .layout-wall.boundary {
  stroke:#ad9474;
}
.cabinet-ready .layout-length-box {
  fill:#f9f7ef;
  stroke:#c7cbbf;
}
.cabinet-ready .layout-length {
  fill:#8c9a90;
}
.cabinet-ready .dimension-leader {
  stroke:#a5afa7;
}
.cabinet-ready .cabinet-depth-label {
  fill:#a48a61;
  stroke:#e2dfd5;
}
.cabinet-ready .cabinet-depth-line {
  stroke:#baa17b;
}
.layout-legend .cabinet-key:before {
  background:#e2dfd5;
  border-color:#889b9e;
}
.layout-legend .wall-key:before {
  border-color:#ad9474;
}
.appliance-symbol {
  stroke:#6d969e;
}
.appliance-note-bg {
  fill:#faf8ef;
  stroke:#c3cbbf;
}
.appliance-name {
  fill:#7d9699;
}
.appliance-under-note {
  fill:#aa8c5e;
}
.layout-item.selected .layout-item-box {
  fill:#b9976a24;
  stroke:#b9976a;
}
.layout-annotation.selected .appliance-note-bg {
  stroke:#b9976a;
}
.layout-item.selected .appliance-symbol {
  stroke:#a98e64;
}
.sketch-grid {
  grid-template-columns:280px minmax(0,1fr);
}
.sketch-grid>.drawing-panel {
  grid-column:2;
  grid-row:1;
}
.sketch-grid>.dimension-panel {
  grid-column:1;
  grid-row:1;
  background:#fcfbf8;
  border-color:#dfd7ca;
  border-radius:0;
}
.dimension-panel summary {
  font-weight:400;
  color:#998264;
}
.dimension-intro,.dimension-help {
  color:#b09d81;
}
.length-row input {
  border-radius:0;
  border-color:#d8c9b0;
  background:#fffdf7;
  color:#92774f;
}
.length-row-name {
  color:#9f8661;
}
.length-row-name small {
  color:#c0ad8e;
}
.length-row {
  border-color:#e3d6c1;
}
.drawing-surface {
  background:#f5f1e8;
}
#sketch-canvas>rect:first-of-type {
  fill:#f5f1e8;
}
#sketch-grid-pattern path {
  stroke:#d9cfbc;
}
.sketch-line {
  stroke:#9c896e;
}
@media(max-width:800px) {
  .sketch-grid {
    display:flex;
    flex-direction:column;
  }
  .sketch-grid>.drawing-panel,.sketch-grid>.dimension-panel {
    width:100%;
  }
}
.upper-board svg {
  background:#e9e6dd;
}
#upper-canvas>rect {
  fill:#e9e6dd;
}
.upper-base-outline {
  stroke:#a2ada3;
}
.upper-plan-outline {
  fill:#c9d8d7;
  stroke:#7e9fa4;
}
.upper-hood-outline {
  fill:#c5d5bd;
  stroke:#8b9f7b;
}
.upper-wall-line {
  stroke:#a2afa7;
}
.upper-wall-line.active {
  stroke:#8ba8a9;
}
.upper-reservation path {
  fill:#b8a48712;
  stroke:#b6a27f;
}
.upper-reservation text {
  fill:#a08a63;
  stroke:#e9e6dd;
}
#upper-plan-labels [fill="#25323b"] {
  fill:#fbf9f1;
}
#upper-plan-labels [fill="#d6e9ed"] {
  fill:#7d9793;
}
#upper-plan-labels [stroke="#526979"] {
  stroke:#b9c4b6;
}
.upper-drag-handle text {
  fill:#987d57;
  stroke:none;
}
.upper-drag-handle circle[stroke="#202d35"] {
  stroke:#e9e6dd;
}
.upper-drag-handle circle[fill="#ffc476"] {
  fill:#bca081;
}
.upper-drag-handle circle[fill="#6ed4f2"] {
  fill:#8bb2b5;
}
.upper-drag-tools button {
  border-radius:0;
  background:#fcfbf8;
  color:#a58b66;
  border-color:#d5c4a6;
}
.upper-feedback {
  border-radius:0;
  border-color:#d7d9c6;
  background:#eeefe4;
  color:#8c9778;
}
@media(prefers-reduced-motion:reduce) {
  * {
    scroll-behavior:auto!important;
    transition:none!important;
  }
}
