/* Marketing-Studio: Content Engine, Redaktionsplan, Vorschau.
   Grundlagen (Tokens, Buttons, Badges, Panels) kommen aus style.css/suite.css. */
.section-line{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;margin:40px 0 16px}
.section-line h2{margin:0}
.section-line .eyebrow{margin-bottom:4px;color:var(--link)}

/* Produktionsvertrag */
.production-rail{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin:0;padding:0;list-style:none}
.production-step{display:grid;gap:2px;padding:16px;background:var(--surface);min-width:0}
.production-step>span{font-size:.75rem;font-weight:700;color:var(--link);letter-spacing:.06em}
.production-step strong{font-size:1rem}
.production-step small{font-size:.8125rem;color:var(--ink-2)}
.production-step.future{background:var(--surface-2)}
.production-step.future span,.production-step.future strong,.production-step.future small{color:var(--ink-2)}

/* Kampagnen */
.campaign-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px}
.campaign-tile{display:grid;align-content:space-between;gap:16px;text-align:left;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);min-width:0;min-height:44px;transition:border-color .15s,box-shadow .15s,background-color .15s}
.campaign-tile:hover{border-color:var(--field);box-shadow:var(--sh-1)}
.campaign-tile[aria-pressed="true"]{border:2px solid var(--link);padding:19px;background:var(--soft)}
.campaign-top,.campaign-bottom{display:flex;justify-content:space-between;gap:12px;font-size:.8125rem;color:var(--ink-2)}
.campaign-top{font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.campaign-top>span{font-weight:500;text-transform:none;letter-spacing:0}
.campaign-tile>strong{font-size:1.25rem;line-height:1.3;letter-spacing:-.015em;text-wrap:balance}
.campaign-bottom{padding-top:12px;border-top:1px solid var(--line-soft)}

/* Filter */
.studio-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:20px}
.studio-filters label{flex:1 1 180px;max-width:320px}
.studio-connection{margin-left:auto;align-self:center;display:flex;gap:8px;align-items:center;font-size:.875rem;color:var(--ink-2)}

/* Status-Board */
.studio-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}
.board-lane{min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface-2);min-height:240px}
.lane-head{display:flex;align-items:center;gap:8px;padding:4px 4px 12px}
.lane-head h3{margin:0;font-size:1rem}
.lane-number{font-size:.75rem;font-weight:700;color:var(--ink-2)}
.lane-count{margin-left:auto;min-width:28px;padding:2px 8px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-size:.8125rem;font-weight:700;text-align:center}
.studio-card{margin-bottom:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-s);overflow:hidden;box-shadow:var(--sh-1)}
.studio-card:last-child{margin:0}
.creative-art{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:12px;min-height:140px;padding:16px;background:#153f3b;color:#f0f9f2}
.creative-art:after{content:'';position:absolute;right:-28px;bottom:-28px;width:100px;height:100px;border:18px solid rgba(195,245,213,.16);border-radius:50%;z-index:-1}
.art-meta,.art-bottom{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:.75rem;font-weight:650;letter-spacing:.04em}
.creative-art>strong{font-size:1.25rem;line-height:1.2;letter-spacing:-.02em;overflow-wrap:anywhere;text-wrap:balance}
.art-mint{background:#c2edcf;color:#12351f}.art-paper{background:#efece2;color:#26382d}
.art-large{min-height:280px;border-radius:var(--r-s)}.art-large>strong{font-size:1.75rem}
.studio-card-body{padding:14px}
.studio-card-meta{display:flex;justify-content:space-between;gap:8px;font-size:.8125rem;color:var(--ink-2)}
.studio-card h3{margin:10px 0 6px;font-size:1rem;line-height:1.35;overflow-wrap:anywhere}
.studio-copy{margin-bottom:12px;font-size:.875rem;line-height:1.55;overflow-wrap:anywhere}
.studio-card-foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding-top:10px;border-top:1px solid var(--line-soft)}
.studio-card-foot>span{font-size:.8125rem;color:var(--ink-2)}
.studio-card-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.studio-card-controls .btn{flex:1 1 120px}
.lane-empty{display:grid;place-content:center;justify-items:center;gap:8px;min-height:160px;padding:20px;border:2px dashed var(--field);border-radius:var(--r-s);text-align:center}
.lane-empty>span{font-size:1.5rem;color:var(--ink-2)}
.lane-empty p{margin:0;font-size:.875rem}
.lane-more{margin-top:12px}.lane-more .btn{width:100%}

/* Redaktionsplan */
.week-toolbar,.week-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.week-toolbar{justify-content:space-between;margin-bottom:20px}
.week-controls h2{margin:0 0 0 8px;font-size:1.25rem}
.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--surface)}
.week-day{min-width:0;min-height:260px;padding:12px;border-right:1px solid var(--line-soft)}
.week-day:last-child{border-right:0}
.is-today{background:var(--soft)}
.day-label{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:baseline;padding-bottom:12px;margin-bottom:4px;border-bottom:1px solid var(--line-soft)}
.day-label>span:first-child{font-size:.875rem;font-weight:650;color:var(--ink-2)}
.day-label strong{font-size:1.5rem;font-weight:700}
.today-tag{padding:2px 8px;border-radius:999px;background:var(--deep);color:#fff;font-size:.75rem;font-weight:700}
.calendar-entry{display:block;width:100%;margin-top:10px;padding:10px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-s);min-width:0}
.calendar-entry:hover{background:var(--surface-2)}
.calendar-entry>span:first-child{font-size:.8125rem;color:var(--ink-2)}
.calendar-entry strong{display:block;margin:4px 0 8px;font-size:.9375rem;line-height:1.35;overflow-wrap:anywhere}
.day-empty{margin:16px 0 0;font-size:.875rem;color:var(--ink-3)}
.week-summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;padding:20px 0}
.week-summary p{flex:1 1 260px;margin:0;font-size:.875rem}

/* Vorschau */
.preview-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.preview-copy{white-space:pre-wrap;overflow-wrap:anywhere}
.preview-brief{display:grid;gap:8px;margin:16px 0}
.preview-brief>div{padding:10px 12px;background:var(--surface-2);border-radius:var(--r-s)}
.preview-brief dt{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.preview-brief dd{margin:2px 0 0;font-size:.9375rem}

/* Formatwerkstatt */
.format-lab{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.4fr);gap:32px;margin-top:40px;padding:32px;border-radius:var(--r);background-color:var(--deep);background-image:var(--hero-pattern);background-size:32px 32px;color:#fff;--focus:#fff}
.format-lab p{color:#d3e3de}.format-lab .eyebrow{color:var(--accent)}
.format-lab h2{font-size:clamp(1.5rem,1.1rem + 1.2vw,2.25rem);line-height:1.15}
.format-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.22);border:1px solid rgba(255,255,255,.22);align-self:start}
.format-grid>div{display:grid;gap:2px;align-content:space-between;min-height:104px;padding:16px;background:var(--deep)}
.format-grid span,.format-grid small{font-size:.8125rem;color:#cfe0da}
.format-grid strong{font-size:1rem;color:var(--accent)}

@media(max-width:1180px){
 .studio-board{grid-template-columns:repeat(2,minmax(0,1fr))}
 .week-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .week-day{border-bottom:1px solid var(--line-soft)}
 .format-lab{grid-template-columns:1fr}
}
@media(max-width:820px){
 .production-rail{grid-template-columns:repeat(2,minmax(0,1fr))}
 .week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .studio-connection{width:100%;margin:0}
 .preview-layout{grid-template-columns:1fr}
 .art-large{min-height:200px}
}
@media(max-width:560px){
 .studio-board,.week-grid{grid-template-columns:1fr}
 .week-day{min-height:0;border-right:0}
 .week-controls h2{width:100%;margin:8px 0 0}
 .studio-filters label{flex-basis:100%;max-width:none}
 .format-lab{padding:24px 20px}
 .format-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .section-line{margin-top:32px}
}
