/* roomplanner.css — Editor-Styles für die Raumplaner-Engine (Pro-Kitchen Steel).
   Self-hosted Display-/Mono-Fonts (kein externer Abruf, kein Google-Link). */




.rp{
  --rp-ink:#10131a;--rp-mid:#586173;--rp-muted:#8b93a2;
  --rp-line:#e3e6eb;--rp-line2:#d3d8e0;--rp-bone:#f7f3ec;--rp-paper:#fffdf9;
  --rp-accent:#b07a2e;--rp-accent-d:#8a5e1f;--rp-accent-l:#f3e7d2;
  --rp-dark:#0e1118;--rp-steel:#3a4554;
  --rp-disp:'Fraunces',Georgia,serif;
  --rp-mono:ui-monospace,Menlo,Consolas,monospace;
  color:var(--rp-ink);font-size:15px;
}
.rp *{box-sizing:border-box}
.rp .rp-grid{display:grid;grid-template-columns:300px 1fr;gap:1.1rem;align-items:start}
.rp .rp-panel{background:var(--rp-paper);border:1px solid var(--rp-line);border-radius:14px;overflow:hidden;box-shadow:0 1px 2px rgba(16,19,26,.05),0 10px 30px rgba(16,19,26,.06)}
.rp .rp-ph{padding:.8rem 1.1rem;border-bottom:1px solid var(--rp-line);font-family:var(--rp-disp);font-weight:600;font-size:.98rem;background:#fff;display:flex;align-items:center;gap:.5rem}
.rp .rp-pb{padding:1.1rem}

/* Steuerung */
.rp .rp-field{margin-bottom:1rem}.rp .rp-field:last-child{margin-bottom:0}
.rp label{display:block;font-weight:600;font-size:.85rem;margin-bottom:.35rem}
.rp .rp-hint{font-size:.76rem;color:var(--rp-muted);margin-top:.3rem;line-height:1.45}
.rp select,.rp input[type=number]{width:100%;font:inherit;font-size:.95rem;color:var(--rp-ink);padding:.55rem .7rem;border:1px solid var(--rp-line2);border-radius:8px;background:#fff;outline:none}
.rp select:focus,.rp input:focus{border-color:var(--rp-accent);box-shadow:0 0 0 3px var(--rp-accent-l)}
.rp .rp-two{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.rp .rp-seg{display:flex;gap:.3rem;flex-wrap:wrap}
.rp .rp-seg button{font:inherit;font-size:.8rem;font-weight:500;padding:.4rem .65rem;border:1px solid var(--rp-line2);background:#fff;border-radius:7px;cursor:pointer}
.rp .rp-seg button[aria-pressed=true]{background:var(--rp-ink);color:#fff;border-color:var(--rp-ink)}

/* Canvas + Toolbar */
.rp .rp-stage{position:relative}
.rp .rp-toolbar{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.7rem}
.rp .rp-btn{font:inherit;font-size:.84rem;font-weight:600;padding:.5rem .85rem;border:1px solid var(--rp-line2);background:#fff;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;transition:.14s}
.rp .rp-btn:hover{border-color:var(--rp-accent)}
.rp .rp-btn[aria-pressed=true]{background:var(--rp-accent);border-color:var(--rp-accent);color:#fff}
.rp .rp-btn.ghost{background:transparent}
.rp .rp-btn[disabled]{opacity:.4;cursor:default}
.rp .rp-spacer{flex:1}
.rp .rp-canvaswrap{border:1px solid var(--rp-line);border-radius:12px;overflow:hidden;background:#fff;touch-action:none}
.rp svg.rp-canvas{display:block;width:100%;height:auto;cursor:crosshair;user-select:none}
.rp svg.rp-canvas.edit{cursor:default}
.rp .rp-status{margin-top:.55rem;font-family:var(--rp-mono);font-size:.78rem;color:var(--rp-mid)}

/* KPIs */
.rp .rp-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin-top:1rem}
.rp .rp-kpi{background:var(--rp-bone);border:1px solid var(--rp-line);border-radius:10px;padding:.75rem}
.rp .rp-kpi b{font-family:var(--rp-mono);font-size:1.3rem;display:block;line-height:1.05}
.rp .rp-kpi span{font-size:.72rem;color:var(--rp-muted)}
.rp .rp-kpi.hl{background:var(--rp-ink)}.rp .rp-kpi.hl b{color:#fff}.rp .rp-kpi.hl span{color:#aab2bf}
.rp .rp-flagrow{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:.7rem}
.rp .rp-flag{font-family:var(--rp-mono);font-size:.74rem;padding:.22rem .6rem;border-radius:6px}
.rp .rp-flag.ok{background:#e7f4ec;color:#1d7a44}
.rp .rp-flag.mid{background:var(--rp-accent-l);color:var(--rp-accent-d)}
.rp .rp-flag.bad{background:#fde7e5;color:#b4231a}
.rp .rp-legend{display:flex;gap:.9rem;flex-wrap:wrap;font-size:.76rem;color:var(--rp-mid);margin-left:auto}
.rp .rp-legend i{display:inline-flex;align-items:center;gap:.3rem;font-style:normal}
.rp .rp-sw{width:12px;height:12px;border-radius:3px;display:inline-block}

.rp .rp-note{margin-top:1.1rem;font-size:.78rem;color:var(--rp-mid);background:var(--rp-bone);border:1px solid var(--rp-line);border-left:3px solid var(--rp-accent);border-radius:8px;padding:.8rem .95rem}
.rp .rp-note b{color:var(--rp-ink)}.rp .rp-note ul{margin:.35rem 0 0 1rem}.rp .rp-note li{margin:.12rem 0}

/* Barrierefrei-Schalter */
.rp .rp-switch{display:flex;align-items:center;gap:.5rem;cursor:pointer}
.rp .rp-switch input{width:auto}
.rp input:disabled{background:#eef0f3;color:#9aa2af;cursor:not-allowed}
.rp .rp-need:empty{display:none}

/* Hilfe-Panel + Prüf-Checkliste */
.rp .rp-help,.rp .rp-checkwrap{margin-top:1rem;background:var(--rp-paper);border:1px solid var(--rp-line);border-radius:10px;padding:.85rem .95rem}
.rp .rp-help-h{font-family:var(--rp-disp);font-weight:600;font-size:.9rem;margin-bottom:.45rem}
.rp .rp-help-ol{margin:0;padding-left:1.1rem;font-size:.82rem;color:var(--rp-mid);line-height:1.5}
.rp .rp-help-ol li{margin:.18rem 0}.rp .rp-help-ol b{color:var(--rp-ink)}
.rp .rp-check{list-style:none;margin:0;padding:0;font-size:.82rem;line-height:1.45}
.rp .rp-check li{position:relative;padding:.22rem 0 .22rem 1.4rem;border-top:1px solid var(--rp-line)}
.rp .rp-check li:first-child{border-top:0}
.rp .rp-check li::before{position:absolute;left:0;top:.22rem;font-family:var(--rp-mono);font-size:.8rem}
.rp .rp-c-ok{color:#1d7a44}.rp .rp-c-ok::before{content:'✓';color:#1d7a44}
.rp .rp-c-warn{color:#9a6a12}.rp .rp-c-warn::before{content:'!';color:#bd7a12}
.rp .rp-c-bad{color:#b4231a}.rp .rp-c-bad::before{content:'✕';color:#df4536}
.rp .rp-src{margin:.4rem 0 .55rem;font-size:.72rem;color:var(--rp-muted);line-height:1.4}

@media(max-width:860px){.rp .rp-grid{grid-template-columns:1fr}.rp .rp-kpis{grid-template-columns:repeat(2,1fr)}}
@media print{.rp .rp-panel:first-child,.rp .rp-toolbar{display:none}.rp .rp-grid{grid-template-columns:1fr}}
