:root{--bg:#f2efe8;--paper:#fff;--ink:#171717;--muted:rgba(23,23,23,.57);--line:rgba(0,0,0,.085);--soft:#faf8f3;--dark:#171717;--green:#35744c;--amber:#9b672c;--shadow:0 24px 70px rgba(29,25,19,.07)}
*{box-sizing:border-box}html,body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;background:linear-gradient(180deg,#f4f1eb,#efece5);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}
.app-header{height:78px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(244,241,235,.88);backdrop-filter:blur(18px);position:sticky;top:0;z-index:20}.brand{display:flex;flex-direction:column}.brand span{font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}.brand strong{font-size:15px;letter-spacing:.01em}.header-actions,.nav-right,.editor-actions{display:flex;gap:10px;align-items:center}
.app-shell{max-width:1540px;margin:auto;padding:30px;display:grid;grid-template-columns:292px minmax(0,1fr);gap:26px}.sidebar{position:sticky;top:108px;align-self:start}.sidebar-card{padding:28px;border:1px solid rgba(255,255,255,.72);border-radius:30px;background:rgba(255,255,255,.7);backdrop-filter:blur(14px);box-shadow:0 16px 45px rgba(29,25,19,.045),inset 0 1px 0 rgba(255,255,255,.8)}.sidebar-kicker,.section-head span{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}.sidebar h1{font-size:29px;letter-spacing:-.035em;margin:11px 0}.sidebar p,.section-head p,.publish-bar p,.upload-card p,.media-note p{color:var(--muted);line-height:1.72;margin:0}.progress{height:7px;background:#e7e2d9;border-radius:99px;margin-top:25px;overflow:hidden}.progress span{display:block;height:100%;width:20%;background:var(--dark);transition:.25s}.progress-label{display:flex;justify-content:space-between;margin-top:10px;font-size:12px;color:var(--muted)}
.steps{display:grid;gap:8px;margin-top:15px}.step{display:flex;gap:12px;align-items:center;text-align:left;border:1px solid transparent;background:transparent;border-radius:19px;padding:12px 13px;transition:.2s}.step:hover{background:rgba(255,255,255,.45)}.step.active{background:rgba(255,255,255,.9);border-color:rgba(0,0,0,.06);box-shadow:0 12px 28px rgba(29,25,19,.04)}.step>span{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-size:12px}.step.active>span{background:var(--dark);color:#fff}.step div{display:flex;flex-direction:column}.step strong{font-size:13px}.step small{color:var(--muted);margin-top:2px}.save-state{font-size:11px;color:var(--muted);padding:15px}
.workspace{background:rgba(255,255,255,.91);border:1px solid rgba(255,255,255,.74);border-radius:34px;min-height:790px;overflow:hidden;box-shadow:var(--shadow)}#projectForm{min-height:790px;display:flex;flex-direction:column}.form-step{display:none;padding:48px}.form-step.active{display:block}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:36px}.section-head h2{font-size:40px;line-height:1.02;letter-spacing:-.045em;margin:11px 0 13px}.section-head.split{align-items:center}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid.compact{gap:14px}.span-2{grid-column:span 2}.field{display:block}.field>span{display:block;font-size:13px;font-weight:680;margin-bottom:9px}.field small{display:block;margin-top:8px;color:var(--muted);line-height:1.5}input,select,textarea{width:100%;padding:15px 16px;border:1px solid var(--line);border-radius:16px;background:#fff;outline:none;transition:.2s;color:var(--ink)}input[readonly]{background:#f5f2ec;color:var(--muted)}input:focus,select:focus,textarea:focus{border-color:#111;box-shadow:0 0 0 4px rgba(0,0,0,.045)}textarea{resize:vertical}
.primary-btn,.ghost-btn,.upload-button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 19px;font-size:13px;font-weight:680;border:1px solid var(--line);transition:.2s}.primary-btn{background:var(--dark);color:#fff;border-color:var(--dark)}.primary-btn:hover,.upload-button:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(0,0,0,.12)}.ghost-btn{background:rgba(255,255,255,.86);color:var(--ink)}.upload-button{background:var(--dark);color:#fff;border-color:var(--dark);white-space:nowrap}
.media-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:15px}.upload-card,.media-note{border:1px solid var(--line);border-radius:23px;padding:21px;background:var(--soft)}.upload-card{display:flex;justify-content:space-between;gap:24px;align-items:center}.upload-card strong,.media-note strong{display:block;margin-bottom:7px}.upload-card p,.media-note p{font-size:13px}.gallery-manager{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:22px 0 34px}.media-card{border:1px solid var(--line);border-radius:22px;background:#fff;overflow:hidden;transition:.2s}.media-card:hover{transform:translateY(-2px);box-shadow:0 15px 32px rgba(0,0,0,.065)}.media-card.hero-selected{box-shadow:0 0 0 2px #171717}.media-image{height:175px;position:relative;background:#eee}.media-image img{width:100%;height:100%;object-fit:cover;display:block}.media-image span{position:absolute;left:12px;top:12px;padding:7px 10px;border-radius:999px;background:rgba(18,18,18,.76);backdrop-filter:blur(8px);color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.media-card-body{padding:13px}.media-name{padding:10px 11px;border-radius:12px;font-size:12px}.media-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.media-actions button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 9px;font-size:10px}.media-actions button:disabled{opacity:.35;cursor:default}.empty-media{grid-column:1/-1;padding:36px;text-align:center;border:1px dashed rgba(0,0,0,.14);border-radius:22px;color:var(--muted)}.content-fields{padding-top:30px;border-top:1px solid var(--line)}
.unit-form{padding:25px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(180deg,#fbfaf7,#f6f3ed)}.editor-actions{margin-top:19px}.floorplan-upload{padding-top:4px}.floorplan-preview{min-height:190px;border:1px dashed rgba(0,0,0,.15);border-radius:19px;background:#fff;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;color:var(--muted)}.floorplan-preview img{max-width:100%;max-height:320px;object-fit:contain;display:block}.floorplan-preview button{position:absolute;right:12px;top:12px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;font-size:11px}.unit-list{display:grid;gap:11px;margin-top:22px}.unit-row{display:grid;grid-template-columns:1.15fr .68fr .68fr .82fr .8fr .72fr auto;gap:12px;align-items:center;padding:17px 18px;border:1px solid var(--line);border-radius:19px;background:#fff}.unit-row small{display:block;color:var(--muted);margin-top:3px}.unit-actions{display:flex;gap:7px}.icon-btn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;font-size:11px}.icon-btn.danger{color:#8b3e35}.status{display:inline-flex;width:max-content;padding:6px 10px;border-radius:99px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.status.available{background:rgba(53,116,76,.12);color:var(--green)}.status.reserved{background:rgba(155,103,44,.12);color:var(--amber)}.status.sold{background:rgba(0,0,0,.08);color:var(--muted)}.floorplan-state{font-size:11px;color:var(--muted)}.floorplan-state.has{color:var(--green);font-weight:700}.empty-units{padding:28px;border:1px dashed rgba(0,0,0,.14);border-radius:20px;text-align:center}.empty-units span{display:block;color:var(--muted);margin-top:6px}
.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.summary-card{padding:19px;border:1px solid var(--line);border-radius:19px;background:var(--soft)}.summary-card span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.summary-card strong{display:block;font-size:19px;margin-top:8px}.preview-frame{margin-top:22px;border:1px solid var(--line);border-radius:26px;overflow:hidden;height:560px;background:var(--soft);box-shadow:0 18px 50px rgba(0,0,0,.055)}.preview-frame iframe{border:0;width:100%;height:100%}.publish-bar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:20px;padding:21px;border:1px solid var(--line);border-radius:21px}.publish-bar p{font-size:13px;margin-top:6px}.status-pill{padding:8px 12px;border-radius:99px;background:rgba(53,116,76,.12);color:var(--green);font-weight:700}.form-navigation{margin-top:auto;border-top:1px solid var(--line);padding:21px 48px;display:flex;justify-content:space-between;background:rgba(255,255,255,.94)}
@media(max-width:1160px){.gallery-manager{grid-template-columns:1fr 1fr}.unit-row{grid-template-columns:1.1fr repeat(3,.7fr) auto}.unit-row>:nth-child(5),.unit-row>:nth-child(6){display:none}}
@media(max-width:1000px){.app-shell{grid-template-columns:1fr}.sidebar{position:static}.steps{grid-template-columns:repeat(5,1fr)}.step div{display:none}.summary-grid{grid-template-columns:1fr 1fr}.media-layout{grid-template-columns:1fr}}
@media(max-width:700px){.app-header{padding:0 16px}.header-actions .ghost-btn:first-child{display:none}.app-shell{padding:12px}.form-step{padding:25px}.form-navigation{padding:16px 24px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.section-head h2{font-size:31px}.section-head.split,.upload-card{align-items:flex-start;flex-direction:column}.gallery-manager{grid-template-columns:1fr}.unit-row{grid-template-columns:1fr 1fr}.unit-row>:nth-child(n+5){display:none}.summary-grid{grid-template-columns:1fr}.publish-bar{align-items:flex-start;flex-direction:column}}
.save-state{display:flex;align-items:center;gap:8px}.save-dot{width:8px;height:8px;border-radius:50%;background:#999}.save-state.saved .save-dot{background:var(--green)}.save-state.dirty .save-dot{background:var(--amber);box-shadow:0 0 0 4px rgba(155,103,44,.1)}.save-state.working .save-dot{background:#486a9b;animation:pulse 1s infinite}.save-state.error{color:#9a3f34}.save-state.error .save-dot{background:#9a3f34}@keyframes pulse{50%{opacity:.35}}.upload-count{margin-top:13px;font-size:11px;font-weight:750;color:var(--ink)}.hero-check{position:absolute;right:12px;top:12px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#171717}.empty-media{display:flex;flex-direction:column;gap:7px}.empty-media span{font-size:12px}.invalid{border-color:#a64538!important;box-shadow:0 0 0 4px rgba(166,69,56,.08)!important}.inline-check{display:flex!important;align-items:center;gap:8px;margin-top:10px;font-size:12px;color:var(--muted)}.inline-check input{width:auto}.inline-check span{margin:0!important;font-weight:500!important}input:disabled{opacity:.55;background:#f1eee8}

/* Behutsame White-Label-Ergänzungen */
.logo-row{margin:18px 0 0;padding:18px 20px;border:1px solid var(--line);border-radius:23px;background:var(--soft);display:flex;align-items:center;justify-content:space-between;gap:24px}.logo-row strong{display:block;margin-bottom:6px}.logo-row p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.logo-row-actions{display:flex;align-items:center;gap:12px}.logo-preview{width:150px;height:72px;border:1px solid var(--line);border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:center;padding:10px;position:relative;overflow:hidden}.logo-preview img{max-width:100%;max-height:48px;object-fit:contain}.logo-preview span{font-size:10px;color:var(--muted);text-align:center}.logo-preview button{position:absolute;right:5px;top:5px;border:1px solid var(--line);background:#fff;border-radius:50%;width:24px;height:24px;padding:0;font-size:13px}.floorplan-preview.pdf-file{justify-content:flex-start;padding:22px}.pdf-preview-card{display:flex;align-items:center;gap:14px;min-width:0}.pdf-preview-icon{width:46px;height:58px;border-radius:11px;background:var(--dark);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:800}.pdf-preview-card div{min-width:0}.pdf-preview-card strong,.pdf-preview-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdf-preview-card small{margin-top:5px;color:var(--muted)}@media(max-width:700px){.logo-row{align-items:flex-start;flex-direction:column}.logo-row-actions{width:100%;justify-content:space-between}.logo-preview{width:130px}}

.field-warning{
  margin-top:9px;padding:10px 12px;border-radius:13px;
  border:1px solid rgba(160,106,44,.22);
  background:rgba(160,106,44,.08);color:#7a531f;
  font-size:12px;line-height:1.5;
}
