:root{--bg:#06110e;--surface:#0d1c17;--surface2:#11251e;--surface3:#173128;--line:#23483b;--line-soft:#17372d;--mint:#61f2ae;--mint-strong:#40df98;--mint-dim:#8ab9a5;--text:#f5faf7;--muted:#88a39a;--amber:#ffbf52;--red:#ff766e;--card:var(--surface);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-height:100vh;color:var(--text);background:radial-gradient(circle at 78% -8%,rgba(28,103,75,.25),transparent 30rem),linear-gradient(180deg,#06110e 0%,#081510 100%);font-size:16px;line-height:1.45}button,input,select,textarea{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(97,242,174,.32);outline-offset:2px}
/* Login */
.authScreen{position:fixed;inset:0;z-index:100;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,480px);place-items:stretch;background:radial-gradient(circle at 18% 20%,rgba(45,151,109,.23),transparent 32rem),#06110e;padding:0;overflow:auto}.authScreen.hidden{display:none}.authBrandPanel{position:relative;display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem,8vw,8rem);overflow:hidden}.authBrandPanel:before{content:"";position:absolute;inset:10% -10% auto 25%;height:75%;opacity:.2;background:repeating-radial-gradient(ellipse at 50% 50%,transparent 0 20px,#45d997 21px 22px,transparent 23px 42px);transform:rotate(-10deg);mask-image:linear-gradient(90deg,transparent,#000)}.authBrandPanel>*{position:relative}.brandMark{display:grid;place-items:center;width:64px;height:64px;border:1px solid rgba(97,242,174,.4);border-radius:20px;background:rgba(97,242,174,.1);color:var(--mint);font-size:2rem;box-shadow:0 18px 60px rgba(0,0,0,.35)}.authBrandPanel>p{margin:2rem 0 .7rem;color:var(--mint);font-size:.78rem;font-weight:800;letter-spacing:.16em}.authBrandPanel h2{max-width:680px;margin:0;font-size:clamp(2.8rem,6vw,5.7rem);line-height:.98;letter-spacing:-.06em}.authBrandPanel small{color:var(--muted);font-size:1rem}.brandRoute{display:flex;align-items:center;width:min(420px,80%);margin:2.2rem 0 1.2rem}.brandRoute span{width:13px;height:13px;border-radius:50%;background:var(--mint);box-shadow:0 0 24px var(--mint)}.brandRoute i{flex:1;border-top:2px dashed var(--mint);opacity:.65}.authCard{align-self:center;width:calc(100% - 3rem);max-width:430px;margin:2rem auto;padding:2rem;background:rgba(13,28,23,.88);border:1px solid rgba(97,242,174,.18);border-radius:28px;box-shadow:0 30px 90px rgba(0,0,0,.55);backdrop-filter:blur(22px)}.authLogo{display:none}.authCard h1{margin:0;text-align:left;font-size:2rem;letter-spacing:-.04em}.authCard>p{text-align:left;margin:.5rem 0 1.6rem;color:var(--muted)}.authCard label{margin:1rem 0;color:#cde0d8;font-size:.83rem;font-weight:700}.authCard input{margin-top:.45rem;min-height:54px;padding:0 1rem;background:#091612;border:1px solid #26483c;border-radius:14px;color:var(--text);transition:.18s}.authCard input:focus{border-color:var(--mint);box-shadow:0 0 0 4px rgba(97,242,174,.08)}.authCard .primary{min-height:54px;margin:1.25rem 0 .75rem;border-radius:14px;font-size:1rem}.authLinks{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.authLinks button{padding:.7rem .3rem;color:var(--mint);font-size:.83rem}.authLinks #showLogin{grid-column:1/-1}.passwordWrap{position:relative}.passwordWrap input{padding-right:3.2rem}.passwordEye{position:absolute;right:.55rem;bottom:.43rem;width:40px;height:40px;border:0;border-radius:10px;background:transparent;color:var(--muted)}
/* Header und Grundlayout */
header{height:92px;display:flex;align-items:center;gap:18px;padding:14px max(20px,calc((100% - 1040px)/2));position:sticky;top:0;z-index:12;background:rgba(6,17,14,.88);backdrop-filter:blur(22px);border:0}header>div{flex:1}header h1{margin:0;font-size:1.55rem;letter-spacing:-.04em}header span{display:inline-flex;align-items:center;gap:7px;margin-top:3px;color:var(--mint);font-size:.82rem}header span:before{content:"";width:9px;height:9px;border-radius:50%;background:currentColor;box-shadow:0 0 12px currentColor}.icon{width:48px;height:48px;border:0;border-radius:14px;background:transparent;color:var(--text);font-size:1.55rem}.icon:hover{background:rgba(97,242,174,.08)}#privacyBtn{border:1px solid var(--line);font-size:0}#privacyBtn:after{content:"▣";font-size:1.35rem;color:#dce9e4}
main{width:min(100%,1040px);margin:auto;padding:10px 20px 120px}.view{display:none}.view.active{display:block;animation:viewIn .22s ease}@keyframes viewIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}h2{letter-spacing:-.035em}.sectionHead{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:12px 0 20px}.sectionHead>div{min-width:0}.sectionHead p,.hero>p{margin:0;color:#79ab98;font-size:.86rem}.sectionHead h2{margin:.15rem 0;font-size:1.7rem}.primary{border:0;border-radius:14px;padding:13px 17px;background:linear-gradient(135deg,#70f7b8,#4ae6a0);color:#052017;font-weight:850;box-shadow:0 9px 24px rgba(64,223,152,.13)}.primary:hover{filter:brightness(1.05);transform:translateY(-1px)}.compact{padding:10px 13px}.full{width:100%}
/* Startseite wie Referenz */
#dashboard>.hero{position:relative;min-height:410px;margin:14px 0 44px;padding:38px;border:1px solid #245542;border-radius:28px;overflow:hidden;background:radial-gradient(circle at 85% 20%,rgba(31,153,105,.36),transparent 38%),linear-gradient(145deg,#11392d,#081c16 68%);box-shadow:0 30px 80px rgba(0,0,0,.3)}#dashboard>.hero:before{content:"";position:absolute;inset:-15% -10% 0 48%;opacity:.18;background:repeating-radial-gradient(ellipse at 60% 50%,transparent 0 16px,#6bf2b2 17px 18px,transparent 19px 34px);transform:rotate(-12deg)}#dashboard>.hero:after{content:"⌖  · · ·  ⌁  · · ·  ●";position:absolute;right:7%;top:33%;width:39%;color:var(--mint);font-size:1.7rem;letter-spacing:.15em;transform:rotate(-12deg);text-align:center}#dashboard>.hero>*{position:relative;z-index:1}#dashboard>.hero>p{font-size:1rem}#dashboard>.hero h2{max-width:560px;margin:16px 0 42px;font-size:clamp(2.25rem,6vw,4rem);line-height:1.02;letter-spacing:-.055em}#dashboard .chips{display:grid;grid-template-columns:repeat(3,minmax(100px,1fr));gap:12px;max-width:680px;margin:0 0 30px}#dashboard .chips span{display:flex;align-items:center;justify-content:center;min-height:62px;padding:10px 14px;border:1px solid #2e6b55;border-radius:16px;background:rgba(6,25,19,.55);font-weight:750}#dashboard .hero .primary{width:min(100%,680px);min-height:66px;font-size:1.1rem}#dashboard .hero .primary:after{content:"  →";font-size:1.4rem}#dashboard>h2{margin:0 0 18px;font-size:2rem}#dashboard>.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:40px}.tile{position:relative;min-height:178px;padding:28px;border:1px solid #234a3c;border-radius:22px;background:linear-gradient(145deg,#0e211a,#0a1814);color:var(--mint);font-size:2rem;text-align:left;box-shadow:none}.tile:after{content:"›";position:absolute;right:24px;top:50%;color:#8ba59b;font-size:2.3rem;transform:translateY(-50%)}.tile:hover{border-color:#3d7e63;background:#10271f}.tile b{display:block;margin-top:20px;color:var(--text);font-size:1.15rem}.tile small{display:block;margin-top:4px;color:var(--muted);font-size:.86rem}.tile:nth-child(1){font-size:0}.tile:nth-child(1):before{content:"●";font-size:2.5rem}.tile:nth-child(2){font-size:0}.tile:nth-child(2):before{content:"☑";font-size:2.5rem}.tile:nth-child(3){font-size:0}.tile:nth-child(3):before{content:"▣";font-size:2.5rem}.tile:nth-child(4){font-size:0}.tile:nth-child(4):before{content:"✦";font-size:2.5rem}.tile b,.tile small{font-size:initial}.tile b{font-size:1.15rem}.tile small{font-size:.86rem}#dashboard>.sectionHead{margin-top:16px}#tourCards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
/* Arbeitsansichten */
.map{height:330px;border:1px solid #265140;border-radius:24px;box-shadow:0 18px 45px rgba(0,0,0,.23)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-top:16px}.card,.panel,.checkGroup,.teamPanel,.summary,.info,.routeItem,.setting,.output{background:linear-gradient(145deg,#10221c,#0c1a16);border:1px solid var(--line-soft);border-radius:18px;box-shadow:0 12px 34px rgba(0,0,0,.14)}.card,.panel{padding:18px}.card h3,.panel h3{margin-top:0}.route{gap:10px}.routeItem{padding:15px}.routeNum{background:#1c4435;color:var(--mint)}.summary,.info{padding:16px}.filterBar{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin:0 0 18px}.sectionHead>.filterBar{flex:1;margin:0}.warning{border-radius:16px}.moduleGrid{gap:16px}.listRow{border-color:var(--line-soft)}label{color:#c1d3cc;font-weight:650}input,select,textarea{min-height:50px;margin-top:7px;padding:12px 14px;border:1px solid #284a3e;border-radius:13px;background:#091813;color:var(--text)}textarea{min-height:120px}.actions button,.setting button,#resetChecks{border:1px solid #315546;border-radius:12px;background:#132b23;color:var(--text);padding:11px 13px}.badge{background:#173a2d;color:var(--mint)}dialog{width:min(94%,560px);max-height:90vh;padding:22px;border:1px solid #2c5847;border-radius:24px;background:#0c1d17;color:var(--text);box-shadow:0 30px 100px #000a}dialog form{overflow:auto;max-height:calc(90vh - 44px);padding:2px}.check{border-color:var(--line-soft)}
/* Menü und Bottom-Navigation */
aside{left:-340px;width:min(330px,88vw);padding:26px;background:#0a1a15;border-right:1px solid #23483b;box-shadow:20px 0 80px #0008;overflow:auto}aside.open{left:0}aside h2{font-size:1.6rem}aside button{padding:15px 10px;border-color:#18372c;border-radius:10px}aside button:hover,aside button.active{background:#123126;color:var(--mint)}#scrim.open{backdrop-filter:blur(4px)}nav{left:50%;right:auto;bottom:0;width:min(100%,760px);height:84px;padding:8px max(8px,env(safe-area-inset-left)) max(8px,env(safe-area-inset-bottom));transform:translateX(-50%);border:1px solid #23483b;border-bottom:0;border-radius:24px 24px 0 0;background:rgba(7,20,16,.94);backdrop-filter:blur(22px);box-shadow:0 -18px 50px rgba(0,0,0,.25)}nav button{position:relative;color:#718c82;font-size:1.25rem;border-radius:14px}nav span{font-size:.72rem;font-weight:700}nav button.active{color:var(--mint);background:rgba(97,242,174,.06)}nav button.active:after{content:"";position:absolute;left:22%;right:22%;bottom:-5px;height:3px;border-radius:4px;background:var(--mint)}
@media(max-width:820px){.authScreen{display:block;padding:18px}.authBrandPanel{display:none}.authCard{width:100%;margin:min(12vh,90px) auto;padding:26px 22px}.authLogo{display:grid;margin:0 0 20px;width:54px;height:54px;border-radius:17px;background:rgba(97,242,174,.12);color:var(--mint);font-size:1.65rem}header{height:82px;padding:12px 16px}main{padding:8px 16px 110px}#dashboard>.hero{min-height:375px;padding:26px;margin-top:4px}#dashboard>.hero:after{top:28%;right:5%;font-size:1.2rem;opacity:.8}#dashboard>.hero h2{max-width:78%;font-size:2.35rem;margin:14px 0 80px}#dashboard .chips{gap:8px}#dashboard .chips span{min-width:0;min-height:56px;padding:7px;font-size:.82rem}#dashboard>.grid{gap:12px}.tile{min-height:150px;padding:20px}.filterBar,.sectionHead>.filterBar{grid-template-columns:1fr 1fr;width:100%}.filterBar input{grid-column:1/-1}.sectionHead:has(.filterBar){align-items:flex-start;flex-wrap:wrap}.sectionHead:has(.filterBar)>button{margin-left:auto}.cards{grid-template-columns:1fr}.moduleGrid{grid-template-columns:1fr}.actions{flex-wrap:wrap}.actions button{min-width:140px}.memberAdd{display:grid;grid-template-columns:1fr}.v3meta{grid-template-columns:1fr}.v3meta select:first-child{grid-column:auto}}
@media(max-width:430px){#dashboard>.hero{min-height:350px;padding:22px;border-radius:24px}#dashboard>.hero h2{font-size:2rem;margin-bottom:70px}#dashboard .chips span{font-size:.75rem}#dashboard>.grid{grid-template-columns:1fr 1fr}.tile{min-height:138px;padding:17px}.tile:after{right:16px}.tile b{font-size:1rem}.tile small{font-size:.75rem}.authLinks{grid-template-columns:1fr}.authLinks #showLogin{grid-column:auto}nav{border-radius:20px 20px 0 0}nav span{font-size:.65rem}}
