:root{--mint:#34d8b0;--mint-dim:#1d6b59;--orange:#ff8a4c;--orange-dim:#7a4326;--bg:#0c1116;--bg2:#121922;--panel:#161f29;--line:#243140;--txt:#e8eef4;--txt2:#94a6b8;--txt3:#5f7385;--sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--head:"Space Grotesk",var(--sans);--col-w:236px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--txt);font:14px/1.5 var(--sans);-webkit-font-smoothing:antialiased;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}input,textarea,select{font:inherit}a{color:var(--mint)}.app{flex-direction:column;height:100%;display:flex}header{background:var(--bg2);border-bottom:1px solid var(--line);z-index:40;flex:0 0 58px;align-items:center;gap:14px;height:58px;padding:0 18px;display:flex;position:relative}.brand{font-family:var(--head);letter-spacing:-.01em;white-space:nowrap;align-items:baseline;gap:9px;font-size:16px;font-weight:700;display:flex}.brand .dot{color:var(--mint)}.bpsel{border:1px solid var(--line);color:var(--txt2);background:#0d141b;border-radius:8px;outline:none;max-width:230px;padding:6px 9px;font-size:13px}.bpsel:focus{border-color:var(--mint-dim)}.modes{border:1px solid var(--line);background:#0d141b;border-radius:9px;gap:2px;padding:3px;display:flex}.modes button{color:var(--txt2);border-radius:6px;padding:6px 14px;font-size:13px;font-weight:500}.modes button.on{background:var(--mint);color:#06231c;font-weight:600}.hspacer{flex:1}.search{border:1px solid var(--line);background:#0d141b;border-radius:8px;align-items:center;gap:7px;height:33px;padding:0 10px;display:flex}.search input{color:var(--txt);background:0 0;border:0;outline:none;width:140px;font-size:13px}.search input::placeholder{color:var(--txt3)}.tbtn{border:1px solid var(--line);color:var(--txt2);white-space:nowrap;background:#0d141b;border-radius:8px;padding:7px 12px;font-size:13px}.tbtn:hover{border-color:var(--mint-dim);color:var(--txt)}.tbtn.pri{background:var(--mint);color:#06231c;border-color:var(--mint);font-weight:600}.tbtn:disabled{opacity:.45;cursor:default}.who{color:var(--txt3);white-space:nowrap;font-size:12px}.bar{border-bottom:1px solid var(--line);z-index:30;background:#0e151c;flex:0 0 42px;align-items:center;gap:6px;height:42px;padding:0 18px;display:flex;position:relative;overflow-x:auto}.bar::-webkit-scrollbar{display:none}.bar .lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--txt3);white-space:nowrap;margin-right:4px;font-size:11px;font-weight:600}.acp{border:1px solid var(--line);color:var(--txt3);white-space:nowrap;background:#0d141b;border-radius:20px;padding:5px 12px;font-size:12.5px}.acp:hover{border-color:var(--mint-dim);color:var(--txt2)}.acp.on{border-color:var(--mint-dim);color:#8fe0cb;background:#12241f}.acp b{opacity:.55;font-variant-numeric:tabular-nums;margin-left:4px;font-weight:600}.wrap{flex:1;min-height:0;display:flex}.stage{cursor:grab;background:radial-gradient(circle at 1px 1px,#1c2632 1px,transparent 0) 0 0/28px 28px, var(--bg);flex:1;position:relative;overflow:hidden}.stage.drag{cursor:grabbing}.world{transform-origin:0 0;position:absolute;top:0;left:0}.world svg{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.colhead{width:var(--col-w);position:absolute}.colhead h3{font-family:var(--head);letter-spacing:.03em;text-transform:uppercase;color:var(--txt2);font-size:13px;font-weight:700}.colhead p{color:var(--txt3);margin-top:2px;font-size:11.5px}.colhead .rule{background:var(--line);border-radius:2px;height:2px;margin-top:9px}.node{width:var(--col-w);background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--txt3);cursor:pointer;border-radius:10px;padding:10px 11px;transition:opacity .14s,transform .12s,box-shadow .14s,border-color .14s;position:absolute}.node:hover{transform:translateY(-1px);box-shadow:0 8px 22px #0008}.node .nm{font-family:var(--head);font-size:13.5px;font-weight:500;line-height:1.3}.node .pr{color:var(--txt3);font-variant-numeric:tabular-nums;margin-top:6px;font-size:11.5px}.node .pr b{color:var(--txt2);font-weight:600}.node[data-tier=pflicht]{border-left-color:var(--mint)}.node[data-tier=empfohlen]{border-left-color:#5aa9e6}.node[data-tier=option]{border-left-color:var(--orange)}.node.sel{border-color:var(--mint);box-shadow:0 0 0 1px var(--mint),0 10px 28px #000a}.node.dim{opacity:.2}.node.rel{border-color:var(--mint-dim)}.node.hide{display:none}.node.linktarget{border-color:var(--orange);box-shadow:0 0 0 1px var(--orange)}.config .node{padding-left:32px}.node .cb{border:1.5px solid var(--txt3);color:#06231c;border-radius:4px;justify-content:center;align-items:center;width:15px;height:15px;font-size:10px;font-weight:700;line-height:1;display:none;position:absolute;top:11px;left:10px}.config .node .cb{display:flex}.config .node.off{opacity:.34;border-left-color:var(--txt3)!important}.config .node.on .cb{background:var(--mint);border-color:var(--mint)}.config .node.on .cb:after{content:"✓"}.config .node.locked .cb{background:var(--mint-dim);border-color:var(--mint-dim)}.config .node.locked .cb:after{content:"✓";color:#cdeee5}.node .hit{display:none}.config .node .hit{border-radius:9px 0 0 9px;width:30px;display:block;position:absolute;top:0;bottom:0;left:0}.config .node .hit:hover{background:#ffffff0d}.node .auto{background:var(--orange);color:#2b1206;letter-spacing:.02em;border-radius:20px;padding:1.5px 6px;font-size:9.5px;font-weight:700;display:none;position:absolute;top:-8px;right:8px}.config .node.autoadd .auto{display:block}.node .tip{background:var(--orange);color:#2b1206;z-index:15;border-radius:7px;padding:6px 9px;font-size:11.5px;font-weight:500;line-height:1.4;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 6px 18px #0009}aside{background:var(--bg2);border-left:1px solid var(--line);flex-direction:column;flex:0 0 352px;width:352px;display:flex;overflow:hidden}.pad{padding:16px 18px}.ph{border-bottom:1px solid var(--line)}.ph .tier{letter-spacing:.07em;text-transform:uppercase;font-size:10.5px;font-weight:700}.ph h2{font-family:var(--head);letter-spacing:-.01em;margin:5px 0 3px;font-size:19px;font-weight:700;line-height:1.25}.ph .area{color:var(--txt3);font-size:12px}.pbody{flex:1;overflow-y:auto}.pbody::-webkit-scrollbar{width:9px}.pbody::-webkit-scrollbar-thumb{border:3px solid var(--bg2);background:#26333f;border-radius:9px}.sec{border-bottom:1px solid var(--line);padding:14px 18px}.sec h4{letter-spacing:.08em;text-transform:uppercase;color:var(--txt3);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:10.5px;font-weight:700;display:flex}.sec h4 button{color:var(--mint);letter-spacing:0;text-transform:none;font-size:11px;font-weight:600}.sec p{color:var(--txt2);white-space:pre-wrap;font-size:13.5px;line-height:1.55}.benefit{border:1px solid var(--mint-dim);background:#12241f;border-radius:9px;padding:11px 12px}.benefit p{color:#a9e6d6;font-size:13.5px}.note{border:1px solid var(--orange-dim);color:#f0c3a4;background:#241a12;border-radius:8px;padding:9px 11px;font-size:12.5px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);color:var(--txt2);cursor:pointer;background:#0d141b;border-radius:7px;align-items:center;gap:6px;padding:5px 9px;font-size:12px;display:flex}.chip:hover{border-color:var(--mint-dim);color:var(--txt)}.chip i{background:var(--txt3);border-radius:50%;flex:0 0 5px;width:5px;height:5px}.chip.req i{background:var(--mint)}.chip.enh i{background:#5aa9e6}.chip.by i{background:var(--orange)}.chip .x{color:var(--txt3);margin-left:2px;font-weight:700}.chip .x:hover{color:var(--orange)}.empty{text-align:center;color:var(--txt3);padding:52px 26px;font-size:13.5px;line-height:1.6}.empty b{font-family:var(--head);color:var(--txt2);margin-bottom:7px;font-size:15px;display:block}.f{margin-bottom:11px}.f:last-child{margin:0}.f label{color:var(--txt3);margin-bottom:4px;font-size:11px;display:block}.f input,.f textarea,.f select{border:1px solid var(--line);width:100%;color:var(--txt);resize:vertical;background:#0d141b;border-radius:8px;outline:none;padding:8px 10px;font-size:13.5px}.f input:focus,.f textarea:focus,.f select:focus{border-color:var(--mint-dim)}.f2{grid-template-columns:1fr 1fr;gap:9px;display:grid}.pf label{color:var(--txt3);margin-bottom:4px;font-size:11px;display:block}.pf div{border:1px solid var(--line);background:#0d141b;border-radius:8px;align-items:center;gap:5px;padding:7px 10px;display:flex}.pf input{color:var(--txt);font-variant-numeric:tabular-nums;background:0 0;border:0;outline:none;width:100%;font-size:15px;font-weight:600}.pf span{color:var(--txt3);white-space:nowrap;font-size:12px}.rowbtns{gap:7px;margin-top:12px;display:flex}.rowbtns button{border:1px solid var(--line);color:var(--txt2);border-radius:8px;flex:1;padding:9px;font-size:12.5px;font-weight:600}.rowbtns button.pri{background:var(--mint);color:#06231c;border-color:var(--mint)}.rowbtns button.danger{border-color:var(--orange-dim);color:#f0a87c}.rowbtns button.danger:hover{background:#2a170e}.hint{color:var(--txt3);margin-top:7px;font-size:11.5px;line-height:1.5}.sum{border-top:1px solid var(--line);background:#0d141b;padding:13px 18px}.sumrow{color:var(--txt3);justify-content:space-between;align-items:baseline;margin-bottom:5px;font-size:12.5px;display:flex}.sumrow b{font-family:var(--head);color:var(--txt);font-variant-numeric:tabular-nums;font-size:19px;font-weight:700}.sumrow b.m{color:var(--mint)}.presets{gap:5px;margin-bottom:11px;display:flex}.presets button{border:1px solid var(--line);color:var(--txt3);border-radius:7px;flex:1;padding:6px;font-size:11.5px}.presets button:hover{border-color:var(--mint-dim);color:var(--txt)}.sumacts{gap:7px;margin-top:11px;display:flex}.sumacts button{border:1px solid var(--line);color:var(--txt2);border-radius:8px;flex:1;padding:9px;font-size:12.5px;font-weight:600}.sumacts button.pri{background:var(--mint);color:#06231c;border-color:var(--mint)}.legend{border:1px solid var(--line);color:var(--txt2);z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#131c26e8;border-radius:10px;padding:11px 13px;font-size:11.5px;position:absolute;bottom:14px;left:14px}.legend div{align-items:center;gap:7px;margin-bottom:5px;display:flex}.legend div:last-child{margin:0}.legend .b{border-radius:2px;width:3px;height:13px}.legend svg{flex:0 0 22px;position:static}.zoom{z-index:20;gap:5px;display:flex;position:absolute;bottom:14px;right:14px}.zoom button{border:1px solid var(--line);width:31px;height:31px;color:var(--txt2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#131c26e8;border-radius:8px;font-size:15px}.zoom button:hover{border-color:var(--mint-dim);color:var(--txt)}.zoom button.w{width:auto;padding:0 11px;font-size:12px}.ov{z-index:90;background:#060a0ee6;padding:34px 20px;position:fixed;inset:0;overflow-y:auto}.dlg{background:var(--panel);border:1px solid var(--line);border-radius:12px;max-width:520px;margin:0 auto;padding:22px 24px}.dlg h2{font-family:var(--head);margin-bottom:4px;font-size:19px;font-weight:700}.dlg .sub{color:var(--txt3);margin-bottom:18px;font-size:13px}.dlg .drop{border:1.5px dashed var(--line);text-align:center;color:var(--txt3);cursor:pointer;border-radius:10px;padding:26px;font-size:13px}.dlg .drop:hover{border-color:var(--mint-dim);color:var(--txt2)}.cfglist{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.cfgitem{border:1px solid var(--line);background:#0d141b;border-radius:9px;align-items:center;gap:10px;padding:10px 12px;display:flex}.cfgitem .n{flex:1;min-width:0}.cfgitem .n b{font-size:13.5px;font-weight:600;display:block}.cfgitem .n small{color:var(--txt3);font-size:11.5px}.cfgitem button{color:var(--txt3);border:1px solid var(--line);border-radius:6px;padding:4px 8px;font-size:11.5px}.cfgitem button:hover{border-color:var(--mint-dim);color:var(--txt)}.linkbox{gap:6px;margin-top:10px;display:flex}.linkbox input{border:1px solid var(--mint-dim);color:#8fe0cb;background:#0d141b;border-radius:8px;outline:none;flex:1;padding:8px 10px;font-size:12px}.sheet{color:#16202a;background:#fff;border-radius:12px;max-width:760px;margin:0 auto;padding:44px 48px}.sheet h1{font-family:var(--head);letter-spacing:-.02em;font-size:26px;font-weight:700}.sheet .sub{color:#6a7885;margin-top:4px;font-size:13.5px}.sheet h3{font-family:var(--head);text-transform:uppercase;letter-spacing:.07em;color:#8593a0;border-bottom:1px solid #e6ebef;margin:26px 0 8px;padding-bottom:6px;font-size:12px;font-weight:700}.sheet table{border-collapse:collapse;width:100%}.sheet td{vertical-align:top;border-bottom:1px solid #f0f3f5;padding:8px 0;font-size:13.5px}.sheet td.p{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;color:#48545f}.sheet .mi{color:#8593a0;margin-top:2px;font-size:11.5px}.sheet .tot{border-top:2px solid #16202a;justify-content:flex-end;gap:44px;margin-top:30px;padding-top:16px;display:flex}.sheet .tot div{text-align:right}.sheet .tot small{text-transform:uppercase;letter-spacing:.06em;color:#8593a0;margin-bottom:3px;font-size:11px;display:block}.sheet .tot b{font-family:var(--head);font-variant-numeric:tabular-nums;font-size:23px}.sheet .fine{color:#8593a0;margin-top:22px;font-size:11.5px;line-height:1.6}.ovbar{justify-content:flex-end;gap:8px;max-width:760px;margin:0 auto 14px;display:flex}.ovbar button{border:1px solid var(--line);color:var(--txt2);background:var(--panel);border-radius:8px;padding:8px 15px;font-size:13px}.ovbar button.pri{background:var(--mint);color:#06231c;border-color:var(--mint);font-weight:600}.login{justify-content:center;align-items:center;height:100%;padding:20px;display:flex}.loginbox{background:var(--panel);border:1px solid var(--line);border-radius:14px;width:100%;max-width:360px;padding:28px}.loginbox .brand{justify-content:center;margin-bottom:6px;font-size:20px}.loginbox .sub{text-align:center;color:var(--txt3);margin-bottom:22px;font-size:13px}.loginbox button.pri{background:var(--mint);color:#06231c;border-radius:9px;width:100%;margin-top:4px;padding:11px;font-weight:600}.loginbox .alt{text-align:center;color:var(--txt3);margin-top:14px;font-size:12.5px}.err{color:#f0b0a4;background:#2a1410;border:1px solid #7a2e26;border-radius:8px;margin-bottom:12px;padding:9px 11px;font-size:12.5px}.ok{border:1px solid var(--mint-dim);color:#8fe0cb;background:#12241f;border-radius:8px;margin-bottom:12px;padding:9px 11px;font-size:12.5px}.center{height:100%;color:var(--txt3);justify-content:center;align-items:center;font-size:14px;display:flex}@media print{body{overflow:visible}.app,.ovbar{display:none!important}.ov{background:#fff;padding:0;display:block;position:static;overflow:visible}.sheet{border-radius:0;max-width:none;padding:0}}
