:root{color-scheme:light dark;--bg:#fff;--fg:#1a1a1a;--mut:#666;--line:#ddd;--acc:#2b59c3;--err:#b3261e;--ok:#1b6e3a}
@media (prefers-color-scheme:dark){:root{--bg:#161616;--fg:#eee;--mut:#aaa;--line:#333;--acc:#8ab4ff;--err:#ff8a80;--ok:#7ddc9c}}
*{box-sizing:border-box}
body{margin:0;font:16px/1.5 system-ui,sans-serif;background:var(--bg);color:var(--fg)}
header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;border-bottom:1px solid var(--line)}
header strong{letter-spacing:.02em}
header nav{display:flex;gap:1rem;align-items:center}
main{max-width:56rem;margin:1.5rem auto;padding:0 1.25rem}
h1{font-size:1.4rem;margin:0 0 1rem}
a{color:var(--acc)}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--line);vertical-align:middle}
th{color:var(--mut);font-weight:600;font-size:.85rem}
code{font-size:.8rem;color:var(--mut)}
label{display:block;margin:.8rem 0 .25rem;font-weight:600;font-size:.9rem}
input,select,textarea{width:100%;padding:.5rem;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg);font:inherit}
textarea{min-height:5rem}
button{padding:.5rem 1rem;border:1px solid var(--acc);background:var(--acc);color:#fff;border-radius:6px;font:inherit;cursor:pointer}
button.link{background:none;border:none;color:var(--acc);padding:0}
form.inline{display:inline-flex;gap:.4rem;align-items:center}
form.inline select{width:auto}
.err{color:var(--err)} .ok{color:var(--ok)} .mut{color:var(--mut)}
.card{max-width:26rem;margin:4rem auto;padding:1.5rem;border:1px solid var(--line);border-radius:10px}
.badge{padding:.1rem .5rem;border-radius:99px;border:1px solid var(--line);font-size:.8rem}
ul.errs{margin:.5rem 0;padding-left:1.2rem}
mark{background:#ffe08a;color:#1a1a1a;padding:0 .25rem;border-radius:3px;font-weight:600}
.draft{border:2px solid var(--err);color:var(--err);padding:.6rem .9rem;border-radius:6px;margin:0 0 1.2rem}
main.legal{max-width:46rem}
main.legal h2{font-size:1.1rem;margin:1.6rem 0 .4rem}

/* ---- Kunden-Dashboard (/app) ---- */
main.wide{max-width:70rem}
body.artist header{border-bottom:2px solid var(--acc)}
.demo{background:#fff3cd;color:#5c4400;border:1px solid #e0b84a;border-radius:8px;padding:.7rem 1rem;margin:0 0 1rem}
@media (prefers-color-scheme:dark){.demo{background:#3b3210;color:#ffe9a0;border-color:#7a6420}}
.panel{border:1px solid var(--line);border-radius:10px;padding:1rem 1.2rem;margin:0 0 1rem}
.panel h2{font-size:1.05rem;margin:0 0 .6rem}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:1rem}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1rem;margin:0 0 1rem}
.kpi{border:1px solid var(--line);border-radius:10px;padding:.8rem 1rem;display:flex;flex-direction:column}
.kl{color:var(--mut);font-size:.82rem}.kv{font-size:1.8rem;font-weight:700;line-height:1.2}.kd{font-size:.85rem}
.up{color:var(--ok)}.down{color:var(--err)}
svg.chart{width:100%;height:auto;max-height:12rem}
svg.chart .grid{stroke:var(--line);stroke-width:1}
svg.chart .line{stroke:var(--acc);stroke-width:2}
svg.chart .area{fill:var(--acc);fill-opacity:.12}
svg.chart .ax{fill:var(--mut);font-size:10px}
ol.posts{list-style:none;padding:0;margin:0}
li.post{border-bottom:1px solid var(--line);padding:.6rem 0}li.post:last-child{border-bottom:none}
li.post .ph{font-size:.9rem}li.post .pc{margin:.15rem 0}li.post .pm{color:var(--mut);font-size:.85rem}li.post .pw{font-size:.88rem;margin-top:.2rem}
.draft-item{border-top:1px solid var(--line);padding-top:.6rem;margin-top:.6rem}.draft-item h3{font-size:.98rem;margin:0 0 .3rem}
textarea[readonly]{background:var(--bg);width:100%}
.pwbox{border-color:var(--ok)}code.big{font-size:1.1rem;padding:.1rem .4rem;border:1px solid var(--line);border-radius:4px;color:var(--fg)}
.foot{max-width:70rem;margin:2rem auto;padding:0 1.25rem;color:var(--mut);font-size:.85rem}
