:root{--ac-bg:#f7f3ec;--ac-bg-soft:#fffaf3;--ac-text:#17130f;--ac-muted:#6f6257;--ac-line:rgba(23,19,15,.12);--ac-brand:#a35f32;--ac-brand-dark:#704120;--ac-brand-soft:#ecd3be;--ac-sage:#6f7f61;--ac-script:"Handsta Signature","SignPainter","Segoe Script","Snell Roundhand",cursive}
.ac-studio{max-width:1800px;margin:0 auto;padding:28px;color:var(--ac-text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.ac-studio *{box-sizing:border-box}.ac-studio__header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.ac-studio__header h1{margin:.25rem 0 .5rem;font-size:clamp(2rem,4vw,4rem);letter-spacing:-.05em}.ac-studio__header p{max-width:760px;margin:0;color:var(--ac-muted);line-height:1.65}.ac-kicker{font-size:.78rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--ac-brand)}.ac-status{padding:10px 14px;border-radius:999px;background:var(--ac-brand-soft);color:var(--ac-brand-dark);font-weight:800}.ac-workspace{display:grid;grid-template-columns:minmax(320px,430px) minmax(0,1fr);gap:24px;align-items:start}.ac-controls{display:grid;gap:16px}.ac-panel{padding:20px;border:1px solid var(--ac-line);border-radius:24px;background:var(--ac-bg-soft);box-shadow:0 14px 34px rgba(23,19,15,.05)}.ac-panel h2{margin:0 0 16px;font-size:1.05rem}.ac-panel label{display:grid;gap:7px;margin-top:13px;font-size:.86rem;font-weight:700}.ac-panel input[type=text],.ac-panel textarea,.ac-panel select{width:100%;padding:11px 12px;border:1px solid var(--ac-line);border-radius:12px;background:#fff;color:var(--ac-text);font:inherit}.ac-panel input:focus,.ac-panel textarea:focus,.ac-panel select:focus{outline:2px solid rgba(163,95,50,.2);border-color:var(--ac-brand)}.ac-upload{display:flex!important;align-items:center;justify-content:center;min-height:46px;padding:10px 14px;border:1px dashed rgba(163,95,50,.45);border-radius:14px;color:var(--ac-brand-dark);background:rgba(236,211,190,.28);cursor:pointer}.ac-upload input{display:none}.ac-image-field+.ac-image-field{margin-top:16px;padding-top:16px;border-top:1px solid var(--ac-line)}.ac-crop-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.ac-crop-controls label{font-size:.72rem}.ac-crop-controls input{width:100%}.ac-topic{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 0;border-top:1px solid var(--ac-line)}.ac-topic:first-child{border-top:0;padding-top:0}.ac-topic textarea{grid-column:1/-1}.ac-icon-picker{grid-column:1/-1;display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.ac-icon-option{display:grid;place-items:center;aspect-ratio:1;border:1px solid var(--ac-line);border-radius:12px;background:#fff;cursor:pointer;color:var(--ac-brand-dark)}.ac-icon-option.is-active{border-color:var(--ac-brand);background:var(--ac-brand-soft);box-shadow:0 0 0 2px rgba(163,95,50,.14)}.ac-icon-option svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.ac-consent{display:grid;gap:12px;margin-top:16px}.ac-consent label{display:grid!important;grid-template-columns:20px 1fr;align-items:start;gap:9px;margin:0;font-weight:500;line-height:1.45}.ac-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ac-button{appearance:none;border:0;border-radius:14px;padding:14px 16px;background:var(--ac-brand);color:#fff;font-weight:800;cursor:pointer}.ac-button--secondary{background:var(--ac-sage)}.ac-button[disabled]{opacity:.55;cursor:wait}.ac-message{min-height:24px;color:var(--ac-muted);font-size:.88rem}.ac-message.is-error{color:#9e2a2b}.ac-message.is-success{color:#37603d}.ac-downloads{display:grid;gap:8px;padding:16px;border-radius:16px;background:var(--ac-brand-soft)}.ac-downloads a{color:var(--ac-brand-dark);font-weight:800}.ac-preview-panel{min-width:0}.ac-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;padding:12px 14px;border:1px solid var(--ac-line);border-radius:18px;background:rgba(255,250,243,.94);backdrop-filter:blur(10px)}.ac-slide-tabs{display:flex;gap:8px}.ac-slide-tab{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--ac-line);border-radius:999px;background:#fff;color:var(--ac-text);font-weight:800;cursor:pointer}.ac-slide-tab.is-active{background:var(--ac-brand);border-color:var(--ac-brand);color:#fff}.ac-preview-toolbar label{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:700}.ac-preview-toolbar select{padding:8px 10px;border:1px solid var(--ac-line);border-radius:10px;background:#fff}.ac-preview-viewport{position:relative;border:1px solid var(--ac-line);border-radius:24px;background:radial-gradient(circle at top left,rgba(163,95,50,.10),transparent 24rem),var(--ac-bg);box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}.ac-preview-scale{width:1080px;height:1350px;transform-origin:top left}.ac-slide-stack{position:relative;width:1080px;height:1350px}.ac-slide{position:absolute;inset:0;display:none;width:1080px;height:1350px;overflow:hidden;background:var(--ac-bg-soft);color:var(--ac-text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.ac-slide.is-active{display:block}.ac-slide h2,.ac-slide h3,.ac-slide p{margin-top:0}.ac-slide h2,.ac-slide h3{letter-spacing:-.05em;line-height:.98}.ac-slide-number{position:absolute;top:40px;left:40px;z-index:12;display:grid;place-items:center;width:74px;height:74px;border:1.5px solid currentColor;border-radius:50%;font-size:22px;font-weight:800}.ac-logo{position:absolute;top:48px;right:56px;z-index:10;width:220px;height:auto}.ac-eyebrow{display:inline-flex;align-items:center;gap:10px;padding:14px 18px;border-radius:999px;background:var(--ac-sage);color:#fff;font-size:18px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.ac-script{font-family:var(--ac-script);font-size:38px;line-height:1.1}.ac-cover{color:#fff;background:#273229}.ac-cover-bg{position:absolute;inset:0;background:center/cover no-repeat;transform-origin:center}.ac-cover-overlay{position:absolute;inset:0;background:linear-gradient(95deg,rgba(23,19,15,.7),rgba(23,19,15,.22) 58%,rgba(23,19,15,.52)),linear-gradient(180deg,transparent 35%,rgba(23,19,15,.72))}.ac-cover-content{position:absolute;left:70px;right:70px;top:92px;bottom:64px;z-index:3;display:flex;flex-direction:column;justify-content:flex-end}.ac-cover h2{max-width:890px;margin:28px 0 24px;font-size:116px;text-transform:uppercase}.ac-cover p{max-width:620px;font-size:29px;line-height:1.45;color:rgba(255,255,255,.88)}.ac-cover-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:48px}.ac-cover-tag{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.08);font-size:16px;letter-spacing:.08em;text-transform:uppercase}.ac-intro{padding:82px 74px;background:radial-gradient(circle at 10% 10%,rgba(236,211,190,.65),transparent 28rem),linear-gradient(180deg,#fffdf9,var(--ac-bg-soft))}.ac-intro h2{margin:120px 0 12px;font-size:88px}.ac-location{display:flex;align-items:center;gap:10px;color:var(--ac-muted);font-size:25px;font-weight:700}.ac-location svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ac-portrait-wrap{position:absolute;left:130px;right:130px;top:385px;height:820px}.ac-portrait-accent{position:absolute;inset:40px 35px 110px;border-radius:46% 54% 44% 56%/51% 40% 60% 49%;background:linear-gradient(145deg,rgba(236,211,190,.9),rgba(163,95,50,.2));transform:rotate(-5deg)}.ac-portrait{position:absolute;left:50%;top:20px;z-index:2;width:680px;height:680px;border:18px solid rgba(255,250,243,.85);border-radius:50%;object-fit:cover;transform:translateX(-50%);box-shadow:0 34px 90px rgba(23,19,15,.16)}.ac-brush{position:absolute;left:50%;bottom:0;z-index:3;width:760px;min-height:220px;padding:60px 70px 55px;background:linear-gradient(165deg,var(--ac-brand-dark),var(--ac-brand));clip-path:polygon(2% 29%,11% 18%,23% 25%,36% 10%,53% 20%,67% 8%,82% 21%,98% 15%,94% 80%,79% 87%,61% 78%,45% 92%,27% 80%,8% 89%);color:#fff;text-align:center;transform:translateX(-50%) rotate(-2deg);filter:drop-shadow(0 24px 30px rgba(112,65,32,.22))}.ac-themes{padding:88px 78px;background:linear-gradient(180deg,#fffdf8,var(--ac-bg-soft))}.ac-themes h2{max-width:760px;margin:110px 0 56px;font-size:82px}.ac-theme-list{display:grid;gap:23px}.ac-theme-item{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:26px;padding:22px 24px;border:1px solid rgba(23,19,15,.06);border-radius:28px;background:rgba(255,255,255,.7);box-shadow:0 14px 34px rgba(23,19,15,.05)}.ac-theme-icon{display:grid;place-items:center;width:94px;height:94px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,255,255,.48)),var(--ac-brand-soft);color:var(--ac-brand-dark);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 16px 36px rgba(23,19,15,.08)}.ac-theme-icon svg{width:43px;height:43px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.ac-theme-item h3{margin:0 0 8px;font-size:34px;text-transform:uppercase}.ac-theme-item p{margin:0;color:var(--ac-muted);font-size:23px;line-height:1.42}.ac-place{padding:88px 74px;background:linear-gradient(180deg,#fffdf8,var(--ac-bg-soft))}.ac-place h2{margin:110px 0 12px;font-size:78px}.ac-place-photo{position:absolute;left:74px;right:74px;top:315px;height:690px;border-radius:36px;overflow:hidden;box-shadow:0 18px 50px rgba(23,19,15,.08)}.ac-place-bg{position:absolute;inset:0;background:center/cover no-repeat;transform-origin:center}.ac-place-card{position:absolute;left:130px;right:130px;top:945px;z-index:3;padding:34px 40px 30px 100px;border:1px solid rgba(23,19,15,.08);border-radius:30px;background:rgba(255,250,243,.96);box-shadow:0 24px 54px rgba(23,19,15,.1)}.ac-place-card p{position:relative;margin:0;font-size:30px;font-weight:650;line-height:1.45}.ac-place-quote-mark{position:absolute;left:30px;top:6px;color:var(--ac-brand);font-size:112px;font-weight:900;line-height:1}.ac-place-card .ac-script{margin-top:10px;color:var(--ac-brand-dark)}.ac-cta{padding:84px 76px;background:linear-gradient(rgba(36,54,40,.9),rgba(36,54,40,.97)),linear-gradient(135deg,#29372d,#435243);color:#fff}.ac-cta h2{max-width:860px;margin:190px 0 28px;font-size:94px;text-transform:uppercase}.ac-cta>p{max-width:760px;color:rgba(255,255,255,.84);font-size:28px;line-height:1.5}.ac-cta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:66px}.ac-cta-item{min-height:286px;padding:34px 28px;border-radius:30px;background:rgba(255,250,243,.94);color:var(--ac-text);text-align:center;box-shadow:0 28px 80px rgba(0,0,0,.18)}.ac-cta-icon{display:grid;place-items:center;width:88px;height:88px;margin:0 auto 22px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,255,255,.48)),var(--ac-brand-soft);color:var(--ac-brand-dark)}.ac-cta-icon svg{width:43px;height:43px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.ac-cta-item strong{display:block;margin-bottom:10px;font-size:24px;text-transform:uppercase}.ac-cta-item span{display:block;color:var(--ac-muted);font-size:19px;line-height:1.45}.ac-cta-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:52px}.ac-cta-bottom .ac-script{max-width:500px}.ac-studio-message{padding:20px;border:1px solid #ddd;background:#fff}@media(max-width:1200px){.ac-workspace{grid-template-columns:360px minmax(0,1fr)}}@media(max-width:900px){.ac-studio{padding:16px}.ac-studio__header{align-items:flex-start;flex-direction:column}.ac-workspace{grid-template-columns:1fr}.ac-preview-panel{position:static;order:-1}.ac-preview-viewport{min-height:620px}.ac-crop-controls{grid-template-columns:1fr}.ac-actions{grid-template-columns:1fr}.ac-icon-picker{grid-template-columns:repeat(5,1fr)}}

/* v0.2.3: Canvas-WYSIWYG, eine Scrollleiste, sticky Vorschau und Body-Lightbox */
.ac-workspace{height:auto;min-height:0;align-items:start}
.ac-controls{min-height:0;overflow:visible;padding-right:0}
.ac-preview-panel{position:sticky;top:20px;display:flex;min-width:0;height:calc(100dvh - 40px);max-height:calc(100dvh - 40px);flex-direction:column;align-self:start}
.ac-preview-toolbar{flex:0 0 auto}
.ac-preview-open{appearance:none;border:1px solid var(--ac-line);border-radius:999px;padding:10px 15px;background:#fff;color:var(--ac-brand-dark);font-weight:800;cursor:pointer;transition:.2s ease}
.ac-preview-open:hover{border-color:var(--ac-brand);background:var(--ac-brand-soft)}
.ac-preview-viewport{display:grid;flex:1;place-items:center;min-height:0;overflow:hidden;padding:16px}
.ac-preview-scale{position:relative;width:auto;height:auto;transform:none!important;margin:0!important}
.ac-preview-scale>.ac-slide-stack{position:absolute;inset:0 auto auto 0}
.ac-preview-canvas{display:block;width:1080px;height:1350px;max-width:none}
.ac-icon-option svg,.ac-location svg,.ac-theme-icon svg,.ac-cta-icon svg{stroke-width:2!important;vector-effect:non-scaling-stroke}

.ac-lightbox[hidden]{display:none!important}
.ac-lightbox{position:fixed!important;inset:0!important;z-index:2147483647!important;display:block;width:100vw!important;height:100dvh!important;margin:0!important;padding:0!important;overflow:hidden!important;contain:layout paint style}
.ac-lightbox__backdrop{position:absolute;inset:0;background:rgba(23,19,15,.86);backdrop-filter:blur(10px)}
.ac-lightbox__dialog{position:absolute;inset:0;z-index:2;display:flex;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;overflow:hidden;border:0;border-radius:0;background:var(--ac-bg);box-shadow:none;flex-direction:column}
.ac-lightbox__toolbar{position:relative;z-index:3;display:flex;flex:0 0 auto;align-items:center;gap:14px;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--ac-line);background:rgba(255,250,243,.98)}
.ac-lightbox__toolbar label{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:.85rem;font-weight:800}
.ac-lightbox__toolbar select{padding:8px 10px;border:1px solid var(--ac-line);border-radius:10px;background:#fff;color:var(--ac-text)}
.ac-lightbox__close{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--ac-line);border-radius:999px;background:#fff;color:var(--ac-text);font-size:30px;line-height:1;cursor:pointer}
.ac-lightbox__viewport{display:grid;flex:1;min-width:0;min-height:0;place-items:start center;overflow:auto;overscroll-behavior:contain;padding:28px;background:radial-gradient(circle at top left,rgba(163,95,50,.10),transparent 24rem),var(--ac-bg)}
.ac-lightbox__scale{position:relative;margin:auto}
.ac-lightbox__scale>.ac-slide-stack{position:absolute;inset:0 auto auto 0}
html.ac-lightbox-open,html.ac-lightbox-open body{overflow:hidden!important;overscroll-behavior:none}

@media(max-width:900px){
  .ac-workspace{height:auto;min-height:0}
  .ac-controls{overflow:visible;padding-right:0}
  .ac-preview-panel{position:static;height:auto;max-height:none;min-height:0;order:-1}
  .ac-preview-viewport{height:min(68dvh,680px);min-height:500px}
  .ac-lightbox__toolbar{flex-wrap:wrap}
  .ac-lightbox__toolbar label{margin-left:0}
  .ac-lightbox__viewport{padding:16px}
}


/* Range inputs: clear track + thumb, resistant to theme resets */
.ac-crop-controls input[type="range"]{
  --ac-range-progress:50%;
  -webkit-appearance:none!important;
  appearance:none!important;
  display:block!important;
  width:100%!important;
  height:8px!important;
  min-height:8px!important;
  margin:8px 0 6px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  outline:0!important;
  background:linear-gradient(to right,var(--ac-brand) 0,var(--ac-brand) var(--ac-range-progress),rgba(23,19,15,.16) var(--ac-range-progress),rgba(23,19,15,.16) 100%)!important;
  box-shadow:inset 0 0 0 1px rgba(23,19,15,.05)!important;
  cursor:pointer!important;
}
.ac-crop-controls input[type="range"]::-webkit-slider-runnable-track{
  height:8px!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
}
.ac-crop-controls input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none!important;
  appearance:none!important;
  width:20px!important;
  height:20px!important;
  margin-top:-6px!important;
  border:3px solid #fff!important;
  border-radius:50%!important;
  background:var(--ac-brand)!important;
  box-shadow:0 0 0 1px rgba(112,65,32,.3),0 3px 9px rgba(23,19,15,.18)!important;
}
.ac-crop-controls input[type="range"]::-moz-range-track{
  height:8px!important;
  border:0!important;
  border-radius:999px!important;
  background:rgba(23,19,15,.16)!important;
}
.ac-crop-controls input[type="range"]::-moz-range-progress{
  height:8px!important;
  border-radius:999px!important;
  background:var(--ac-brand)!important;
}
.ac-crop-controls input[type="range"]::-moz-range-thumb{
  width:16px!important;
  height:16px!important;
  border:3px solid #fff!important;
  border-radius:50%!important;
  background:var(--ac-brand)!important;
  box-shadow:0 0 0 1px rgba(112,65,32,.3),0 3px 9px rgba(23,19,15,.18)!important;
}


/* v0.2.5: explicit hidden downloads + recognizable selects */
.ac-downloads[hidden]{display:none!important}
.ac-downloads:empty{display:none!important}

.ac-panel select,
.ac-lightbox__toolbar select{
  -webkit-appearance:none!important;
  appearance:none!important;
  min-height:44px!important;
  padding:10px 44px 10px 13px!important;
  border:1px solid var(--ac-line)!important;
  border-radius:12px!important;
  background-color:#fff!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23704120' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:right 13px center!important;
  background-size:18px 18px!important;
  color:var(--ac-text)!important;
  font:inherit!important;
  line-height:1.25!important;
  cursor:pointer!important;
  box-shadow:0 1px 0 rgba(23,19,15,.03)!important;
}
.ac-panel select:hover,
.ac-lightbox__toolbar select:hover{border-color:rgba(163,95,50,.5)!important}
.ac-panel select:focus,
.ac-lightbox__toolbar select:focus{outline:2px solid rgba(163,95,50,.18)!important;outline-offset:1px!important;border-color:var(--ac-brand)!important}


/* v0.2.9: quote-box validation + complete third-line rendering */
.ac-field-error{display:none;margin-top:6px;color:#9e2a2b;font-size:.82rem;font-weight:700;line-height:1.35}
.ac-field-error.is-visible{display:block}
.ac-panel textarea.is-invalid{border-color:#b42318!important;box-shadow:0 0 0 3px rgba(180,35,24,.10)!important;background:#fff8f7!important}


/* v0.2.10: dedicated page template + top-aligned responsive preview */
.ac-carousel-page{margin:0!important;padding:0!important}
body.ac-carousel-studio-page .fusion-page-title-bar,
body.ac-carousel-studio-page .page-title-bar{display:none!important}
.ac-preview-viewport{place-items:start center!important;align-content:start!important}

@media(max-width:900px){
  .ac-workspace{display:grid!important;grid-template-columns:1fr!important}
  .ac-controls{order:1!important}
  .ac-preview-panel{position:static!important;order:2!important;height:auto!important;max-height:none!important;min-height:0!important}
  .ac-preview-toolbar{flex-wrap:wrap!important;align-items:center!important}
  .ac-slide-tabs{flex:1 1 auto!important}
  .ac-preview-open{flex:0 0 100%!important;width:100%!important;margin-top:2px!important}
  .ac-preview-viewport{height:auto;min-height:0!important;place-items:start center!important;align-content:start!important;overflow:hidden!important}
}


/* v0.2.11: framed studio, two-column settings and mobile completion order */
.ac-studio{
  width:min(1800px,calc(100% - 32px));
  margin:16px auto!important;
  padding:clamp(28px,5vw,56px)!important;
  border:1px solid var(--ac-line);
  border-radius:32px;
  background:rgba(255,255,255,.72);
  box-shadow:0 24px 70px rgba(23,19,15,.10);
}
.ac-workspace{
  display:grid!important;
  grid-template-columns:minmax(620px,.95fr) minmax(0,1.05fr)!important;
  grid-template-rows:auto auto;
  gap:24px!important;
  align-items:start!important;
}
.ac-controls{
  grid-column:1;
  grid-row:1;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px!important;
  align-items:start;
}
.ac-preview-panel{
  grid-column:2;
  grid-row:1 / span 2;
  align-self:start;
}
.ac-completion{
  grid-column:1;
  grid-row:2;
  display:grid;
  gap:12px;
  min-width:0;
}

@media (min-width:901px) and (max-width:1200px){
  .ac-workspace{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto auto;
  }
  .ac-controls{
    grid-column:1;
    grid-row:1;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .ac-preview-panel{
    position:static!important;
    grid-column:1;
    grid-row:2;
    height:auto!important;
    max-height:none!important;
  }
  .ac-completion{
    grid-column:1;
    grid-row:3;
  }
}

@media (max-width:900px){
  .ac-studio{
    width:calc(100% - 16px);
    margin:8px auto!important;
    padding:14px!important;
    border-radius:22px;
  }
  .ac-workspace{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto auto;
    gap:16px!important;
  }
  .ac-controls{
    grid-column:1!important;
    grid-row:1!important;
    order:initial!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
  }
  .ac-preview-panel{
    grid-column:1!important;
    grid-row:2!important;
    order:initial!important;
  }
  .ac-completion{
    grid-column:1!important;
    grid-row:3!important;
    gap:10px;
  }
  .ac-panel{padding:16px}
}


/* v0.2.12: registered creator self-service magic link */
.ac-magic-access{
  width:min(820px,calc(100% - 32px));
  margin:clamp(32px,7vw,90px) auto;
  padding:clamp(28px,5vw,56px);
  border:1px solid var(--ac-line);
  border-radius:32px;
  background:rgba(255,255,255,.78);
  box-shadow:0 24px 70px rgba(23,19,15,.10);
}
.ac-magic-access__intro h1{margin:10px 0 14px;font-size:clamp(2rem,5vw,3.8rem);line-height:1;letter-spacing:-.05em;color:var(--ac-text)}
.ac-magic-access__intro p{max-width:680px;margin:0;color:var(--ac-muted);font-size:1.05rem;line-height:1.65}
.ac-magic-access__form{position:relative;display:grid;gap:10px;margin-top:26px;padding:22px;border:1px solid var(--ac-line);border-radius:22px;background:var(--ac-bg-soft)}
.ac-magic-access__form>label{margin:0;font-weight:800;color:var(--ac-text)}
.ac-magic-access__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.ac-magic-access__row input{min-width:0;height:50px;padding:0 15px;border:1px solid var(--ac-line);border-radius:14px;background:#fff;color:var(--ac-text);font:inherit;outline:none}
.ac-magic-access__row input:focus{border-color:var(--ac-brand);box-shadow:0 0 0 3px rgba(163,95,50,.12)}
.ac-magic-access__row .ac-button{min-height:50px;white-space:nowrap}
.ac-magic-access__form small{color:var(--ac-muted)}
.ac-magic-access__message{margin-top:22px;padding:14px 16px;border-radius:14px;background:rgba(111,127,97,.12);color:#37603d;font-weight:650;line-height:1.5}
.ac-magic-access__message.is-error{background:rgba(158,42,43,.08);color:#9e2a2b}
.ac-magic-access__hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:640px){
  .ac-magic-access{width:calc(100% - 16px);margin:16px auto;padding:18px;border-radius:22px}
  .ac-magic-access__form{padding:16px}
  .ac-magic-access__row{grid-template-columns:1fr}
  .ac-magic-access__row .ac-button{width:100%}
}


/* v0.2.14: upload states, extra creator material and next steps */
.ac-panel--full{grid-column:1/-1}
.ac-panel-intro{margin:0 0 14px;color:var(--ac-muted);font-size:.94rem;line-height:1.6}
.ac-upload-hint{display:block;margin-top:7px;color:var(--ac-muted);font-size:.79rem;line-height:1.45}
.ac-upload-state[hidden]{display:none!important}
.ac-upload-state{display:flex;align-items:center;gap:9px;margin-top:9px;padding:9px 11px;border:1px solid rgba(163,95,50,.18);border-radius:12px;background:rgba(247,243,236,.78);color:var(--ac-brand-dark);font-size:.82rem;font-weight:750;line-height:1.35}
.ac-upload-spinner{display:inline-block;flex:0 0 auto;width:17px;height:17px;border:2px solid rgba(163,95,50,.22);border-top-color:var(--ac-brand);border-radius:50%;animation:ac-upload-spin .75s linear infinite}
@keyframes ac-upload-spin{to{transform:rotate(360deg)}}
.ac-image-field.is-uploading,.ac-extra-media.is-uploading{opacity:.92}
.ac-extra-media-list{display:grid;gap:8px;margin-top:14px}
.ac-extra-media-empty{padding:11px 13px;border:1px dashed var(--ac-line);border-radius:12px;color:var(--ac-muted);font-size:.84rem}
.ac-extra-media-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--ac-line);border-radius:14px;background:rgba(255,255,255,.72)}
.ac-extra-media-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;background:var(--ac-brand-soft);color:var(--ac-brand-dark);font-size:14px;font-weight:900}
.ac-extra-media-name{display:grid;min-width:0;gap:2px}
.ac-extra-media-name strong{overflow:hidden;color:var(--ac-text);font-size:.86rem;text-overflow:ellipsis;white-space:nowrap}
.ac-extra-media-name small{color:var(--ac-muted);font-size:.75rem}
.ac-extra-media-remove{appearance:none;padding:7px 10px;border:1px solid var(--ac-line);border-radius:999px;background:#fff;color:var(--ac-brand-dark);font:inherit;font-size:.76rem;font-weight:800;cursor:pointer}
.ac-extra-media-remove:hover{border-color:rgba(163,95,50,.5);background:var(--ac-bg)}
.ac-next-steps[hidden]{display:none!important}
.ac-next-steps{margin-top:4px;padding:18px 20px;border:1px solid rgba(111,127,97,.25);border-radius:18px;background:rgba(111,127,97,.09)}
.ac-next-steps strong{display:block;margin-bottom:6px;color:var(--ac-text);font-size:1rem}
.ac-next-steps p{margin:0;color:var(--ac-muted);font-size:.9rem;line-height:1.55}
@media(max-width:900px){
  .ac-panel--full{grid-column:1}
  .ac-extra-media-item{grid-template-columns:32px minmax(0,1fr);align-items:start}
  .ac-extra-media-remove{grid-column:2;justify-self:start}
}


/* v0.2.15: clear image completion status + private upload UX */
.ac-image-overview{display:grid;gap:9px;margin:0 0 15px;padding:12px 13px;border:1px solid var(--ac-line);border-radius:14px;background:rgba(247,243,236,.72)}
.ac-image-overview__head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ac-text);font-size:.85rem}
.ac-image-overview__head span{color:var(--ac-muted);font-size:.78rem;font-weight:750}
.ac-image-overview__items{display:flex;flex-wrap:wrap;gap:6px}
.ac-image-overview__items span{padding:5px 8px;border:1px solid rgba(158,42,43,.18);border-radius:999px;background:rgba(158,42,43,.06);color:#8a3334;font-size:.72rem;font-weight:800}
.ac-image-overview__items span.is-complete{border-color:rgba(111,127,97,.24);background:rgba(111,127,97,.10);color:#47613f}
.ac-image-overview.is-complete{border-color:rgba(111,127,97,.28);background:rgba(111,127,97,.08)}
.ac-image-field{transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.ac-image-field.is-missing{border-color:rgba(158,42,43,.16)}
.ac-image-field.has-image{border-color:rgba(111,127,97,.28);background:rgba(255,255,255,.82)}
.ac-image-presence{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;border-radius:11px;font-size:.76rem;line-height:1.35}
.ac-image-presence.is-missing{background:rgba(158,42,43,.055);color:#823334}
.ac-image-presence.is-complete{background:rgba(111,127,97,.10);color:#42573b}
.ac-image-presence__badge{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:rgba(255,255,255,.72);font-size:.69rem;font-weight:900;text-transform:uppercase;letter-spacing:.03em}
.ac-image-presence strong{font-weight:850}
@media(max-width:640px){.ac-image-overview__head{align-items:flex-start;flex-direction:column;gap:3px}.ac-image-overview__items{display:grid;grid-template-columns:1fr}.ac-image-presence{align-items:flex-start;flex-direction:column;gap:5px}}


/* v0.2.16: filename truncation and optional creator notes */
.ac-image-presence{min-width:0;overflow:hidden}
.ac-image-presence__file{display:block;min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ac-image-presence__file strong{font-weight:850}
.ac-extra-media-name{overflow:hidden}
.ac-extra-media-name[title]{cursor:help}
@media(max-width:640px){.ac-image-presence__file{width:100%;max-width:100%}}



/* v0.2.18: coherent form UI hierarchy and field contrast */
:root{
  --ac-ui-panel:rgba(247,243,236,.82);
  --ac-ui-field:#ffffff;
  --ac-ui-field-hover:#fffdf9;
  --ac-ui-border:rgba(23,19,15,.14);
  --ac-ui-border-strong:rgba(23,19,15,.22);
  --ac-ui-shadow:0 12px 30px rgba(23,19,15,.055);
  --ac-ui-focus:0 0 0 3px rgba(163,95,50,.12);
}

/* Cards: warm surface, visibly separated from editable fields */
.ac-panel{
  padding:22px!important;
  border:1px solid rgba(23,19,15,.11)!important;
  border-radius:24px!important;
  background:var(--ac-ui-panel)!important;
  box-shadow:var(--ac-ui-shadow)!important;
}
.ac-panel h2{
  margin:0 0 18px!important;
  color:var(--ac-text);
  font-size:1.08rem!important;
  line-height:1.25;
  letter-spacing:-.015em;
}
.ac-panel label{
  gap:8px!important;
  margin-top:15px!important;
  color:var(--ac-text);
  font-size:.88rem!important;
  font-weight:750!important;
  line-height:1.35;
}
.ac-panel > label:first-of-type{margin-top:0!important}

/* Editable fields: always white and clearly inset from the warm cards */
.ac-panel input[type="text"],
.ac-panel input[type="email"],
.ac-panel textarea,
.ac-panel select,
.ac-magic-access__row input{
  width:100%;
  border:1px solid var(--ac-ui-border)!important;
  background-color:var(--ac-ui-field)!important;
  color:var(--ac-text)!important;
  box-shadow:0 1px 2px rgba(23,19,15,.035)!important;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease!important;
}
.ac-panel input[type="text"],
.ac-panel input[type="email"],
.ac-panel textarea{
  padding:12px 13px!important;
  border-radius:13px!important;
  font:inherit!important;
  line-height:1.45!important;
}
.ac-panel input[type="text"],
.ac-panel input[type="email"]{min-height:48px!important}
.ac-panel textarea{min-height:112px;resize:vertical}
.ac-panel input[type="text"]:hover,
.ac-panel input[type="email"]:hover,
.ac-panel textarea:hover,
.ac-panel select:hover,
.ac-magic-access__row input:hover{
  border-color:var(--ac-ui-border-strong)!important;
  background-color:var(--ac-ui-field-hover)!important;
}
.ac-panel input[type="text"]:focus,
.ac-panel input[type="email"]:focus,
.ac-panel textarea:focus,
.ac-panel select:focus,
.ac-magic-access__row input:focus{
  outline:0!important;
  border-color:var(--ac-brand)!important;
  background-color:#fff!important;
  box-shadow:var(--ac-ui-focus)!important;
}
.ac-panel input::placeholder,
.ac-panel textarea::placeholder{color:rgba(111,98,87,.68);opacity:1}

/* Selects keep their visual dropdown affordance */
.ac-panel select,
.ac-lightbox__toolbar select{
  background-color:var(--ac-ui-field)!important;
  border-color:var(--ac-ui-border)!important;
  box-shadow:0 1px 2px rgba(23,19,15,.035)!important;
}
.ac-panel select:hover,
.ac-lightbox__toolbar select:hover{background-color:var(--ac-ui-field-hover)!important}

/* Upload controls look interactive instead of like another input field */
.ac-upload{
  min-height:50px!important;
  padding:11px 15px!important;
  border:1.5px dashed rgba(163,95,50,.48)!important;
  border-radius:14px!important;
  background:rgba(236,211,190,.20)!important;
  color:var(--ac-brand-dark)!important;
  font-weight:800!important;
  transition:border-color .18s ease,background-color .18s ease,transform .18s ease!important;
}
.ac-upload:hover{
  border-color:var(--ac-brand)!important;
  background:rgba(236,211,190,.38)!important;
}
.ac-upload:focus-within{box-shadow:var(--ac-ui-focus)!important}
.ac-upload-hint{margin-top:8px!important;color:var(--ac-muted)!important}

/* Image status uses quiet neutral/green/red surfaces, not the card color */
.ac-image-overview{
  padding:13px 14px!important;
  border-color:rgba(23,19,15,.10)!important;
  background:rgba(255,255,255,.64)!important;
}
.ac-image-overview.is-complete{
  border-color:rgba(111,127,97,.28)!important;
  background:rgba(111,127,97,.08)!important;
}
.ac-image-field.has-image{background:transparent!important}
.ac-image-presence.is-complete{background:rgba(111,127,97,.11)!important}
.ac-image-presence.is-missing{background:rgba(158,42,43,.06)!important}
.ac-image-presence__badge{background:rgba(255,255,255,.86)!important}
.ac-upload-state{background:rgba(255,255,255,.74)!important}

/* Topic rows and extra media: subtle separation without nested beige boxes */
.ac-topic{border-color:rgba(23,19,15,.09)!important}
.ac-icon-option{
  border-color:var(--ac-ui-border)!important;
  background:#fff!important;
  box-shadow:0 1px 2px rgba(23,19,15,.025);
}
.ac-icon-option:hover{border-color:rgba(163,95,50,.42)!important;background:#fffdf9!important}
.ac-icon-option.is-active{
  border-color:var(--ac-brand)!important;
  background:rgba(236,211,190,.72)!important;
}
.ac-extra-media-empty{background:rgba(255,255,255,.48)}
.ac-extra-media-item{
  border-color:rgba(23,19,15,.10)!important;
  background:#fff!important;
  box-shadow:0 1px 2px rgba(23,19,15,.025);
}
.ac-extra-media-remove{background:#fff!important}

/* Completion / consent */
.ac-consent label{
  padding:10px 0;
  border-top:1px solid rgba(23,19,15,.08);
}
.ac-consent label:first-child{border-top:0}
.ac-consent input[type="checkbox"]{accent-color:var(--ac-brand)}
.ac-actions .ac-button{transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}
.ac-actions .ac-button:not([disabled]):hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(23,19,15,.10)}

/* Magic-link form follows the same surface hierarchy */
.ac-magic-access__form{background:var(--ac-ui-panel)!important}
.ac-magic-access__row input{
  min-height:50px!important;
  padding:0 15px!important;
  border-radius:14px!important;
}

/* Keep requested sticky offset */
@media(min-width:1201px){
  .ac-preview-panel{
    top:89px!important;
    height:calc(100dvh - 109px)!important;
    max-height:calc(100dvh - 109px)!important;
  }
}

@media(max-width:900px){
  .ac-panel{padding:17px!important;border-radius:20px!important}
  .ac-panel h2{margin-bottom:15px!important}
  .ac-panel label{margin-top:13px!important}
  .ac-panel input[type="text"],
  .ac-panel input[type="email"]{min-height:46px!important}
  .ac-panel textarea{min-height:104px}
}
