/* Serenya CMS — Styles (aus serenya.html ausgelagert, cachebar) — Geomanist: css/nx-fonts.css */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
:root{
  --o:#ff6b00;--bg:#0e0e0e;--bg2:#141414;--bg3:#1a1a1a;--bg4:#222;
  --fg:#e8e8e8;--mid:#888;--dim:#444;--border:rgba(255,255,255,.07);
  --f:'G',sans-serif;--ez:cubic-bezier(.16,1,.3,1);--sidebar:240px;
}
html,body{height:100%;overflow:hidden;background:var(--bg);color:var(--fg);font-family:var(--f);-webkit-font-smoothing:antialiased;}
/* Serenya CMS: Geomanist durchgängig (nx-fonts.css) — auch Cookie-Banner & Haupt-Views */
body.nx-serenya,
body.nx-serenya #loginScreen,
body.nx-serenya #app,
body.nx-serenya #ckBanner{
  font-family:var(--f);
}
a{color:inherit;text-decoration:none;}
button,input,textarea,select{font-family:var(--f);outline:none;}

/* ══ LOGIN ══ */
#loginScreen{position:fixed;inset:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:9999;flex-direction:column;}
.login-logo{font-size:3.2rem;font-weight:950;font-style:italic;letter-spacing:-.04em;color:var(--o);margin-bottom:6px;}
.login-sub{font-size:.75rem;letter-spacing:.55em;text-transform:uppercase;color:var(--dim);margin-bottom:52px;}
.login-box{background:var(--bg2);border:1px solid var(--border);padding:44px 52px;width:380px;}
.lf{margin-bottom:20px;}
.lf label{font-size:.85rem;letter-spacing:.38em;text-transform:uppercase;color:var(--mid);display:block;margin-bottom:10px;}
.lf input{width:100%;background:var(--bg3);border:1px solid var(--border);color:var(--fg);font-family:var(--f);font-size:.95rem;padding:14px 16px;transition:border-color .2s;letter-spacing:.12em;}
.lf input:focus{border-color:rgba(255,107,0,.5);}
.login-btn{width:100%;background:var(--o);color:#111;font-family:var(--f);font-size:.85rem;font-weight:700;letter-spacing:.38em;text-transform:uppercase;padding:15px;border:none;cursor:pointer;transition:background .2s;}
.login-btn:hover{background:#ff8c2a;}
.login-err{margin-top:14px;font-size:.80rem;color:#ff4c4c;min-height:20px;text-align:center;}
.login-forgot{margin-top:12px;text-align:center;font-size:.85rem;letter-spacing:.22em;text-transform:uppercase;color:var(--dim);cursor:pointer;transition:color .2s;}
.login-forgot:hover{color:var(--o);}

/* ══ APP ══ */
#app{display:none;height:100%;}
/* Feste Viewport-Höhe: Sidebar + #main scrollen intern — nicht mit Seiteninhalt mitwachsen */
#app.on{
  display:flex;
  height:100vh;
  height:100dvh;
  min-height:0;
  max-height:100vh;
  max-height:100dvh;
  overflow:hidden;
}

/* ══ SIDEBAR ══ */
#sb{
  width:var(--sidebar);
  background:var(--bg2);
  border-right:1px solid var(--border);
  display:flex;
  flex-direction:column;
  flex-shrink:0;
  min-height:0;
  height:100%;
  max-height:100%;
  overflow:hidden;
}
.sb-logo{padding:24px 20px 18px;border-bottom:1px solid var(--border);flex-shrink:0;}
.sb-mark{font-size:1.1rem;font-weight:950;font-style:italic;color:var(--o);letter-spacing:-.02em;}
.sb-tag{font-size:.75rem;letter-spacing:.45em;text-transform:uppercase;color:var(--dim);margin-top:3px;}
.sb-nav{flex:1;min-height:0;overflow-y:auto;padding:8px 0;-webkit-overflow-scrolling:touch;}
.sbg{font-size:.75rem;letter-spacing:.44em;text-transform:uppercase;color:var(--dim);padding:16px 20px 6px;}
.sbi{display:flex;align-items:center;gap:10px;padding:11px 20px;cursor:pointer;color:var(--mid);font-size:.88rem;letter-spacing:.04em;transition:all .15s;position:relative;}
.sbi:hover{background:rgba(255,255,255,.03);color:var(--fg);}
.sbi.on{background:rgba(255,107,0,.07);color:var(--o);border-left:2px solid var(--o);padding-left:18px;}
.sbi svg{width:14px;height:14px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.5;}
.sb-badge{margin-left:auto;background:var(--o);color:#111;font-size:.75rem;font-weight:700;padding:2px 5px;display:none;}
.sb-badge.on{display:inline;}
.sb-bot{padding:14px 20px;border-top:1px solid var(--border);flex-shrink:0;}
.sb-link{display:block;font-size:.85rem;letter-spacing:.28em;text-transform:uppercase;color:var(--dim);margin-bottom:8px;transition:color .2s;}
.sb-link:hover{color:var(--o);}
.sb-out{font-size:.85rem;letter-spacing:.28em;text-transform:uppercase;color:var(--dim);cursor:pointer;transition:color .2s;}
.sb-out:hover{color:#ff4c4c;}

/* ══ SIDEBAR RESIZER ══ */
.sb-resizer{width:4px;flex-shrink:0;cursor:col-resize;background:transparent;position:relative;z-index:10;transition:background .2s;}
.sb-resizer:hover,.sb-resizer.dragging{background:rgba(255,107,0,.35);}
.sb-resizer::after{content:'';position:absolute;inset:0 -3px;}

/* ══ MAIN ══ */
#main{flex:1;min-height:0;min-width:0;overflow-y:auto;-webkit-overflow-scrolling:touch;}
/* Shop-Produkt-Overlay: kein „Durchscrollen“ von #main / Sidebar (Scroll-Chaining) */
body.nx-spoe-open #main{
  overflow: hidden !important;
}
body.nx-spoe-open #sb .sb-nav{
  overflow: hidden !important;
}
/* Flex-Kind braucht Höhenlimit, sonst scrollHeight === clientHeight → kein internes Scrollen */
#shopProdOverlay{
  overscroll-behavior: none;
  min-height: 0;
  height: 100vh;
  height: 100dvh;
}
#shopProdOverlayScroll{
  flex: 1 1 0%;
  min-height: 0;
  max-height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  touch-action: pan-y;
}
/* Bestellung / Kunde / Druckerei / Rabatt: äußeres Overlay nur abdunkeln, weißes Panel scrollt zuverlässig (Flex+margin:auto sonst „totes“ Scrollen) */
#shopOrderOverlay,
#shopCustOverlay,
#shopPrinterOverlay,
#shopDiscOverlay{
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: none;
}
#shopOrderOverlay > div:first-child,
#shopCustOverlay > div:first-child,
#shopPrinterOverlay > div:first-child,
#shopDiscOverlay > div:first-child{
  height: min(92vh, calc(100dvh - 64px));
  max-height: min(92vh, calc(100dvh - 64px));
  overflow-y: scroll;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  min-height: 0;
  touch-action: pan-y;
}
.pg{display:none;padding:40px 48px;min-height:100%;min-width:0;box-sizing:border-box;}
.pg.on{display:block;}
.ph{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:40px;padding-bottom:20px;border-bottom:1px solid var(--border);}
.pt{font-size:2rem;font-weight:100;letter-spacing:-.02em;}
.pt b{color:var(--o);font-weight:950;font-style:italic;}
.pa{display:flex;gap:8px;}

/* ══ BUTTONS ══ */
.btn{font-family:var(--f);font-size:.85rem;letter-spacing:.28em;text-transform:uppercase;padding:10px 20px;border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:7px;}
.btn-p{background:var(--o);color:#111;font-weight:700;}.btn-p:hover{background:#ff8c2a;}
.btn-g{background:transparent;color:var(--mid);border:1px solid var(--border);}.btn-g:hover{border-color:rgba(255,107,0,.4);color:var(--o);}
.btn-d{background:transparent;color:rgba(255,80,80,.7);border:1px solid rgba(255,80,80,.2);}.btn-d:hover{background:rgba(255,80,80,.07);color:#ff4c4c;border-color:rgba(255,80,80,.5);}
.btn-sm{padding:6px 13px;font-size:.82rem;}

/* ══ TOAST ══ */
#tw{position:fixed;bottom:28px;right:28px;z-index:99999;display:flex;flex-direction:column;gap:6px;}
.toast{background:var(--bg3);border-left:3px solid var(--o);padding:12px 20px;font-size:.88rem;color:var(--fg);transform:translateX(130%);transition:transform .32s var(--ez);pointer-events:none;max-width:320px;}
.toast.in{transform:translateX(0);}.toast.err{border-left-color:#ff4c4c;}.toast.ok{border-left-color:#4caf50;}.toast.warn{border-left-color:#ff9800;}

/* ══ STATS ══ */
.srow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:36px;}
.sc{background:var(--bg2);border:1px solid var(--border);padding:28px;}
.sc-n{font-size:2.8rem;font-weight:950;font-style:italic;color:var(--o);line-height:1;}
.sc-l{font-size:.75rem;letter-spacing:.38em;text-transform:uppercase;color:var(--dim);margin-top:5px;}

/* ── Revenue Dashboard ───────────────────────────────────── */
.rev-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;flex-wrap:wrap;gap:12px;}
.rev-title{font-size:.6rem;letter-spacing:.42em;text-transform:uppercase;color:var(--o);}
.rev-filter{display:flex;gap:0;}
.rev-filter-btn{font-family:var(--f);font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;padding:6px 14px;background:transparent;border:1px solid var(--border);color:var(--dim);cursor:pointer;transition:all .15s;}
.rev-filter-btn:first-child{border-right:none;}
.rev-filter-btn.on{background:rgba(255,107,0,.1);color:var(--o);border-color:rgba(255,107,0,.35);}
.rev-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;margin-bottom:3px;}
.rev-kpi{background:var(--bg3);border:1px solid var(--border);padding:22px 24px;position:relative;overflow:hidden;}
.rev-kpi::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:transparent;transition:background .2s;}
.rev-kpi.accent::before{background:var(--o);}
.rev-kpi-val{font-size:1.9rem;font-weight:950;font-style:italic;color:var(--o);line-height:1;margin-bottom:6px;}
.rev-kpi-val.dim{color:var(--mid);}
.rev-kpi-lbl{font-size:.55rem;letter-spacing:.36em;text-transform:uppercase;color:var(--dim);}
.rev-kpi-sub{font-size:.82rem;color:rgba(255,255,255,.2);margin-top:4px;}
.rev-chart-wrap{background:var(--bg3);border:1px solid var(--border);padding:28px 28px 20px;position:relative;}
.rev-chart-top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px;}
.rev-chart-label{font-size:.55rem;letter-spacing:.38em;text-transform:uppercase;color:var(--dim);}
.rev-chart-peak{font-size:.82rem;color:rgba(255,255,255,.25);}
.rev-chart-svg{width:100%;display:block;overflow:visible;}
.rev-bar-bg{fill:rgba(255,255,255,.03);}
.rev-bar{fill:rgba(255,107,0,.55);transition:fill .15s;}
.rev-bar:hover{fill:var(--o);}
.rev-bar.cur{fill:var(--o);}
.rev-bar.zero{fill:rgba(255,255,255,.025);}
.rev-month-lbl{font-size:9px;fill:var(--dim);font-family:'G',sans-serif;text-anchor:middle;}
.rev-month-lbl.cur{fill:var(--o);}
.rev-val-lbl{font-size:8px;fill:rgba(255,255,255,.3);font-family:'G',sans-serif;text-anchor:middle;}
.rev-val-lbl.nonzero{fill:rgba(255,255,255,.5);}
.rev-bar-tooltip{position:absolute;background:var(--bg);border:1px solid rgba(255,107,0,.3);padding:8px 12px;font-family:var(--f);font-size:.82rem;color:var(--fg);pointer-events:none;white-space:nowrap;opacity:0;transition:opacity .15s;z-index:10;}
.rev-zero-line{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);text-align:center;padding:36px 0;}
.srow4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:36px;}

/* ══ ARTWORK GRID ══ */
.ag{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:3px;}
.ac{position:relative;aspect-ratio:2/3;overflow:hidden;background:var(--bg3);cursor:grab;}
.ac-archived{opacity:.5;filter:grayscale(.6);transition:opacity .2s,filter .2s;}
.ac-archived:hover{opacity:.8;filter:grayscale(.2);}
.ac img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ez);}
.ac:hover img{transform:scale(1.06);}
.ac-ov{position:absolute;inset:0;opacity:0;transition:opacity .25s;background:linear-gradient(to top,rgba(0,0,0,.95) 0%,transparent 55%);display:flex;flex-direction:column;justify-content:flex-end;padding:12px;}
.ac:hover .ac-ov{opacity:1;}
.ac-id{font-size:.82rem;letter-spacing:.3em;text-transform:uppercase;color:var(--o);margin-bottom:2px;}
.ac-t{font-size:.88rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ac-btns{display:flex;gap:4px;margin-top:8px;flex-wrap:wrap;}
.drag-h{position:absolute;top:6px;left:6px;background:rgba(0,0,0,.5);padding:4px 6px;font-size:.9rem;color:rgba(255,255,255,.3);cursor:grab;z-index:2;}
/* quick delete X */
.ac-x{position:absolute;top:6px;right:6px;background:rgba(20,20,20,.85);border:1px solid rgba(255,80,80,.3);color:rgba(255,80,80,.6);width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:.82rem;cursor:pointer;z-index:3;transition:all .15s;opacity:0;}
.ac:hover .ac-x{opacity:1;}
.ac-x:hover{background:rgba(255,80,80,.15);color:#ff4c4c;border-color:#ff4c4c;}
.ac.dragging{opacity:.3;}
.ac.dt{outline:2px solid var(--o);outline-offset:-2px;}

/* ══ QUICK UPLOAD ══ */
.quick-upload{background:var(--bg2);border:1px dashed var(--dim);padding:44px;text-align:center;cursor:pointer;transition:all .2s;position:relative;margin-bottom:20px;}
.quick-upload:hover,.quick-upload.drag{border-color:var(--o);background:rgba(255,107,0,.04);}
.quick-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;}
.qu-ico{font-size:3rem;color:var(--dim);margin-bottom:12px;}
.qu-t{font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mid);}
.qu-sub{font-size:.80rem;color:var(--dim);margin-top:6px;}
.upload-progress{background:rgba(255,107,0,.1);border:1px solid rgba(255,107,0,.25);padding:16px 22px;display:none;align-items:center;gap:14px;margin-bottom:16px;}
.upload-progress.on{display:flex;}
.up-bar-wrap{flex:1;height:2px;background:rgba(255,255,255,.08);}
.up-bar{height:2px;background:var(--o);width:0;transition:width .3s;}
.up-lbl{font-size:.85rem;letter-spacing:.18em;text-transform:uppercase;color:var(--o);white-space:nowrap;}

/* ══ CARD / FORM ══ */
.card{background:var(--bg2);border:1px solid var(--border);padding:28px;margin-bottom:18px;}
.card-t{font-size:.75rem;letter-spacing:.42em;text-transform:uppercase;color:var(--o);margin-bottom:20px;}
.fg{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.fg.t3{grid-template-columns:1fr 1fr 1fr;}
.fgr{display:flex;flex-direction:column;gap:7px;}
.fgr.full{grid-column:1/-1;}
.fgr label{font-size:.85rem;letter-spacing:.32em;text-transform:uppercase;color:var(--mid);}
.fgr input:not([type=file]):not([type=color]):not([type=range]),textarea,select{background:var(--bg3)!important;border:1px solid var(--border)!important;color:var(--fg)!important;font-family:var(--f);font-size:.85rem;padding:10px 13px;width:100%;resize:vertical;transition:border-color .2s;outline:none;}
input:not([type=file]):not([type=color]):not([type=range]):focus,textarea:focus,select:focus{border-color:rgba(255,107,0,.5)!important;outline:none;}
select option{background:var(--bg3);color:var(--fg);}
.fgr textarea{min-height:70px;line-height:1.7;}
hr{border:none;border-top:1px solid var(--border);margin:20px 0;}

/* ══ TABLE ══ */
.tbl{width:100%;border-collapse:collapse;}
.tbl th{font-size:.82rem;letter-spacing:.36em;text-transform:uppercase;color:var(--dim);padding:9px 12px;text-align:left;border-bottom:1px solid var(--border);}
.tbl td{padding:13px 12px;border-bottom:1px solid rgba(255,255,255,.025);font-size:.88rem;color:var(--mid);vertical-align:middle;}
.tbl tr:hover td{background:rgba(255,255,255,.012);}
.tbl tr.unr td{color:var(--fg);}
.udot{width:5px;height:5px;background:var(--o);border-radius:50%;display:inline-block;margin-right:5px;}
.efull{background:var(--bg3);padding:12px;margin-top:6px;font-size:.86rem;line-height:1.85;color:rgba(255,255,255,.45);border-left:2px solid rgba(255,107,0,.3);display:none;white-space:pre-wrap;}
.efull.on{display:block;}

/* ══ ICONS GRID ══ */
.ig{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:10px;}
.ic{background:var(--bg3);border:1px solid var(--border);padding:16px 10px;text-align:center;position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;}
.ic img{width:40px;height:40px;object-fit:contain;}
.ic-n{font-size:.82rem;letter-spacing:.15em;text-transform:uppercase;color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;}
.ic-tooltip-in{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--mid);font-family:var(--f);font-size:.85rem;padding:4px 6px;margin-top:4px;text-align:center;}
.ic-tooltip-in:focus{border-color:rgba(255,107,0,.4);outline:none;color:var(--fg);}
.ic-tooltip-in::placeholder{color:var(--dim);}
.ic-del{position:absolute;top:4px;right:4px;background:rgba(255,80,80,.1);border:none;color:rgba(255,80,80,.5);cursor:pointer;width:16px;height:16px;font-size:.75rem;display:flex;align-items:center;justify-content:center;transition:all .2s;}
.ic-del:hover{background:rgba(255,80,80,.2);color:#ff4c4c;}

/* ══ COLOR PICKER ══ */
.color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;}
.cp-card{background:var(--bg3);border:1px solid var(--border);padding:16px 18px;display:flex;align-items:center;gap:14px;}
.cp-swatch{width:38px;height:38px;border-radius:2px;flex-shrink:0;border:2px solid rgba(255,255,255,.1);cursor:pointer;position:relative;}
.cp-info{flex:1;}
.cp-label{font-size:.85rem;letter-spacing:.32em;text-transform:uppercase;color:var(--mid);margin-bottom:5px;}
.cp-hex{background:var(--bg);border:1px solid var(--border);color:var(--fg);font-family:monospace;font-size:.8rem;padding:7px 11px;width:100px;transition:border-color .2s;}
.cp-hex:focus{border-color:rgba(255,107,0,.5);}
/* Photoshop-style picker dropdown */
.cp-picker-wrap{position:relative;display:inline-block;}
input[type=color].cp-native{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;border:none;padding:0;}

.msg-row{background:var(--bg3);border:1px solid var(--border);padding:16px 20px;margin-bottom:10px;transition:border-color .2s;}
/* ══ ORDER FILTER BUTTONS ══ */
.ord-fb{font-family:var(--f);font-size:.82rem;letter-spacing:.22em;text-transform:uppercase;padding:6px 13px;background:transparent;color:var(--dim);border:1px solid var(--border);cursor:pointer;transition:all .15s;white-space:nowrap;}
.ord-fb:hover{border-color:rgba(255,107,0,.35);color:var(--fg);}
.ord-fb.ord-fb-on{background:rgba(255,107,0,.12);color:var(--o);border-color:rgba(255,107,0,.5);font-weight:700;}
/* Deadline-Buttons etwas dezenter in der Grundfarbe */
.ord-fb-dl{color:var(--dim);border-color:rgba(255,255,255,.05);}
.ord-fb-dl.ord-fb-on{background:rgba(255,107,0,.1);color:var(--o);border-color:rgba(255,107,0,.4);}
/* Ergebnis-Zähler */
.ord-result-count{font-size:.82rem;letter-spacing:.25em;text-transform:uppercase;color:var(--dim);margin-bottom:10px;}
.ord-result-count span{color:var(--o);font-weight:700;}

.msg-row.msg-unread{border-color:rgba(255,107,0,.3);background:rgba(255,107,0,.04);}
.msg-head{display:flex;align-items:center;gap:10px;margin-bottom:6px;flex-wrap:wrap;}
.msg-from{font-size:.88rem;font-weight:600;color:var(--fg);letter-spacing:.06em;}
.msg-email{font-size:.88rem;color:var(--mid);}
.msg-date{font-size:.85rem;color:var(--dim);margin-left:auto;}
.msg-badge{font-size:.82rem;letter-spacing:.18em;background:var(--o);color:#111;padding:2px 7px;font-weight:700;}
.msg-subject{font-size:.85rem;color:var(--mid);margin-bottom:8px;letter-spacing:.06em;}
.msg-body{font-size:.9rem;color:var(--fg);line-height:1.7;margin-bottom:12px;white-space:pre-wrap;max-height:120px;overflow-y:auto;}
.msg-actions{display:flex;gap:8px;flex-wrap:wrap;}

/* ══ RICH TEXT EDITOR ══ */
.spoe-lbl{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--dim);display:block;margin-bottom:5px;}
.rte-wrap{background:var(--bg3);border:1px solid var(--border);display:flex;flex-direction:column;}
.rte-wrap:focus-within{border-color:rgba(255,107,0,.35);}
.rte-toolbar{display:flex;gap:2px;padding:6px 8px;border-bottom:1px solid var(--border);flex-wrap:wrap;background:var(--bg);}
.rte-char-panel{display:flex;align-items:center;gap:6px;padding:5px 8px;background:var(--bg2);border-bottom:1px solid var(--border);flex-wrap:wrap;}
.rte-char-panel label{display:flex;align-items:center;gap:3px;font-size:.65rem;color:var(--dim);letter-spacing:.1em;text-transform:uppercase;}
.rte-char-panel label span{min-width:16px;}
.rte-char-panel input{width:52px;background:var(--bg3);border:1px solid var(--border);color:var(--fg);font-family:var(--f);font-size:.72rem;padding:2px 5px;text-align:center;}
.rte-char-panel input.cp-fw{width:46px;}
.rte-char-panel .cp-apply,.rte-char-panel .cp-clear{font-size:.65rem;padding:2px 7px;letter-spacing:.05em;}
.rt{background:transparent;border:none;color:var(--mid);font-family:var(--f);font-size:.85rem;padding:5px 8px;cursor:pointer;transition:all .15s;letter-spacing:.06em;min-width:28px;display:inline-flex;align-items:center;justify-content:center;}
.rt:hover{background:rgba(255,255,255,.06);color:var(--fg);}
.rt.on{background:rgba(255,107,0,.1);color:var(--o);}
.rt-sep{width:1px;background:var(--border);margin:3px 4px;align-self:stretch;}
.rte-body{padding:14px;min-height:120px;color:var(--fg);font-size:.90rem;line-height:1.85;outline:none;font-family:var(--f);}
.rte-body[contenteditable=true]:empty::before{content:attr(data-ph);color:var(--dim);pointer-events:none;}
.lang-toggle{display:flex;gap:0;border:1px solid var(--border);}
.lt-btn{font-family:var(--f);font-size:.85rem;letter-spacing:.2em;padding:5px 12px;background:transparent;border:none;color:var(--dim);cursor:pointer;transition:all .2s;}
.lt-btn.on{background:var(--o);color:#fff;}
.fld-lbl{font-size:.85rem;letter-spacing:.32em;text-transform:uppercase;color:var(--mid);display:block;margin-bottom:8px;}
.rte-body .cms-clr-o  {color:var(--o);}
.rte-body .cms-clr-fg {color:var(--fg);}
.rte-body .cms-clr-mid{color:var(--mid);}
.rte-body .cms-clr-dim{color:var(--dim);}
.rte-body .cms-clr-ob {color:var(--ob);}
.rte-body .cms-orange {color:var(--o);}/* legacy compat */
.rte-body ul{list-style:none;padding-left:1.2em;}
.rte-body ul li::before{content:'✦ ';color:var(--o);}

/* ══ SECTIONS TABS ══ */
.sec-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);margin-bottom:28px;}
.spoe-chunk-zone{border:2px dashed var(--border);padding:24px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s;position:relative;background:var(--bg3);}
.spoe-chunk-zone:hover{border-color:rgba(255,107,0,.4);background:rgba(255,107,0,.04);}
.spoe-chunk-zone.dragging{border-color:var(--o);background:rgba(255,107,0,.08);}
.spoe-chunk-zone.uploading{border-color:var(--o);cursor:default;}
.spoe-chunk-zone.upload-error{border-color:#ff3333;background:rgba(255,51,51,.06);}
.spoe-chunk-prog-txt.error{color:#ff5252;}
.spoe-chunk-zone input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;}
.spoe-chunk-label{font-size:.8rem;color:var(--mid);letter-spacing:.08em;}
.spoe-chunk-hint{font-size:.72rem;color:var(--dim);margin-top:4px;}
.spoe-chunk-prog-wrap{margin-top:12px;background:rgba(255,255,255,.06);height:4px;border-radius:2px;overflow:hidden;}
.spoe-chunk-prog-bar{height:100%;background:var(--o);width:0%;transition:width .3s;}
.spoe-chunk-prog-txt{font-size:.72rem;color:var(--o);margin-top:6px;letter-spacing:.08em;}
.spoe-chunk-resume{font-size:.72rem;color:var(--o);text-decoration:underline;cursor:pointer;margin-top:4px;display:none;}
.spoe-file-row{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg3);border:1px solid var(--border);margin-bottom:4px;}
.spoe-file-name{flex:1;font-size:.82rem;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.spoe-file-size{font-size:.72rem;color:var(--dim);flex-shrink:0;}
.sec-tab{font-family:var(--f);font-size:.85rem;letter-spacing:.28em;text-transform:uppercase;padding:12px 20px;background:transparent;border:none;color:var(--dim);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s;}
.sec-tab:hover{color:var(--mid);}
.sec-tab.on{color:var(--o);border-bottom-color:var(--o);}
.sec-panel{display:none;min-width:0;max-width:100%;}.sec-panel.on{display:block;}

/* Texte → Rechtstexte / Cursor: Layout (responsive in serenya-responsive.css) */
.nx-cms-legal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;min-width:0;max-width:100%;}
.nx-cms-legal-col{min-width:0;max-width:100%;}
.nx-cms-cursor-split{display:grid;grid-template-columns:1fr 1fr;gap:0;height:calc(100vh - 160px);min-height:min(600px,70vh);min-width:0;max-width:100%;}
.nx-cms-cursor-frame-wrap{flex:1;border:1px solid var(--border);position:relative;min-height:500px;min-width:0;overflow:hidden;}

/* Legal: Abschnitt-Karten — Toolbar umbrechen, keine festen Pixel-Breiten */
.legal-block-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px;}
.legal-block-head-main{display:flex;flex-wrap:wrap;align-items:center;gap:10px;flex:1;min-width:0;}
.legal-block-num{font-size:.42rem;letter-spacing:.38em;color:rgba(255,107,0,.5);font-weight:700;flex-shrink:0;}
.legal-in-title{flex:1;min-width:0;width:100%;max-width:100%;box-sizing:border-box;background:var(--bg);border:1px solid var(--border);color:var(--fg);font-family:var(--f);font-size:.85rem;padding:7px 10px;}
.legal-in-label{flex:0 1 140px;min-width:0;width:100%;max-width:200px;box-sizing:border-box;background:var(--bg);border:1px solid var(--border);font-family:var(--f);font-size:.72rem;padding:7px 10px;color:rgba(255,107,0,.7);}
.legal-para-row{display:flex;gap:6px;align-items:flex-start;margin-bottom:8px;min-width:0;max-width:100%;}
.legal-para-row textarea{flex:1;min-width:0;max-width:100%;box-sizing:border-box;}
[id^="legal-editor-"]{min-width:0;max-width:100%;}

/* ══ MODAL ══ */
#mod{position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:800;display:none;align-items:center;justify-content:center;padding:40px;}
#mod.on{display:flex;}
.mb{background:var(--bg2);border:1px solid var(--border);width:100%;max-width:1000px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;}
.mh{padding:22px 30px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.mh-t{font-size:1.0rem;font-weight:300;}
.mc-x{background:none;border:none;color:var(--mid);font-size:1.2rem;cursor:pointer;transition:color .2s;}.mc-x:hover{color:var(--o);}
.mbody{padding:28px;flex:1;overflow-y:auto;}
.mf{padding:18px 30px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px;flex-shrink:0;}

/* ══ VISUAL PAGE BUILDER ══ */

/* Lore Editor Overlay */
#loreOverlay{position:fixed;inset:0;background:rgba(0,0,0,.96);z-index:1001;display:none;flex-direction:row;}
#loreOverlay.on{display:flex;}
#lookOverlay{display:none;}#lookOverlay.on{display:flex;}
#lookTemplateList::-webkit-scrollbar{width:4px;}#lookTemplateList::-webkit-scrollbar-track{background:transparent;}#lookTemplateList::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px;}
.look-tpl-tile{padding:8px 10px;cursor:pointer;border-radius:3px;border:1px solid transparent;display:flex;align-items:center;gap:10px;margin-bottom:2px;transition:background .15s,border-color .15s;}
.look-tpl-tile:hover{background:rgba(255,255,255,.04);}
.look-tpl-tile.active{background:rgba(52,211,153,.08);border-color:rgba(52,211,153,.35);}
.look-tpl-swatch{width:28px;height:28px;border-radius:2px;flex-shrink:0;border:1px solid rgba(255,255,255,.08);}
.look-tpl-info{flex:1;min-width:0;}
.look-tpl-name{font-size:.6rem;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;}
.look-tpl-layout{font-size:.5rem;color:var(--dim);margin-top:1px;}
.look-tpl-check{font-size:.7rem;color:#34d399;flex-shrink:0;}
.look-group-label{font-size:.36rem;letter-spacing:.4em;text-transform:uppercase;color:var(--dim);padding:12px 10px 4px;opacity:.5;}
#loreSidebar{width:320px;min-width:200px;max-width:500px;background:var(--bg2);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;}
#loreMain{flex:1;overflow-y:auto;background:#080808;display:flex;flex-direction:column;}
#pbOverlay{position:fixed;inset:0;background:rgba(0,0,0,.96);z-index:1000;display:none;flex-direction:row;}
#pbOverlay.on{display:flex;}
#pbSidebar{width:340px;min-width:220px;max-width:600px;background:var(--bg2);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;position:relative;}
#pbResizeHandle{position:absolute;top:0;right:-4px;width:8px;height:100%;cursor:col-resize;z-index:10;background:transparent;}
#pbResizeHandle:hover,#pbResizeHandle.dragging{background:rgba(255,107,0,.25);}
#pbMain{flex:1;overflow-y:auto;background:#0a0a0a;}
/* ── Page Builder: Hero + Footer Preview ── */
.pb-preview-block{pointer-events:none;user-select:none;position:relative;}
.pb-preview-badge{position:sticky;top:0;z-index:5;background:rgba(255,107,0,.08);border-bottom:1px solid rgba(255,107,0,.2);padding:5px 14px;display:flex;align-items:center;gap:8px;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,107,0,.55);}
.pb-preview-badge svg{width:13px;height:13px;stroke:rgba(255,107,0,.5);fill:none;stroke-width:1.8;flex-shrink:0;}
.pb-hero-preview{position:relative;height:52vh;overflow:hidden;opacity:.9;}
.pb-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.pb-hero-info{padding:32px 8vw 28px;background:linear-gradient(to bottom,rgba(0,0,0,.7),rgba(0,0,0,.4));}
.pb-hero-num{font-size:.52rem;letter-spacing:.45em;text-transform:uppercase;color:rgba(255,107,0,.7);margin-bottom:16px;}
.pb-hero-title{font-size:clamp(2rem,5vw,6rem);font-weight:100;line-height:.88;letter-spacing:-.02em;color:#e8e8e8;}
.pb-hero-year{font-size:.52rem;letter-spacing:.3em;color:rgba(255,255,255,.3);margin-top:14px;}
.pb-hero-meta{display:flex;gap:28px;flex-wrap:wrap;}
.pb-hero-meta-item{display:flex;flex-direction:column;gap:3px;}
.pb-hero-meta-label{font-size:.72rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,107,0,.5);}
.pb-hero-meta-val{font-size:.88rem;font-weight:300;color:rgba(255,255,255,.55);}
.pb-footer-preview{opacity:.5;border-top:1px solid rgba(255,255,255,.05);padding:28px 8vw 32px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;background:#0a0a0a;}
.pb-footer-copy{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.18);}
.pb-footer-next{display:flex;align-items:center;gap:10px;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.22);}
.pb-footer-next-arr{color:rgba(255,107,0,.4);font-size:1.1rem;}
.pb-header{padding:10px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;gap:6px;}
.pb-title{font-size:.65rem;font-weight:700;letter-spacing:.38em;text-transform:uppercase;color:var(--o);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pb-icon-btn{background:rgba(255,255,255,.04);border:1px solid var(--border);color:var(--mid);width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;flex-shrink:0;font-size:1rem;padding:0;}
.pb-icon-btn:hover{border-color:rgba(255,107,0,.5);color:var(--o);background:rgba(255,107,0,.06);}
.pb-icon-btn.save{background:var(--o);border-color:var(--o);color:#111;}
.pb-icon-btn.save:hover{background:#ff8c2a;border-color:#ff8c2a;}
.pb-icon-btn.close:hover{border-color:rgba(255,60,60,.5);color:#ff4c4c;background:rgba(255,60,60,.06);}
/* ── PB Block-Reihenfolge Liste ── */
.pb-mod-item{display:flex;align-items:center;gap:6px;padding:6px 8px;background:var(--bg2);border:1px solid var(--border);margin-bottom:2px;cursor:pointer;transition:all .15s;font-size:.65rem;}
.pb-mod-item:hover{border-color:rgba(255,107,0,.3);background:rgba(255,107,0,.04);}
.pb-mod-item.selected{border-color:var(--o);background:rgba(255,107,0,.08);color:var(--o);}
.pb-mod-drag{cursor:grab;color:var(--dim);font-size:.8rem;flex-shrink:0;}
.pb-mod-name{flex:1;letter-spacing:.12em;text-transform:uppercase;color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pb-mod-actions{display:flex;gap:2px;flex-shrink:0;}
.pb-mod-actions button{background:transparent;border:none;color:var(--dim);cursor:pointer;padding:2px 4px;font-size:.7rem;transition:color .15s;}
.pb-mod-actions button:hover{color:var(--fg);}
.pb-mod-actions button:disabled{opacity:.2;cursor:default;}
/* ── pbMain iframe container ── */
#pbMain{flex:1;overflow:hidden;background:#050505;display:flex;flex-direction:column;}
#pbIframeWrap{flex:1;display:flex;flex-direction:column;min-height:0;}
#pbIframeDevice{flex:1;overflow:hidden;align-items:stretch;}
#pbIframe{display:block;}
.pb-close{background:none;border:none;color:var(--mid);font-size:1.2rem;cursor:pointer;padding:4px 8px;}
.pb-close:hover{color:var(--o);}
.pb-sections{padding:8px 12px;flex:1;overflow-y:auto;min-height:0;}
.pb-sh{font-size:.82rem;letter-spacing:.4em;text-transform:uppercase;color:var(--dim);margin:12px 0 6px;}
.pb-block-btn{width:100%;background:var(--bg3);border:1px solid var(--border);color:var(--mid);font-family:var(--f);font-size:.85rem;letter-spacing:.1em;padding:9px 12px;cursor:pointer;text-align:left;margin-bottom:3px;transition:all .15s;display:flex;align-items:center;gap:8px;}
.pb-block-btn:hover{border-color:rgba(255,107,0,.4);color:var(--o);}
/* ── Template PB-Buttons (pb-definition.html) ── */
.pb-def-group{font-size:.38rem;font-weight:600;letter-spacing:.35em;text-transform:uppercase;color:rgba(255,107,0,.5);padding:12px 4px 4px;margin-top:4px;}
.pb-def-btn{display:flex;align-items:center;gap:8px;width:100%;padding:9px 10px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.6);cursor:pointer;font-family:var(--f);font-size:.48rem;letter-spacing:.1em;text-align:left;transition:all .2s;margin-bottom:2px;}
.pb-def-btn:hover,.pb-def-btn.active{background:rgba(255,107,0,.08);border-color:rgba(255,107,0,.35);color:var(--o);}
.pb-def-icon{width:16px;height:16px;flex-shrink:0;stroke:currentColor;stroke-width:1.5;fill:none;}
.bb-ico{width:26px;height:26px;background:rgba(255,107,0,.08);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.85rem;}
.pb-module{position:relative;border:2px solid transparent;transition:border-color .15s;cursor:default;}
.pb-module:hover{border-color:rgba(255,107,0,.25);}
.pb-module.selected{border-color:var(--o);}
.pb-mod-controls{position:absolute;top:8px;right:8px;display:none;gap:4px;z-index:10;}
.pb-module:hover .pb-mod-controls,.pb-module.selected .pb-mod-controls{display:flex;}
.pb-ctrl{background:rgba(14,14,14,.92);border:1px solid rgba(255,107,0,.4);color:var(--o);font-family:var(--f);font-size:.75rem;letter-spacing:.14em;padding:5px 8px;cursor:pointer;}
.pb-ctrl:hover{background:rgba(255,107,0,.12);}
.pb-mod-drag{position:absolute;top:8px;left:8px;background:rgba(14,14,14,.8);color:rgba(255,107,0,.5);font-size:.85rem;padding:4px 7px;cursor:grab;z-index:10;}
/* ── Page Builder Block Preview: identische Klassen wie artwork-detail.html ── */
.pb-full-img{width:100%;height:60vh;object-fit:cover;object-position:center;display:block;}
/* di-* Klassen — exakt wie artwork-detail.html, nur Höhen skaliert für Editor */
.di-full{position:relative;height:60vh;overflow:hidden;}
.di-full img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.di-full-cap{position:absolute;bottom:20px;right:4vw;font-size:.5rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.25);}
.di-framed{padding:40px 5vw;}
.di-framed img{width:100%;max-height:55vh;object-fit:contain;border:1px solid rgba(255,255,255,.08);}
.di-framed-cap{font-size:.5rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.2);margin-top:12px;}
.di-split,.pb-split{display:grid;grid-template-columns:1fr 1fr;gap:3px;height:45vh;}
.di-split>div,.pb-split div{overflow:hidden;}
.di-split img,.pb-split img{width:100%;height:100%;object-fit:cover;object-position:center;}
.di-editorial,.pb-editorial{display:grid;grid-template-columns:3fr 2fr;min-height:45vh;}
.di-editorial-img,.pb-editorial-img{overflow:hidden;}
.di-editorial-img img,.pb-editorial-img img{width:100%;height:100%;object-fit:cover;object-position:center;}
.di-editorial-text,.pb-editorial-text{display:flex;flex-direction:column;justify-content:center;padding:5vw 4vw;background:rgba(0,0,0,.4);}
.di-big-word,.pb-big-word{font-size:clamp(2.5rem,5vw,6rem);font-weight:950;font-style:italic;line-height:.82;color:rgba(255,107,0,.18);margin-bottom:28px;white-space:pre-line;}
.di-copy,.pb-copy{font-size:.9rem;font-weight:300;line-height:1.9;color:rgba(255,255,255,.4);max-width:320px;}
.di-text2,.pb-text2{display:grid;grid-template-columns:1fr 1fr;gap:5vw;padding:60px 5vw;}
.di-text3,.pb-text3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4vw;padding:60px 5vw;}
.di-col-text,.pb-col-text{font-size:.88rem;font-weight:300;line-height:1.9;color:rgba(255,255,255,.45);}
.di-img-lr,.pb-lr{display:grid;grid-template-columns:1fr 1fr;height:45vh;}
.di-img-lr.rev,.pb-lr.rev{direction:rtl;}
.di-img-lr.rev>*,.pb-lr.rev>*{direction:ltr;}
.di-side-img,.pb-lr-img{overflow:hidden;}
.di-side-img img,.pb-lr-img img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.di-side-text,.pb-lr-text{display:flex;flex-direction:column;justify-content:center;padding:5vw;background:rgba(0,0,0,.3);}
.di-side-copy{font-size:.88rem;font-weight:300;line-height:1.9;color:rgba(255,255,255,.4);}
.pb-placeholder{display:flex;align-items:center;justify-content:center;background:rgba(255,107,0,.04);border:1px dashed rgba(255,107,0,.12);min-height:120px;}
#pbProps{flex-shrink:0;}
.pb-props-head{padding:10px 14px;font-size:.75rem;letter-spacing:.38em;text-transform:uppercase;color:var(--o);background:rgba(255,107,0,.04);border-top:1px solid var(--border);}
.pb-prop{padding:8px 14px 10px;border-bottom:1px solid rgba(255,255,255,.04);}
.pb-prop label{font-size:.85rem;letter-spacing:.3em;text-transform:uppercase;color:var(--dim);display:block;margin-bottom:5px;}
.pb-prop .pb-prop input,.pb-prop textarea{width:100%;background:var(--bg3);border:1px solid var(--border);color:var(--fg);font-family:var(--f);font-size:.85rem;padding:7px 9px;}
.pb-prop .pb-prop input:focus,.pb-prop textarea:focus{border-color:rgba(255,107,0,.4);outline:none;}
.pb-prop textarea{min-height:55px;resize:vertical;}
.pb-upload-zone{border:1px dashed var(--dim);padding:10px;text-align:center;cursor:pointer;position:relative;transition:all .15s;margin-top:6px;}
.pb-upload-zone:hover{border-color:var(--o);}
.pb-upload-zone input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;}
.pb-upload-zone div{font-size:.85rem;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);}

/* ══ FOCUS POINT PICKER ══
   Haupt-Vorschau: echtes Seitenverhältnis (contain) — kein erzwungenes 2:3 + cover (wirkte wie Verzerrung).
   Mini-Thumbs: feste Ratios nur für Galerie-/Hero-Vorschau. */
.fp-wrap{position:relative;cursor:crosshair;user-select:none;width:100%;display:block;}
.fp-wrap img{display:block;width:100%;max-height:min(70vh,520px);height:auto;object-fit:contain;object-position:center;background:#000;}
.fp-dot{position:absolute;width:22px;height:22px;border-radius:50%;border:2px solid #fff;background:var(--o);transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 0 0 1px rgba(0,0,0,.6),0 0 8px rgba(255,107,0,.7);z-index:5;}
.fp-crossh{position:absolute;left:0;right:0;height:1px;background:rgba(255,107,0,.35);pointer-events:none;z-index:4;}
.fp-crossv{position:absolute;top:0;bottom:0;width:1px;background:rgba(255,107,0,.35);pointer-events:none;z-index:4;}
.fp-coords{font-size:.6rem;letter-spacing:.22em;color:rgba(255,107,0,.7);margin-top:5px;text-align:center;}
.fp-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;}
.fp-thumb-lbl{font-size:.44rem;letter-spacing:.24em;text-transform:uppercase;color:var(--dim);margin-bottom:3px;}
.fp-thumb{overflow:hidden;border:1px solid var(--border);}
.fp-thumb.gal{aspect-ratio:2/3;}
.fp-thumb.hero{aspect-ratio:16/9;}
.fp-thumb img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}

/* ══ TEXT EDITOR POPUP ══ */
#txtPopup{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:2000;display:none;align-items:center;justify-content:center;}
#txtPopup.on{display:flex;}
.tp-box{background:var(--bg2);border:1px solid var(--border);width:min(94vw,1000px);max-height:90vh;display:flex;flex-direction:column;}
.tp-head{padding:16px 22px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.tp-title{font-size:.85rem;letter-spacing:.36em;text-transform:uppercase;color:var(--o);}
.tp-close{background:none;border:none;color:var(--mid);font-size:1.2rem;cursor:pointer;transition:color .2s;}.tp-close:hover{color:var(--o);}
.tp-body{flex:1;overflow-y:auto;padding:18px 22px;}
.tp-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.tp-lang-lbl{font-size:.44rem;letter-spacing:.28em;text-transform:uppercase;color:var(--dim);margin-bottom:7px;}
/* color-picker button inside RTE toolbar */
.rt-color-btn{position:relative;overflow:hidden;width:28px;height:28px;padding:0;}
.rt-color-btn input[type=color]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;border:none;padding:0;}
.rt-color-swatch{width:14px;height:14px;border-radius:2px;border:1px solid rgba(255,255,255,.2);pointer-events:none;}
.tp-foot{padding:12px 22px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px;flex-shrink:0;}

/* ══ PAGE BUILDER EXTRAS ══ */
.pb-ratio-row{display:flex;align-items:center;gap:8px;margin-top:5px;}
.pb-ratio-row input[type=range]{flex:1;accent-color:var(--o);cursor:pointer;}
.pb-ratio-lbl{font-size:.65rem;color:var(--o);min-width:58px;text-align:right;white-space:nowrap;}
.pb-preview-btn{font-family:var(--f);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;padding:7px 12px;background:transparent;color:rgba(255,107,0,.65);border:1px solid rgba(255,107,0,.3);cursor:pointer;transition:all .2s;}
.pb-preview-btn:hover{background:rgba(255,107,0,.08);color:var(--o);border-color:var(--o);}
.pb-open-txt{width:100%;background:rgba(255,107,0,.04);border:1px dashed rgba(255,107,0,.2);color:rgba(255,107,0,.55);font-family:var(--f);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;padding:7px;cursor:pointer;margin-top:4px;transition:all .2s;}
.pb-open-txt:hover{background:rgba(255,107,0,.09);border-color:var(--o);color:var(--o);}
.pb-focal-mini{margin-top:6px;}
.pb-focal-mini .fp-wrap img{max-height:120px;}
.pb-range-row{display:flex;align-items:center;gap:8px;}
.pb-range-row input[type=range]{flex:1;accent-color:var(--o);}
.pb-range-val{font-size:.65rem;color:var(--o);min-width:34px;text-align:right;}

/* ══ CROP MODAL ══ */
#cropModal{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:3000;display:none;align-items:center;justify-content:center;}
#cropModal.on{display:flex;}
.crop-box{background:var(--bg2);border:1px solid var(--border);width:min(98vw,1200px);height:90vh;display:flex;flex-direction:column;}
.crop-head{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.crop-head-title{font-size:.65rem;font-weight:700;letter-spacing:.38em;text-transform:uppercase;color:var(--o);}
.crop-close{background:none;border:none;color:var(--mid);font-size:1.2rem;cursor:pointer;transition:color .2s;}.crop-close:hover{color:var(--o);}
.crop-body{flex:1;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:18px;min-height:0;overflow:hidden;}
.crop-body.single{grid-template-columns:1fr;}
.crop-panel{display:flex;flex-direction:column;gap:8px;min-height:0;}
.crop-panel-lbl{font-size:.5rem;letter-spacing:.38em;text-transform:uppercase;color:var(--o);padding-bottom:6px;border-bottom:1px solid var(--border);flex-shrink:0;}
.crop-canvas-wrap{position:relative;overflow:hidden;background:#0a0a0a;border:1px solid var(--border);cursor:move;user-select:none;flex:1;min-height:0;}
.crop-canvas-wrap canvas{display:block;width:100%;height:100%;}
.crop-hint{font-size:.5rem;letter-spacing:.14em;color:var(--dim);text-align:center;flex-shrink:0;}
.crop-zoom-row{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.crop-zoom-row input[type=range]{flex:1;accent-color:var(--o);}
.crop-zoom-lbl{font-size:.5rem;color:var(--o);min-width:34px;text-align:right;}
.crop-foot{padding:12px 18px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px;flex-shrink:0;}

/* ══ SKILL EDITOR ══ */
.sk-item{display:grid;grid-template-columns:60px 1fr 80px auto;gap:8px;align-items:center;padding:10px;background:var(--bg3);border:1px solid var(--border);margin-bottom:5px;cursor:grab;}
.sk-item input{background:var(--bg);border:1px solid var(--border);color:var(--fg);font-family:var(--f);font-size:.85rem;padding:6px 9px;width:100%;}
.sk-item input:focus{border-color:rgba(255,107,0,.4);}
.sk-pct-in{width:60px;}

/* ══ HOBBIES ══ */
.hb-row{display:flex;align-items:center;gap:8px;padding:8px;background:var(--bg3);border:1px solid var(--border);margin-bottom:5px;}
.hb-row select{background:var(--bg);border:1px solid var(--border);color:var(--mid);font-family:var(--f);font-size:.80rem;padding:6px 8px;flex:1;}
.hb-row input{flex:1;background:var(--bg);border:1px solid var(--border);color:var(--fg);font-family:var(--f);font-size:.85rem;padding:6px 9px;}
.hb-preview{width:26px;height:26px;object-fit:contain;flex-shrink:0;}
/* Texte → Hobbies: Karten-Layout (Drag, Vorschau, Felder, Löschen) */
.hb-row.hb-row-hobby{display:grid;grid-template-columns:24px 48px minmax(0,1fr) auto;gap:10px;align-items:start;padding:12px;background:var(--bg3);margin-bottom:8px;border:1px solid var(--border);}
.hb-row.hb-row-hobby .hb-drag{align-self:start;padding-top:14px;}
.hb-icon-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.hb-icon-tools select{flex:1;min-width:0;font-size:.82rem;}
.hb-lang-cols{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:2px;min-width:0;}

/* (Focal-Picker: siehe Block „FOCUS POINT PICKER“ oben — doppelte .fp-wrap-Regeln entfernt) */
.fp-hint{font-size:.85rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin-top:6px;}
.fp-coords{font-size:.85rem;letter-spacing:.1em;color:var(--o);margin-top:3px;font-family:monospace;}

/* ══ MISC ══ */
.empty{text-align:center;padding:60px;color:var(--dim);}
.empty-i{font-size:2.5rem;margin-bottom:14px;}
.empty-t{font-size:.85rem;letter-spacing:.18em;text-transform:uppercase;}
.pw-row{display:flex;gap:8px;max-width:420px;}
.pw-row input{flex:1;background:var(--bg3);border:1px solid var(--border);color:var(--fg);font-family:var(--f);font-size:.82rem;padding:11px 13px;}
.uz{border:1px dashed var(--dim);padding:22px;text-align:center;cursor:pointer;position:relative;transition:all .2s;}
.uz:hover,.uz.drag{border-color:var(--o);background:rgba(255,107,0,.03);}
.uz input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;}
.uz-ico{font-size:1.6rem;color:var(--dim);margin-bottom:6px;}
.uz-t{font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mid);}
.img-prev{width:100%;max-height:360px;height:auto;object-fit:contain;object-position:center;margin-top:10px;display:block;background:#0a0a0a;}
.tw-{display:flex;flex-wrap:wrap;gap:5px;padding:7px;background:var(--bg3);border:1px solid var(--border);min-height:44px;}
.tw-:focus-within{border-color:rgba(255,107,0,.5);}
.tw- input{background:none;border:none;color:var(--fg);font-family:var(--f);font-size:.85rem;flex:1;min-width:80px;padding:2px 4px;}
.tg{background:rgba(255,107,0,.1);border:1px solid rgba(255,107,0,.22);color:var(--o);font-size:.85rem;letter-spacing:.14em;padding:4px 9px;display:inline-flex;align-items:center;gap:5px;}
.tx{cursor:pointer;opacity:.6;transition:opacity .2s;font-size:.85rem;}.tx:hover{opacity:1;}

/* ══ FORCE DARK INPUTS ══ */
input:not([type=file]):not([type=color]):not([type=range]):not([type=checkbox]),
textarea, select {
  background: var(--bg3) !important;
  color: var(--fg) !important;
  border: 1px solid var(--border) !important;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--fg) !important;
  -webkit-box-shadow: 0 0 0 1000px var(--bg3) inset !important;
  caret-color: var(--fg);
}
input:not([type=file]):not([type=color]):not([type=range]):focus,
textarea:focus, select:focus {
  border-color: rgba(255,107,0,.5) !important;
  outline: none !important;
}

/* ══ COMMISSION STATUS PILL ══ */
.comm-status-pill{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:20px;font-family:var(--f);border:1px solid;}
.comm-status-pill.open{color:#4caf50;border-color:rgba(76,175,80,.3);background:rgba(76,175,80,.06);}
.comm-status-pill.paused{color:#ff9800;border-color:rgba(255,152,0,.3);background:rgba(255,152,0,.06);}
.comm-status-pill.closed{color:var(--mid);border-color:var(--border);background:transparent;}
.comm-status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;}
.dot-open{background:#4caf50;box-shadow:0 0 8px rgba(76,175,80,.5);}
.dot-paused{background:#ff9800;}
.dot-closed{background:var(--dim);}
/* ══ ORDER CARD ══ */
/* ══ ORDER CARD GRID ══ */
#ordList{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.ord-result-count{grid-column:1/-1;margin-bottom:4px;}
@media(max-width:900px){#ordList{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){#ordList{grid-template-columns:1fr;}}
.ord-card{background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:0;cursor:pointer;transition:border-color .18s,transform .18s,box-shadow .18s;display:flex;flex-direction:column;overflow:hidden;position:relative;}
.ord-card:hover{border-color:rgba(255,107,0,.4);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.35);}
.ord-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:transparent;transition:background .18s;}
.ord-card.unread::before,.ord-card.os-bg-neu::before{background:var(--o);}
.ord-card.os-bg-arbeit::before{background:#2196f3;}
.ord-card.os-bg-pausiert::before{background:#ffc800;}
.ord-card.os-bg-druck::before{background:#ce93d8;}
.ord-card.os-bg-abgeschlossen::before{background:#4caf50;}
.ord-card.os-bg-storniert::before{background:#f44336;}
/* Archivierte Auftrags-Karten */
.ord-card.archived{opacity:.45;filter:grayscale(.6);pointer-events:auto;}
.ord-card.archived:hover{opacity:.65;transform:none;box-shadow:none;border-color:rgba(255,255,255,.12);}
.ord-card.archived::before{background:var(--dim)!important;}
.ord-arch-badge{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mid);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);padding:3px 9px;border-radius:2px;}
.ord-restore-btn{font-family:var(--f);font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;padding:5px 12px;background:rgba(33,150,243,.08);color:#2196f3;border:1px solid rgba(33,150,243,.25);cursor:pointer;border-radius:2px;transition:all .15s;white-space:nowrap;}
.ord-restore-btn:hover{background:rgba(33,150,243,.18);border-color:#2196f3;}
.ord-perm-del-btn{font-family:var(--f);font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;padding:5px 12px;background:rgba(244,67,54,.06);color:#f44336;border:1px solid rgba(244,67,54,.2);cursor:pointer;border-radius:2px;transition:all .15s;white-space:nowrap;}
.ord-perm-del-btn:hover{background:rgba(244,67,54,.16);border-color:#f44336;}
/* Archiv-Toggle Button in der Filter-Leiste */
.ord-fb-archive{font-family:var(--f);font-size:.82rem;letter-spacing:.18em;text-transform:uppercase;padding:5px 13px;background:transparent;color:var(--dim);border:1px solid rgba(255,255,255,.08);cursor:pointer;transition:all .15s;border-radius:2px;white-space:nowrap;}
.ord-fb-archive:hover{color:var(--mid);border-color:rgba(255,255,255,.18);}
.ord-fb-archive.on{background:rgba(255,255,255,.05);color:var(--fg);border-color:rgba(255,255,255,.22);}
.ord-card.os-bg-pruefung::before{background:#ffc800;}
.ord-card.os-bg-angenommen::before{background:#4caf50;}
.oc-head{padding:18px 18px 12px;flex:1;display:flex;flex-direction:column;}
.oc-type{font-size:.95rem;font-weight:700;color:var(--fg);letter-spacing:-.01em;line-height:1.25;margin-bottom:3px;}
.oc-sub{font-size:.82rem;color:var(--mid);letter-spacing:.04em;margin-bottom:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.oc-price{font-size:1.4rem;font-weight:950;font-style:italic;color:var(--o);line-height:1;margin-bottom:12px;letter-spacing:-.02em;}
.oc-price span{font-size:.78rem;font-weight:400;font-style:normal;color:var(--dim);letter-spacing:.08em;margin-left:5px;vertical-align:middle;}
.oc-meta{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap;margin-top:auto;}
.oc-invoice{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);}
.oc-deadline{font-size:.78rem;letter-spacing:.08em;display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:3px;white-space:nowrap;}
.oc-dl-ok  {background:rgba(76,175,80,.09);color:#4caf50;border:1px solid rgba(76,175,80,.2);}
.oc-dl-warn{background:rgba(255,200,0,.09);color:#ffc800;border:1px solid rgba(255,200,0,.2);}
.oc-dl-crit{background:rgba(255,107,0,.12);color:var(--o);border:1px solid rgba(255,107,0,.4);animation:dlPulse 1.8s ease-in-out infinite;}
.oc-dl-over{background:rgba(244,67,54,.09);color:#f44336;border:1px solid rgba(244,67,54,.2);}
@keyframes dlPulse{0%,100%{opacity:1;}50%{opacity:.55;}}
.oc-foot{padding:10px 18px 14px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px;}
.oc-foot-row{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.ord-status{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;padding:4px 10px;border-radius:3px;font-family:var(--f);flex-shrink:0;}
.ord-status::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0;}
.os-neu        {background:rgba(255,107,0,.12);color:var(--o);          border:1px solid rgba(255,107,0,.25);}
.os-pruefung   {background:rgba(255,200,0,.08);color:#ffc800;           border:1px solid rgba(255,200,0,.2);}
.os-angenommen {background:rgba(76,175,80,.08);color:#4caf50;           border:1px solid rgba(76,175,80,.2);}
.os-arbeit     {background:rgba(33,150,243,.08);color:#2196f3;          border:1px solid rgba(33,150,243,.2);}
.os-pausiert   {background:rgba(255,200,0,.08);color:#ffc800;           border:1px solid rgba(255,200,0,.2);}
.os-druck      {background:rgba(156,39,176,.08);color:#ce93d8;          border:1px solid rgba(156,39,176,.2);}
.os-abgeschlossen{background:rgba(255,255,255,.04);color:var(--mid);    border:1px solid var(--border);}
.os-storniert  {background:rgba(244,67,54,.06);color:#f44336;           border:1px solid rgba(244,67,54,.15);}

/* ── Inline Preis-Edit ── */
.price-inline-wrap{display:flex;align-items:center;gap:8px;padding:9px 0 7px;}
.price-inline-val{font-size:1.15rem;font-weight:700;color:var(--o);letter-spacing:-.01em;cursor:pointer;border-bottom:1px dashed rgba(255,107,0,.3);transition:border-color .2s,color .2s;line-height:1;}
.price-inline-val:hover{color:#ff8c2a;border-bottom-color:var(--o);}
.price-edit-btn{background:transparent;border:1px solid rgba(255,107,0,.25);color:rgba(255,107,0,.5);font-size:.82rem;padding:3px 7px;cursor:pointer;transition:all .15s;line-height:1;}
.price-edit-btn:hover{background:rgba(255,107,0,.1);color:var(--o);border-color:var(--o);}
.price-inline-edit{display:flex;align-items:center;gap:6px;padding:4px 0;}
.price-inline-edit input{width:130px;font-size:.9rem;font-weight:700;color:var(--o);background:var(--bg3);border:1px solid rgba(255,107,0,.5);padding:7px 10px;outline:none;letter-spacing:-.01em;}
.price-inline-edit input:focus{border-color:var(--o);box-shadow:0 0 0 2px rgba(255,107,0,.12);}
.price-save-btn{background:var(--o);border:none;color:#111;font-family:var(--f);font-size:.82rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:8px 14px;cursor:pointer;transition:background .15s;white-space:nowrap;}
.price-save-btn:hover{background:#ff8c2a;}
.price-cancel-btn{background:transparent;border:1px solid rgba(255,255,255,.1);color:var(--dim);font-size:.8rem;padding:7px 9px;cursor:pointer;transition:all .15s;line-height:1;}
.price-cancel-btn:hover{border-color:rgba(255,80,80,.4);color:rgba(255,80,80,.7);}

/* ── Aktions-Buttons im Order-Modal ── */
.od-actions{display:flex;flex-wrap:wrap;gap:6px;padding:14px 0 6px;}
.od-action-btn{font-family:var(--f);font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;padding:8px 14px;border:1px solid;cursor:pointer;transition:all .15s;display:inline-flex;align-items:center;gap:6px;border-radius:2px;}
.od-action-btn .oa-icon{font-size:.8rem;line-height:1;}
.oa-start  {background:rgba(33,150,243,.07); color:#2196f3; border-color:rgba(33,150,243,.3);}
.oa-start:hover  {background:rgba(33,150,243,.18);border-color:#2196f3;}
.oa-pause  {background:rgba(255,200,0,.07);  color:#ffc800; border-color:rgba(255,200,0,.3);}
.oa-pause:hover  {background:rgba(255,200,0,.18);border-color:#ffc800;}
.oa-druck  {background:rgba(156,39,176,.07); color:#ce93d8; border-color:rgba(156,39,176,.3);}
.oa-druck:hover  {background:rgba(156,39,176,.18);border-color:#ce93d8;}
.oa-done   {background:rgba(76,175,80,.07);  color:#4caf50; border-color:rgba(76,175,80,.3);}
.oa-done:hover   {background:rgba(76,175,80,.18);border-color:#4caf50;}
.oa-cancel {background:rgba(244,67,54,.06);  color:#f44336; border-color:rgba(244,67,54,.2);}
.oa-cancel:hover {background:rgba(244,67,54,.14);border-color:#f44336;}
.oa-archive{background:rgba(120,120,120,.06); color:var(--mid); border-color:rgba(255,255,255,.1);}
.oa-archive:hover{background:rgba(120,120,120,.14);color:var(--fg);border-color:rgba(255,255,255,.25);}
.oa-delete {background:rgba(244,67,54,.06);   color:#ef5350; border-color:rgba(244,67,54,.2);}
.oa-delete:hover {background:rgba(244,67,54,.18);border-color:#f44336;color:#ff1744;}
.oa-dupe   {background:rgba(255,167,38,.06);  color:#ffa726; border-color:rgba(255,167,38,.25);}
.oa-dupe:hover   {background:rgba(255,167,38,.15);border-color:#ffa726;}
.oa-invoice{background:rgba(33,150,243,.06);  color:#42a5f5; border-color:rgba(33,150,243,.25);}
.oa-invoice:hover{background:rgba(33,150,243,.15);border-color:#42a5f5;}
.oc-prog-wrap{display:flex;align-items:center;gap:8px;}
.oc-prog-bar{flex:1;height:3px;background:rgba(255,255,255,.07);border-radius:2px;overflow:hidden;}
.oc-prog-fill{height:100%;border-radius:2px;transition:width .4s cubic-bezier(.16,1,.3,1);}
.oc-prog-lbl{font-size:.78rem;color:var(--dim);white-space:nowrap;flex-shrink:0;}
.oc-date{font-size:.82rem;color:var(--dim);letter-spacing:.04em;}

/* ══ ORDER DETAIL MODAL — erweitertes Layout ══ */
.od-layout{display:grid;grid-template-columns:1fr 340px;gap:0;min-height:420px;}
.od-main{padding:0 20px 0 0;border-right:1px solid var(--border);}
.od-side{padding:0 0 0 20px;display:flex;flex-direction:column;gap:18px;}

/* ── Status Workflow ── */
.workflow-steps{display:flex;flex-direction:column;gap:3px;margin-bottom:4px;}
.wf-step{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid transparent;border-radius:4px;cursor:pointer;transition:all .15s;position:relative;}
.wf-step:hover{background:rgba(255,255,255,.03);border-color:rgba(255,107,0,.2);}
.wf-step.wf-current{border-color:var(--o);background:rgba(255,107,0,.06);}
.wf-step.wf-done{opacity:.5;}
.wf-step.wf-future{opacity:.35;}
.wf-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;border:1px solid;}
.wf-step.wf-done   .wf-dot{background:#4caf50;border-color:#4caf50;}
.wf-step.wf-current .wf-dot{background:var(--o);border-color:var(--o);box-shadow:0 0 6px rgba(255,107,0,.5);}
.wf-step.wf-future  .wf-dot{background:transparent;border-color:var(--dim);}
.wf-step.wf-skip    .wf-dot{background:rgba(244,67,54,.4);border-color:#f44336;}
.wf-label{font-size:.85rem;letter-spacing:.08em;flex:1;}
.wf-step.wf-current .wf-label{color:var(--o);font-weight:600;}
.wf-email-hint{font-size:.78rem;letter-spacing:.06em;color:rgba(255,107,0,.55);margin-left:auto;flex-shrink:0;}
.wf-connector{width:1px;height:8px;background:rgba(255,255,255,.07);margin-left:16px;}

/* ── Checklist Progress Bar ── */
.cl-progress{padding:0 0 18px 0;}
.cl-progress-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;}
.cl-progress-label{font-size:.78rem;letter-spacing:.28em;text-transform:uppercase;color:var(--o);}
.cl-progress-stat{font-size:.85rem;font-weight:500;color:var(--mid);letter-spacing:.04em;}
.cl-progress-stat strong{color:var(--fg);font-weight:700;}
.cl-progress-track{width:100%;height:6px;background:rgba(255,255,255,.06);border-radius:3px;overflow:hidden;}
.cl-progress-bar{height:100%;background:var(--o);border-radius:3px;transition:width .35s cubic-bezier(.16,1,.3,1);}
.cl-progress-bar.done{background:#4caf50;}


.checklist{display:flex;flex-direction:column;gap:4px;}
.cl-item{display:flex;align-items:flex-start;gap:9px;padding:7px 10px;border:1px solid transparent;border-radius:4px;transition:border-color .15s;}
.cl-item:hover{border-color:rgba(255,255,255,.06);}
.cl-item.cl-done .cl-label{color:var(--dim);text-decoration:line-through;}
.cl-check{width:16px;height:16px;border:1px solid var(--dim);border-radius:2px;flex-shrink:0;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.65rem;transition:all .15s;margin-top:1px;}
.cl-check.on{background:var(--o);border-color:var(--o);color:#111;}
.cl-label{font-size:.88rem;color:var(--mid);line-height:1.4;flex:1;cursor:pointer;}
.cl-label-inp{font-size:.88rem;color:var(--mid);line-height:1.4;flex:1;cursor:pointer;background:none;border:none;border-bottom:1px solid transparent;outline:none;font-family:inherit;padding:0;width:100%;transition:border-color .15s;}
.cl-label-inp:not([readonly]){cursor:text;border-bottom-color:var(--o);color:var(--fg);}
.cl-item.cl-done .cl-label-inp{color:var(--dim);text-decoration:line-through;}
.cl-add-row{display:flex;gap:6px;margin-top:6px;}
.cl-add-row input{flex:1;font-size:.75rem;background:var(--bg3);border:1px solid var(--border);color:var(--fg);padding:6px 9px;}
.cl-add-row input:focus{border-color:rgba(255,107,0,.4);outline:none;}
.cl-add-row button{background:rgba(255,107,0,.12);border:1px solid rgba(255,107,0,.3);color:var(--o);font-size:.75rem;padding:6px 10px;cursor:pointer;transition:all .15s;}
.cl-add-row button:hover{background:rgba(255,107,0,.22);}
/* Preis-Badge in Checklisten-Einträgen */
.cl-price{font-size:.7rem;font-weight:700;color:var(--o);white-space:nowrap;margin-left:auto;padding:0 4px;opacity:.85;flex-shrink:0;}
.cl-item.cl-done .cl-price{color:var(--dim);}
/* "+ Leistung hinzufügen" Inline-Formular */
.cl-leistung-btn{margin-top:10px;display:flex;align-items:center;gap:6px;background:transparent;border:1px dashed rgba(255,107,0,.3);color:rgba(255,107,0,.6);font-family:var(--f);font-size:.82rem;letter-spacing:.2em;text-transform:uppercase;padding:7px 14px;cursor:pointer;width:100%;transition:all .2s;}
.cl-leistung-btn:hover{border-color:var(--o);color:var(--o);background:rgba(255,107,0,.04);}
.cl-leistung-form{display:none;margin-top:8px;background:rgba(255,107,0,.04);border:1px solid rgba(255,107,0,.18);padding:12px 14px;gap:8px;flex-direction:column;}
.cl-leistung-form.open{display:flex;}
.cl-leistung-form-row{display:flex;gap:8px;align-items:center;}
.cl-leistung-form input{background:var(--bg3);border:1px solid var(--border);color:var(--fg);font-family:var(--f);font-size:.78rem;padding:7px 10px;outline:none;transition:border-color .15s;}
.cl-leistung-form input:focus{border-color:rgba(255,107,0,.5);}
.cl-leistung-form .lf-label{flex:1;}
.cl-leistung-form .lf-price{width:110px;}
.cl-leistung-form .lf-confirm{background:var(--o);border:none;color:#111;font-family:var(--f);font-size:.65rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;padding:8px 16px;cursor:pointer;white-space:nowrap;transition:background .15s;}
.cl-leistung-form .lf-confirm:hover{background:#ff8c2a;}
.cl-leistung-form .lf-cancel{background:transparent;border:1px solid rgba(255,255,255,.1);color:var(--dim);font-size:.8rem;padding:7px 9px;cursor:pointer;transition:all .15s;line-height:1;}
.cl-leistung-form .lf-cancel:hover{border-color:rgba(255,80,80,.4);color:rgba(255,80,80,.7);}
/* Gesamtbetrag unter Checkliste */
.cl-total-row{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;margin-top:6px;border-top:1px solid rgba(255,107,0,.15);background:rgba(255,107,0,.04);}
.cl-total-label{font-size:.78rem;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,107,0,.6);}
.cl-total-val{font-size:.95rem;font-weight:700;color:var(--o);}

/* ── E-Mail Vorlage ── */
.email-tpl{background:var(--bg);border:1px solid var(--border);border-radius:4px;overflow:hidden;}
.email-tpl-head{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border);background:rgba(255,107,0,.04);}
.email-tpl-subject{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,107,0,.7);}
.email-tpl-copy{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;background:transparent;border:1px solid rgba(255,107,0,.3);color:rgba(255,107,0,.7);padding:4px 9px;cursor:pointer;transition:all .15s;}
.email-tpl-copy:hover{background:rgba(255,107,0,.12);color:var(--o);}
.email-tpl-copy.copied{border-color:#4caf50;color:#4caf50;}
.email-tpl-body{padding:12px;font-size:.88rem;line-height:1.75;color:rgba(255,255,255,.45);white-space:pre-wrap;max-height:200px;overflow-y:auto;font-family:inherit;}
.email-open-btn{width:100%;background:transparent;border:1px solid rgba(255,107,0,.25);color:rgba(255,107,0,.7);font-family:var(--f);font-size:.82rem;letter-spacing:.2em;text-transform:uppercase;padding:8px;cursor:pointer;transition:all .15s;margin-top:4px;}
.email-open-btn:hover{background:rgba(255,107,0,.08);color:var(--o);border-color:var(--o);}

/* ── Timeline ── */
.od-timeline{display:flex;flex-direction:column;gap:0;}
.tl-entry{display:flex;gap:10px;position:relative;}
.tl-entry::before{content:'';position:absolute;left:6px;top:18px;bottom:-4px;width:1px;background:rgba(255,255,255,.06);}
.tl-entry:last-child::before{display:none;}
.tl-dot{width:13px;height:13px;border-radius:50%;flex-shrink:0;margin-top:3px;border:1px solid;}
.tl-dot.tl-status{background:rgba(255,107,0,.2);border-color:var(--o);}
.tl-dot.tl-note{background:rgba(255,255,255,.06);border-color:var(--dim);}
.tl-dot.tl-created{background:rgba(76,175,80,.2);border-color:#4caf50;}
.tl-body{padding-bottom:14px;flex:1;}
.tl-what{font-size:.88rem;color:var(--fg);line-height:1.4;}
.tl-when{font-size:.82rem;color:var(--dim);margin-top:2px;}

/* ══ TILE EDITOR ROW ══ */
.tile-row{background:var(--bg3);border:1px solid var(--border);border-radius:5px;padding:13px 16px;margin-bottom:8px;display:grid;gap:10px;align-items:center;}
.tile-row.tile-inactive{opacity:.45;}
.tile-toggle{width:36px;height:20px;background:var(--bg2);border:1px solid var(--border);border-radius:10px;cursor:pointer;position:relative;transition:background .2s;}
.tile-toggle.on{background:var(--o);}
.tile-toggle::after{content:'';position:absolute;width:14px;height:14px;background:#fff;border-radius:50%;top:2px;left:2px;transition:transform .2s;}
.tile-toggle.on::after{transform:translateX(16px);}
.pct-badge{display:inline-block;font-size:.82rem;font-weight:700;letter-spacing:.06em;padding:3px 9px;border-radius:3px;white-space:nowrap;}
.pct-badge.pct-disc{background:rgba(76,175,80,.12);color:#4caf50;border:1px solid rgba(76,175,80,.25);}
.pct-badge.pct-up{background:rgba(255,107,0,.12);color:var(--o);border:1px solid rgba(255,107,0,.25);}
.pct-badge.pct-zero{background:rgba(255,255,255,.05);color:var(--dim);border:1px solid var(--border);}
.lic-row{}
/* ══ COMM MSG CARD ══ */
.cmsg-card{background:var(--bg3);border:1px solid var(--border);border-radius:6px;padding:16px 20px;margin-bottom:10px;}
.cmsg-card.unread{border-left:3px solid var(--o);}
.cmsg-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;}
.cmsg-name{font-size:.82rem;font-weight:600;color:var(--fg);}
.cmsg-email{font-size:.85rem;color:var(--mid);}
.cmsg-date{font-size:.82rem;color:var(--dim);white-space:nowrap;}
.cmsg-type{font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--o);background:var(--ob);padding:2px 8px;border-radius:3px;margin-bottom:8px;display:inline-block;}
.cmsg-body{font-size:.78rem;color:var(--mid);line-height:1.6;margin-bottom:10px;}
.cmsg-actions{display:flex;gap:8px;}
/* ── Breakdown-Box in Nachrichten ── */
.cmsg-breakdown{background:var(--bg2);border:1px solid rgba(255,107,0,.18);border-radius:4px;padding:12px 16px;margin-bottom:12px;}
.cmsg-breakdown-title{font-size:.78rem;letter-spacing:.35em;text-transform:uppercase;color:var(--o);margin-bottom:8px;}
.cmsg-bd-row{display:flex;justify-content:space-between;align-items:baseline;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.04);gap:12px;}
.cmsg-bd-row:last-child{border-bottom:none;padding-top:8px;margin-top:2px;}
.cmsg-bd-row.total{border-top:1px solid rgba(255,107,0,.2);font-weight:600;}
.cmsg-bd-label{font-size:.85rem;color:var(--mid);}
.cmsg-bd-price{font-size:.75rem;color:var(--fg);white-space:nowrap;}
.cmsg-bd-row.total .cmsg-bd-price{color:var(--o);font-size:.9rem;}
/* ── Modal vergrößert für Breakdown ── */
.mb-wide{max-width:900px;}
.ord-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}

/* ══ KACHEL-BUILDER (Leistungsliste im Auftrags-Modal) ══ */
.kb-wrap{background:var(--bg3);border:1px solid var(--border);margin-top:6px;}
.kb-list{display:flex;flex-direction:column;}
.kb-tile{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.04);transition:background .15s;}
.kb-tile:last-child{border-bottom:none;}
.kb-tile:hover{background:rgba(255,255,255,.02);}
.kb-tile-label{flex:1;font-size:.85rem;font-weight:300;color:var(--fg);}
.kb-tile-price{font-size:.85rem;font-weight:700;color:var(--o);white-space:nowrap;min-width:70px;text-align:right;}
.kb-tile-del{background:none;border:none;color:rgba(255,80,80,.35);font-size:1rem;cursor:pointer;padding:0 4px;line-height:1;transition:color .2s;flex-shrink:0;}
.kb-tile-del:hover{color:#ff4c4c;}
.kb-add-row{display:flex;gap:6px;padding:10px 14px;border-top:1px solid rgba(255,255,255,.04);background:rgba(255,255,255,.01);}
.kb-add-row input{background:var(--bg);border:1px solid var(--border);color:var(--fg);font-family:var(--f);font-size:.82rem;padding:7px 10px;transition:border-color .2s;outline:none;}
.kb-add-row input:focus{border-color:rgba(255,107,0,.45);}
.kb-inp-label{flex:1;}
.kb-inp-price{width:88px;}
.kb-add-btn{background:var(--o);border:none;color:#111;font-family:var(--f);font-size:.82rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:7px 14px;cursor:pointer;white-space:nowrap;transition:background .2s;flex-shrink:0;}
.kb-add-btn:hover{background:#ff8c2a;}
.kb-empty{padding:14px 14px 10px;font-size:.88rem;color:var(--dim);font-style:italic;}
.kb-total-row{display:flex;justify-content:space-between;align-items:center;padding:9px 14px;border-top:1px solid rgba(255,107,0,.18);background:rgba(255,107,0,.04);}
.kb-total-lbl{font-size:.65rem;letter-spacing:.32em;text-transform:uppercase;color:rgba(255,107,0,.55);}
.kb-total-val{font-size:1.0rem;font-weight:950;font-style:italic;color:var(--o);}

.ord-breakdown-panel{background:var(--bg);border:1px solid var(--border);padding:18px;border-radius:4px;display:flex;flex-direction:column;gap:0;}
.ord-breakdown-panel .cmsg-breakdown-title{margin-bottom:10px;}
.ord-bd-auto-label{font-size:.82rem;color:var(--dim);letter-spacing:.15em;margin-bottom:12px;}
/* ── Bestellungs-Karten Grid ── */
.order-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;padding-bottom:40px;}
.order-card{background:var(--bg2);border:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;transition:border-color .2s;}
.order-card:hover{border-color:rgba(255,107,0,.25);}
.order-card-thumb{position:relative;height:160px;overflow:hidden;background:#111;flex-shrink:0;}
.order-card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.16,1,.3,1);}
.order-card:hover .order-card-thumb img{transform:scale(1.05);}
.order-card-thumb-multi{display:grid;grid-template-columns:1fr 1fr;height:100%;}
.order-card-thumb-multi .order-card-thumb-cell{overflow:hidden;}
.order-card-thumb-multi .order-card-thumb-cell img{width:100%;height:100%;object-fit:cover;}
.order-card-status-bar{position:absolute;bottom:0;left:0;right:0;height:3px;}
.order-card-body{padding:14px 16px;display:flex;flex-direction:column;gap:6px;flex:1;}
.order-card-name{font-size:.85rem;font-weight:600;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.order-card-meta{font-size:.68rem;color:var(--dim);letter-spacing:.08em;}
.order-card-items{font-size:.72rem;color:var(--mid);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.order-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:8px;border-top:1px solid var(--border);}
.order-card-price{font-size:1rem;font-weight:700;color:var(--o);}
.order-card-status{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;}
.order-card-type-badge{font-size:.52rem;letter-spacing:.15em;text-transform:uppercase;padding:2px 7px;border:1px solid;margin-bottom:4px;display:inline-block;}
.order-card-type-badge.digital{color:var(--o);border-color:rgba(255,107,0,.3);}
.order-card-type-badge.print{color:var(--mid);border-color:var(--dim);}
.order-card-no-img{display:flex;align-items:center;justify-content:center;height:100%;color:var(--dim);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;}
/* ── Nachrichten-Tab Badges ── */
.tab-badge{display:inline-block;background:var(--o);color:#111;font-size:.65rem;font-weight:700;padding:1px 5px;border-radius:10px;margin-left:5px;vertical-align:middle;}
/* ── Kundentabelle K1 ── */
.cust-wrap{overflow-x:auto;width:100%;}
.cust-tbl{width:100%;border-collapse:collapse;font-size:.78rem;}
.cust-tbl th{background:var(--bg2);color:var(--o);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;padding:8px 10px;border-bottom:1px solid var(--border);white-space:nowrap;cursor:pointer;user-select:none;text-align:left;}
.cust-tbl th:hover{color:#fff;}
.cust-tbl th.sort-active{color:#fff;}
.cust-tbl th .sort-arrow{display:inline-block;margin-left:4px;opacity:.6;}
.cust-tbl td{padding:7px 10px;border-bottom:1px solid rgba(255,255,255,.05);color:var(--mid);white-space:nowrap;vertical-align:middle;}
.cust-tbl tr.cust-row:hover td{background:rgba(255,107,0,.04);}
.cust-tbl tr.cust-row.locked td{color:#FF5722;}
.cust-num{font-size:.65rem;color:var(--dim);font-family:monospace;}
.cust-name{color:var(--fg);font-weight:600;}
.cust-email{color:var(--dim);font-size:.72rem;}
.cust-amount{color:var(--o);font-weight:700;}
.cust-trend-up{color:#FF6B00;font-weight:700;}
.cust-trend-dn{color:#FF5722;}
.cust-trend-eq{color:var(--dim);}
.cust-toggle-btn{background:none;border:none;color:var(--dim);cursor:pointer;font-size:.85rem;padding:2px 6px;transition:transform .2s;display:inline-block;line-height:1;}
.cust-toggle-btn.open{transform:rotate(90deg);}
.cust-sub-row td{padding:0!important;background:var(--bg);}
.cust-sub-inner{padding:16px 20px;border-bottom:1px solid var(--border);}
.cust-sub-title{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--o);margin:0 0 8px;font-weight:700;}
.cust-sub-tbl{width:100%;border-collapse:collapse;font-size:.75rem;margin-bottom:14px;}
.cust-sub-tbl th{color:var(--dim);font-size:.63rem;letter-spacing:.1em;text-transform:uppercase;padding:4px 8px;border-bottom:1px solid var(--border);text-align:left;}
.cust-sub-tbl td{padding:5px 8px;border-bottom:1px solid rgba(255,255,255,.04);color:var(--mid);}
.cust-sub-tbl tr:last-child td{border-bottom:none;}
.cust-sub-empty{font-size:.75rem;color:var(--dim);padding:6px 0;}

/* ── Cursor Events Tab ── */
#tab-cursor { padding: 0; }
#cursorPreviewFrame { background: #fff; }
.pb-device-bar{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;background:rgba(0,0,0,.4);border-bottom:1px solid var(--border);flex-shrink:0;}
.pb-device-btn{background:transparent;border:1px solid var(--border);color:var(--dim);padding:4px 10px;font-family:var(--f);font-size:.55rem;letter-spacing:.15em;cursor:pointer;transition:all .2s;}
.pb-device-btn.active{background:rgba(255,107,0,.12);border-color:var(--o);color:var(--o);}
.pb-canvas{min-height:100%;transition:max-width .3s ease,border-radius .3s ease,box-shadow .3s ease;}

/* SMTP-Einstellungen (Tabs) — vorher separates <style> im Panel */
.smtp-tab{font-family:var(--f);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;padding:5px 12px;border:1px solid rgba(255,107,0,.2);color:var(--dim);background:transparent;cursor:pointer;transition:all .2s;}
.smtp-tab-active{border-color:var(--o);color:var(--o);background:rgba(255,107,0,.06);}
