/* Landscape Buddy's private creation workspace. */
body.lb-studio-page{--text:#e8f0ea;--muted:#a2b5a9;--line:#b6e7d125;--accent:#88dbb6;--content-text:#e8f0ea;--content-muted:#a2b5a9;color:var(--text);background-color:#060d0b;background-image:radial-gradient(ellipse 72% 42% at 18% 0%,#1b735c26,transparent 78%),radial-gradient(ellipse 52% 46% at 86% 18%,#377fba15,transparent 78%),radial-gradient(ellipse 48% 28% at 98% 0%,#d8bd7910,transparent 76%),linear-gradient(#a3dfc405 1px,transparent 1px),linear-gradient(90deg,#a3dfc405 1px,transparent 1px);background-size:auto,auto,auto,46px 46px,46px 46px;background-attachment:fixed;font-family:"PingFang SC","Microsoft YaHei",-apple-system,sans-serif;font-size:15px;line-height:1.65}
.lb-studio-page #app{display:flex;flex-direction:column;min-height:100svh}
body.lb-studio-page .content-topbar :is(a,button):focus-visible{outline:2px solid #91e2c1;outline-offset:4px}
.studio-entry{display:flex;align-items:center;gap:18px;padding:23px 26px;margin:0 0 28px;border:1px solid #bdeed42e;border-radius:16px;background:linear-gradient(120deg,#9ad6b516,#72b5d60a 65%,#dfcd970a);box-shadow:inset 0 1px 0 #ffffff06;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.studio-entry:hover{border-color:#a1e5bf66}.studio-entry-icon{width:43px;flex-shrink:0;color:#8ad8b8}.studio-entry-icon svg{display:block;width:100%}.studio-entry strong{display:block;font-size:18px;font-weight:500;margin-bottom:6px}.studio-entry span span{font-size:13px;color:#a2b5a9;line-height:1.8}.studio-entry-action{margin-left:auto;font-size:13px;color:#9adebf;white-space:nowrap}
.studio{width:min(1296px,calc(100% - 64px));margin:0 auto;padding:38px 0 60px;font-size:14px;line-height:1.7;flex:1;min-width:0}
.studio [hidden]{display:none!important}.studio :is(button,input,textarea,select){font:inherit}.studio button,.studio summary{cursor:pointer}.studio :is(a,button,summary,input,textarea,select):focus-visible,.studio-entry:focus-visible{outline:2px solid #91e2c1;outline-offset:4px}
.studio-crumb{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:13px;margin-bottom:26px}.studio-crumb a:hover{color:#b4ebd0}.studio-crumb [aria-current]{color:#bfd2c5}
.studio-header{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:30px}.studio-header h1{font-size:36px;font-weight:400;letter-spacing:.01em;line-height:1.4}.studio-header p{color:var(--muted);margin-top:10px;font-size:15px}
.studio-quota{display:flex;align-items:center;gap:23px;padding:16px 20px;border:1px solid #bdeed424;border-radius:13px;background:linear-gradient(120deg,#d7ffea08,#c9dfec05);font-size:12px;color:var(--muted);flex-shrink:0}
.studio-quota strong{font-size:25px;font-weight:500;color:#b7e5ce;margin-right:4px;line-height:1.5;font-variant-numeric:tabular-nums}.studio-quota span{display:block}.studio-quota .studio-quota-note{max-width:114px;color:#8fab9b;line-height:1.7;font-size:11px}
.studio-grid{display:grid;grid-template-columns:minmax(330px,410px) minmax(0,1fr);gap:28px;align-items:start}
.studio-editor,.studio-admin{background:linear-gradient(145deg,#ffffff0d,#ffffff04 65%,#c7efd907);border:1px solid #bdeed429;border-top-color:#d2ffe53b;border-radius:16px;box-shadow:0 12px 32px #00000015,inset 0 1px 0 #ffffff05;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);min-width:0}
.studio-editor{overflow:hidden}.studio-section{padding:24px}.studio-section+.studio-section{border-top:1px solid var(--line)}
.studio-section-heading{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin-bottom:20px}.studio-section h2,.studio-result-title h2,.studio-history h2{font-size:18px;font-weight:500}.studio-section-heading>span{font-size:11px;color:#91b19d}
.studio-field{display:block;margin-bottom:17px;min-width:0}.studio-field>label,.studio-field>span{display:block;font-size:13px;margin-bottom:8px;color:#c1d3c7}
.studio textarea,.studio input,.studio select{display:block;width:100%;min-width:0;border:1px solid #b1ddc32c;background:#04120b54;color:var(--text);border-radius:9px;padding:11px 12px;min-height:44px;line-height:1.8;transition:border-color .15s,background .15s}
.studio :is(textarea,input,select):focus{border-color:#8bdab18a;background:#04120b80}.studio textarea{resize:vertical;max-width:100%}.studio textarea::placeholder,.studio input::placeholder{color:#8ba496;opacity:1}.studio select option{background:#0d1a14}.studio input[type=number]{font-variant-numeric:tabular-nums}
.studio-choice-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.studio-choice-row .studio-field{margin-bottom:14px}
.studio-templates{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 20px}.studio-chip{border:1px solid #b5e3c62a;background:#b8edcf05;color:#b6d6c2;border-radius:20px;padding:5px 11px;font-size:12px!important;line-height:1.7;min-height:33px}.studio-chip:hover{color:#d5f0e0;border-color:#8bdab163;background:#9edcb411}
.studio-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:10px 15px;border-radius:9px;border:1px solid #b6e6c82d;background:#bcf3d009;color:#c8e6d3;line-height:1.5;white-space:normal;transition:background .15s,border-color .15s}
.studio-button:hover{background:#a3dfbb16;border-color:#a3dfbb63}.studio-button:disabled,.studio-chip:disabled{opacity:.48;cursor:not-allowed}.studio-button:disabled:hover{background:#bcf3d009;border-color:#b6e6c82d}
.studio-button-primary{background:linear-gradient(105deg,#7cdbad,#4bbc9b);color:#07251a;border-color:transparent;font-weight:500}.studio-button-primary:hover{background:linear-gradient(105deg,#91e8be,#66cfae);border-color:transparent}.studio-button-primary:disabled:hover{background:linear-gradient(105deg,#7cdbad,#4bbc9b);border-color:transparent}
.studio-button-wide{width:100%}.studio-button-subtle{background:transparent;border-color:var(--line);font-size:13px;padding:7px 12px;min-height:38px}.studio-button-subtle:hover{background:#b8e9cd0b}.studio-editor-actions{display:flex;justify-content:flex-end;margin-top:9px}.studio-editor-actions .studio-button{font-size:12px;min-height:34px;padding:5px 11px}
.studio-options{margin:20px 0;padding:15px 0 0;border-top:1px solid #b5e3c619}.studio-options>summary,.studio-admin>summary{cursor:pointer;color:#bfd8c9;font-size:13px}.studio-options[open]>summary{margin-bottom:15px}
.studio-help{font-size:12px;color:#97b1a2;line-height:1.8;margin-top:11px;overflow-wrap:anywhere}.studio-prompt-count{font-size:11px;color:var(--muted);text-align:right;margin-top:6px}
.studio-notice{padding:15px 18px;border:1px solid #d5bd7044;border-radius:11px;background:linear-gradient(110deg,#c4ae5b0e,#4d422509);color:#d8c89b;margin-bottom:23px;font-size:13px;line-height:1.9;overflow-wrap:anywhere}.studio-notice-error{border-color:#bd7c6444;background:#a9674810;color:#e6bca9}.studio-notice a{text-decoration:underline;text-underline-offset:3px}.studio-inline-message{font-size:13px;margin-top:13px;color:#e6bca9;line-height:1.8;overflow-wrap:anywhere}
.studio-result{min-width:0}.studio-result-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 15px}.studio-result-title p{font-size:12px;color:var(--muted)}
.studio-canvas{display:flex;align-items:center;justify-content:center;min-height:420px;aspect-ratio:4/3;max-height:720px;background:radial-gradient(ellipse at 45% 35%,#31644f14,transparent 70%),linear-gradient(145deg,#ffffff07,#69a8c105),#07110d9e;border:1px solid #bdeed429;border-top-color:#d2ffe536;border-radius:16px;overflow:hidden;position:relative;box-shadow:0 12px 32px #00000018,inset 0 1px 0 #ffffff05}
.studio-canvas>img{width:100%;height:100%;object-fit:contain;display:block}.studio-canvas-empty{max-width:380px;text-align:center;padding:35px 22px}.studio-canvas-empty svg{display:block;width:150px;height:115px;margin:0 auto 27px;color:#73b198}.studio-canvas-empty h3{font-size:20px;font-weight:400;color:#d0e7d8;margin-bottom:13px}.studio-canvas-empty p{font-size:14px;color:#9eb7a8;line-height:1.95}.studio-canvas-empty .studio-spinner{margin:0 auto 25px}
.studio-spinner{width:34px;height:34px;border:2px solid #a0d8b62b;border-top-color:#91d5b5;border-radius:50%;animation:studio-spin 1s linear infinite;display:block}@keyframes studio-spin{to{transform:rotate(360deg)}}
.studio-result-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 0;min-height:72px}.studio-result-meta{font-size:12px;color:#9eb8a7;overflow-wrap:anywhere}.studio-result-actions{display:flex;gap:8px;flex-shrink:0;flex-wrap:wrap}
.studio-history{border-top:1px solid var(--line);margin-top:16px;padding-top:25px}.studio-history-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px;gap:10px}.studio-history-head>span{font-size:12px;color:var(--muted)}
.studio-history-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.studio-history-card{display:block;min-width:0;padding:0;text-align:left;background:linear-gradient(145deg,#d8ffe508,#ffffff03);color:var(--text);border:1px solid #bdeed424;border-radius:11px;overflow:hidden}.studio-history-card[aria-pressed=true]{border-color:#8ed7b58f;box-shadow:0 0 0 1px #8ed7b54a}.studio-history-card:hover{border-color:#8ed7b561}
.studio-history-image{height:100px;display:flex;align-items:center;justify-content:center;background:#7bad8a09;color:#a9cdb9;font-size:12px}.studio-history-image img{height:100%;width:100%;object-fit:cover}.studio-history-caption{display:block;padding:11px 12px}.studio-history-caption strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:400}.studio-history-caption span{display:block;font-size:10px;color:#94af9e;margin-top:6px}.studio-history-empty{grid-column:1/-1;font-size:13px;color:#92af9f;padding:28px 0}.studio-history-status{font-size:12px;color:#a7c0b1;margin-bottom:12px}
.studio-admin{margin-top:34px;padding:22px 24px}.studio-admin>summary{font-size:16px;font-weight:500}.studio-admin-panel{padding-top:18px}.studio-admin-panel h3{font-size:16px;font-weight:500;margin-bottom:16px}.studio-admin-defaults{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px;margin:20px 0 28px}.studio-admin-defaults .studio-field{width:170px;margin:0}.studio-admin-defaults .studio-button{min-height:48px}
.studio-accounts{display:grid;gap:12px}.studio-account{display:grid;grid-template-columns:minmax(130px,1fr) 120px 120px auto;gap:15px;align-items:end;border:1px solid #bdeed421;background:#a3d1b604;padding:17px;border-radius:11px}.studio-account-name{align-self:center;min-width:0;font-size:14px;overflow-wrap:anywhere}.studio-account-name small{display:block;margin-top:6px;color:var(--muted);font-size:12px}.studio-account .studio-field{margin:0}.studio-account .studio-field label{font-size:12px}.studio-account .studio-button{min-height:48px}.studio-admin-pagination{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:18px;font-size:13px;color:var(--muted)}
.studio-footer{width:min(1296px,calc(100% - 64px));margin:0 auto;padding:26px 0 32px;border-top:1px solid #b8e5ce24;display:flex;justify-content:space-between;gap:20px;color:#8aa495;font-size:12px}
@media(max-width:1080px){.studio{padding-top:30px}.studio-grid{grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:22px}.studio-section{padding:20px}.studio-canvas{min-height:350px}.studio-history-list{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-quota{gap:17px;padding:14px 17px}.studio-quota .studio-quota-note{display:none}.studio-result-footer{flex-wrap:wrap}.studio-result-actions{margin-left:auto}}
@media(max-width:800px){.studio-header h1{font-size:32px}.studio-grid{grid-template-columns:minmax(0,1fr)}.studio-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.studio-section+.studio-section{border-top:0;border-left:1px solid var(--line)}.studio-canvas{min-height:340px;max-height:620px}.studio-history-list{grid-template-columns:repeat(4,minmax(0,1fr))}.studio-quota{gap:14px}.studio-header p{font-size:14px}.studio-account{grid-template-columns:minmax(100px,1fr) 100px 100px auto;gap:12px}}
@media(max-width:580px){.studio{width:calc(100% - 40px);padding-top:26px;padding-bottom:44px}.studio-header{display:block;margin-bottom:24px}.studio-header h1{font-size:29px}.studio-quota{margin-top:20px;padding:15px 16px;gap:24px}.studio-quota .studio-quota-note{display:block;max-width:none;margin-left:auto;font-size:10px}.studio-quota strong{font-size:23px}.studio-editor{display:block}.studio-section{padding:21px 18px}.studio-section+.studio-section{border-left:0;border-top:1px solid var(--line)}.studio :is(textarea,input,select){font-size:16px}.studio-canvas{min-height:300px;aspect-ratio:1/1}.studio-canvas-empty h3{font-size:19px}.studio-canvas-empty p{font-size:13px}.studio-result-footer{flex-wrap:wrap}.studio-result-actions{margin-left:auto}.studio-history-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.studio-history-image{height:82px}.studio-history-caption{padding:9px}.studio-history-caption strong{font-size:11px}.studio-entry{padding:18px;gap:12px;flex-wrap:wrap}.studio-entry>span:nth-child(2){flex:1;min-width:0}.studio-entry-action{width:100%;margin:0;padding-left:55px}.studio-entry strong{font-size:17px}.studio-admin{padding:20px 17px}.studio-account{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:15px}.studio-account-name{grid-column:1/-1}.studio-account .studio-button{grid-column:1/-1}.studio-admin-defaults .studio-field{flex:1;min-width:100px}.studio-admin-defaults .studio-button{width:100%}.studio-footer{width:calc(100% - 40px);padding:22px 0 26px;flex-direction:column;gap:6px;font-size:11px}body.lb-studio-page .content-nav-inner{padding-left:14px;padding-right:14px;gap:0 8px}body.lb-studio-page .content-nav-action{white-space:nowrap;flex-shrink:0}body.lb-studio-page .content-account{flex-shrink:0;gap:2px}body.lb-studio-page .content-brand{min-width:0;flex-shrink:1}body.lb-studio-page .content-wordmark{width:clamp(122px,40vw,164px)}body.lb-studio-page .content-primary-nav{gap:24px}}
@media(max-width:370px){.studio,.studio-footer{width:calc(100% - 32px)}.studio-quota{gap:17px;padding:14px}.studio-section{padding:20px 16px}.studio-section-heading>span{font-size:10px}.studio-quota .studio-quota-note{font-size:9px}.studio-history-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.studio-spinner{animation:none;border-color:#91d5b5;border-style:dashed}.studio *{transition:none!important;scroll-behavior:auto!important}}

.studio-reference {
  margin: 18px 0;
  padding: 14px;
  border: 1px dashed #acd7bd48;
  border-radius: 11px;
  background: #a4d2b607;
}
.studio-reference-drag { border-color: #9adfbc; background: #8ed1aa18; }
.studio-reference-heading, .studio-reference-row { display: flex; align-items: center; gap: 10px; }
.studio-reference-heading { justify-content: space-between; margin-bottom: 10px; }
.studio-reference-heading strong { font-size: 14px; font-weight: 500; }
.studio-reference-heading span, .studio-reference-copy small { color: var(--muted); font-size: 11px; }
.studio-reference-copy { flex: 1 1 85px; min-width: 0; }
.studio-reference-copy span, .studio-reference-copy small { display: block; overflow-wrap: anywhere; }
.studio-reference-copy span { font-size: 12px; color: #c3d8ca; }
.studio-reference-copy small { margin-top: 3px; }
.studio-reference-preview { width: 48px; height: 48px; flex: none; border-radius: 7px; object-fit: cover; }
.studio-reference-row { flex-wrap: wrap; }
.studio-reference-row button { font-size: 12px; }
.studio-reference-message { font-size: 12px; line-height: 1.6; color: #b7ccbc; }
.studio-reference-message:not(:empty) { margin-top: 9px; }
.studio-chip.studio-template-applied { border-color: #9bdab178; color: #d1ecdb; background: #94cda71b; }

@media (prefers-reduced-motion: no-preference) {
  .studio-canvas-in { animation: studio-state-in 180ms ease-out; }
  .studio-image-in { animation: studio-image-in 240ms ease-out; }
  .studio-template-applied { animation: studio-template-in 180ms ease-out; }
  .studio-chip { transition: transform 120ms ease-out, background-color 150ms, border-color 150ms; }
  .studio-chip:active:enabled { transform: translateY(1px); }
}
@keyframes studio-state-in { from { opacity: .7; transform: translateY(3px); } }
@keyframes studio-image-in {
  from { clip-path: polygon(0 0, 10% 0, 0 100%, 0 100%); opacity: .8; }
  to { clip-path: polygon(0 0, 110% 0, 100% 100%, 0 100%); opacity: 1; }
}
@keyframes studio-template-in { from { background-color: #94cda739; } }

.studio-slider {
  --studio-progress: 0;
  position: relative;
  isolation: isolate;
  display: block;
  width: 100%;
  height: 56px;
  padding: 0 52px;
  overflow: hidden;
  border: 1px solid #92d7b475;
  border-radius: 99px;
  background: linear-gradient(105deg, #204337, #17372c);
  color: var(--text);
  font-weight: 500;
  user-select: none;
  touch-action: pan-y;
}
.studio-slider:disabled { opacity: .48; cursor: not-allowed; }
.studio-slider[aria-busy=true] { --studio-progress: 1; opacity: .9; }
.studio-slider-fill {
  position: absolute;
  z-index: -1;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(110deg, #6dcb9c45, #307e6955);
  transform: scaleX(var(--studio-progress));
  transform-origin: left center;
}
.studio-slider-label { display: inline-block; color: #c6e7d4; opacity: calc(1 - .72 * var(--studio-progress)); }
.studio-slider[aria-busy=true] .studio-slider-label { opacity: 1; }
.studio-slider-handle {
  position: absolute;
  left: calc(5px + (100% - 54px) * var(--studio-progress));
  top: 50%;
  transform: translateY(-50%);
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border-radius: 50%;
  color: #07251a;
  background: linear-gradient(110deg, #8fe0b6, #58c4a0);
  box-shadow: inset 0 1px 0 #d9ffeb70, 0 2px 7px #0004;
  font: 22px/1 Arial, sans-serif;
}
.studio-slider:enabled .studio-slider-handle { cursor: grab; }
.studio-slider-dragging .studio-slider-handle { cursor: grabbing; }
.studio-slider-check, .studio-slider[aria-busy=true] .studio-slider-arrow { display: none; }
.studio-slider[aria-busy=true] .studio-slider-check { display: inline; }
.studio-canvas-empty svg.studio-contour { height: 82px; width: 170px; overflow: hidden; color: #78b29769; }
.studio-contour-trace { stroke: #a0ddb7; stroke-width: 1.8; stroke-dasharray: 18 82; }
@media (prefers-reduced-motion: no-preference) {
  .studio-slider:not(.studio-slider-dragging) .studio-slider-handle { transition: left 260ms cubic-bezier(.25,.85,.35,1.1); }
  .studio-slider:not(.studio-slider-dragging) .studio-slider-fill { transition: transform 240ms ease-out; }
  .studio-slider:enabled:not(.studio-slider-dragging) .studio-slider-label {
    color: transparent;
    background: linear-gradient(115deg, #aad4bb 35%, #effff2 48%, #aad4bb 61%);
    background-size: 240% 100%;
    background-clip: text;
    animation: studio-slide-sheen 3.2s ease-in-out 2;
  }
  .studio-contour-trace { animation: studio-contour-scan 2s ease-in-out 3; }
  .studio-reference { transition: border-color 140ms ease, box-shadow 140ms ease; }
  .studio-reference-drag { box-shadow: inset 0 0 0 1px #9edbb15c, 0 0 14px #7dd3a314; }
  .studio-reference-drag .studio-reference-copy { transform: translateY(-1px); }
}
@keyframes studio-slide-sheen { from { background-position: 120% 0; } to { background-position: -45% 0; } }
@keyframes studio-contour-scan { from { stroke-dashoffset: 100; } to { stroke-dashoffset: 0; } }
