@font-face{font-family:"Atkinson Hyperlegible";font-weight:400;src:url(fonts/atkinson-hyperlegible-latin-400-normal.woff2)}
@font-face{font-family:"Atkinson Hyperlegible";font-weight:700;src:url(fonts/atkinson-hyperlegible-latin-700-normal.woff2)}
:root{--line:#d6dae5;--soft:#eff1f6;--muted:#566080}
*{box-sizing:border-box}
body{margin:0;background:var(--ks-papier);color:var(--ks-tinte);font:15px/1.55 "Atkinson Hyperlegible",system-ui,sans-serif}
h1,h2,h3{font-weight:700;line-height:1.25}
h1{font-size:1.5rem;margin:.2rem 0 1rem}h2{font-size:1.1rem;margin:1.4rem 0 .6rem}h3{font-size:1rem;margin:1.2rem 0 .5rem}
a{color:var(--ks-petrol)}
:focus-visible{outline:2px solid var(--ks-blau);outline-offset:2px}
.ic{vertical-align:-.2em;flex:none}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.muted,.hint,small{color:var(--muted)}.hint{font-size:.88rem}
.grow{flex:1}
header{background:var(--ks-tinte);color:#fff}
.bar{max-width:1440px;margin:auto;padding:.4rem 1rem;display:flex;flex-wrap:wrap;gap:.3rem 1.2rem;align-items:center}
.brand{display:flex;align-items:center;gap:.5rem;color:#fff;text-decoration:none;font-weight:700;font-size:1.05rem}
.tools{margin-left:auto;display:flex;align-items:center;gap:.8rem}
.gear{position:relative}.gear summary{list-style:none;cursor:pointer;display:grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:4px;color:#c9d0e6}
.gear summary::-webkit-details-marker{display:none}.gear summary:hover,.gear[open] summary{background:rgba(255,255,255,.16);color:#fff}
.gear .menu{position:absolute;right:0;top:2.6rem;z-index:20;min-width:14rem;background:#fff;color:var(--ks-tinte);border:1px solid var(--line);border-radius:6px;box-shadow:0 4px 16px rgba(26,35,64,.2);padding:.4rem;display:grid}
.gear .menu>*{padding:.4rem .6rem}.gear .menu a,.gear .menu button.link{display:flex;align-items:center;gap:.5rem;color:var(--ks-tinte);text-decoration:none;border-radius:4px;width:100%;font-size:.95rem}
.gear .menu a:hover,.gear .menu button.link:hover{background:var(--soft)}.gear .menu form{padding:0}.gear .menu button.link{padding:.4rem .6rem;text-align:left}
.shell{display:flex;align-items:flex-start}
.side-nav{position:sticky;top:0;flex:none;width:5.4rem;display:flex;flex-direction:column;gap:.3rem;padding:.8rem .4rem;min-height:calc(100vh - 3rem);background:#fff;border-right:1px solid var(--line)}
.side-nav a{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.55rem .2rem;border-radius:6px;color:var(--muted);text-decoration:none;font-size:.78rem}
.side-nav a:hover{background:var(--soft);color:var(--ks-tinte)}.side-nav a[aria-current]{background:var(--ks-petrol-hell);color:var(--ks-petrol-tief);font-weight:700}
.search{display:flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.12);border-radius:4px;padding:0 .5rem;color:#c9d0e6}
.search input{margin:0;border:0;background:none;color:#fff;width:9rem;padding:.3rem 0}.search input::placeholder{color:#aab3d0}
.search:focus-within{background:rgba(255,255,255,.2)}
main{flex:1;min-width:0;max-width:1100px;margin:1.2rem auto 4rem;padding:0 1.5rem}
main.wide{max-width:1440px}
.pagehead{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}
.actions,.pagetools{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}
.card{background:#fff;border:1px solid var(--line);border-radius:6px;padding:.8rem 1rem;margin:.8rem 0}
.card h2{margin-top:0;font-size:1rem;display:flex;align-items:center;gap:.4rem}
.narrow{max-width:420px;margin:2rem auto}
.logo{width:100%;max-width:240px;display:block;margin:0 auto 1rem}
.grid{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid .card{margin:0}
label{display:block;font-weight:700;margin:.5rem 0;font-size:.9rem}
input,select,textarea{display:block;width:100%;margin-top:.2rem;padding:.4rem .55rem;font:inherit;font-weight:400;border:1px solid #aab1c6;border-radius:4px;background:#fff;color:var(--ks-tinte)}
textarea{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.9rem}
button,.btn{font:inherit;font-weight:700;font-size:.9rem;background:var(--ks-tinte);color:#fff;border:1px solid var(--ks-tinte);border-radius:4px;padding:.3rem .8rem;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}
button:hover,.btn:hover{background:#2c3a66}
button.sec,.btn.sec{background:#fff;color:var(--ks-tinte);border-color:#aab1c6}
button.sec:hover,.btn.sec:hover{background:var(--soft)}
button.icon{padding:.2rem .35rem}
button.link{background:none;border:0;padding:0;color:inherit;text-decoration:underline;font-weight:400;display:inline}
form.inline{display:inline}form.inline input,form.inline select{display:inline-block;width:auto}
.flash{background:var(--ks-gelb-hell);border:1px solid #e3c25a;border-radius:4px;padding:.5rem .8rem;color:var(--ks-gelb-tief)}
.flash.check{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.flash.check input{width:18rem;margin:0}
ul.plain{list-style:none;padding:0;margin:.3rem 0}ul.plain li{padding:.3rem 0;border-bottom:1px solid var(--soft)}
.count{font-size:.8rem;font-weight:400;color:var(--muted);background:var(--soft);border-radius:99px;padding:0 .5rem}
.tag,.chip{display:inline-block;border-radius:3px;padding:0 .45rem;background:var(--soft);color:var(--ks-tinte);font-size:.82rem;text-decoration:none;border:1px solid var(--line)}
a.tag:hover{background:#e3e7f1}.tags{line-height:2}.chips{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}
.lvl{border-radius:3px;padding:0 .45rem;font-size:.8rem;background:var(--ks-petrol-hell);color:var(--ks-petrol-tief)}
.lvl.gast{background:var(--ks-gruen-hell);color:var(--ks-gruen-tief)}.lvl.vertraulich{background:var(--ks-rot-hell);color:var(--ks-rot-tief)}
.due{background:var(--ks-blau-hell);color:var(--ks-blau-tief);border-radius:3px;padding:0 .4rem;font-size:.82rem;white-space:nowrap}
.due.late{background:var(--ks-rot-hell);color:var(--ks-rot-tief)}
.tabs{display:flex;gap:.2rem;border-bottom:1px solid var(--line);margin:.5rem 0 1rem}
.tabs a{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;color:var(--muted);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}
.tabs a:hover{color:var(--ks-tinte)}.tabs a[aria-current]{color:var(--ks-tinte);border-color:var(--ks-tinte);font-weight:700}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.7rem;margin:.5rem 0 1rem}
.tile{display:grid;grid-template-columns:2.2rem 1fr;gap:.2rem .6rem;align-content:start;background:#fff;border:1px solid var(--line);border-radius:6px;padding:.7rem;color:inherit;text-decoration:none}
a.tile:hover,.tile.over{border-color:var(--ks-blau);box-shadow:0 1px 6px rgba(26,35,64,.12)}
.ti{grid-row:span 2;width:2.2rem;height:2.2rem;border-radius:6px;display:grid;place-items:center;background:var(--soft);color:var(--muted)}
.ti.basis{background:var(--ks-petrol-hell);color:var(--ks-petrol)}
.tile b{align-self:center}.tile .intro{grid-column:2;font-size:.85rem;color:var(--muted)}.tile .chips{grid-column:1/-1;margin-top:.2rem}
.tile.ftile{grid-template-columns:1fr auto;align-items:center;padding:.5rem .7rem}.ftile a{display:flex;gap:.5rem;align-items:center;color:inherit;text-decoration:none}
table{border-collapse:collapse;width:100%}
th,td{border:1px solid var(--line);padding:.3rem .6rem;text-align:left;vertical-align:top}th{background:var(--soft);font-size:.85rem}
table.list{background:#fff}
.pagegrid{display:grid;grid-template-columns:minmax(0,1fr) 16rem;gap:2rem;align-items:start}
article{min-width:0;max-width:56rem}
.side{position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow:auto;font-size:.88rem}
.side h2{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:1.2rem 0 .3rem}.side>*:first-child h2{margin-top:0}
.toc a{display:block;padding:.15rem .6rem;border-left:2px solid var(--line);color:var(--muted);text-decoration:none}
.toc a:hover{color:var(--ks-tinte)}.toc a.on{border-color:var(--ks-blau);color:var(--ks-tinte);font-weight:700}.toc a.l2{padding-left:1.1rem}.toc a.l3{padding-left:1.6rem}
.missing{color:var(--ks-rot)}
.pagetools label{margin:0;display:flex;align-items:center;gap:.3rem;color:var(--muted)}.pagetools select{width:auto;margin:0;padding:.25rem .4rem;font-size:.88rem}
.md{overflow-wrap:anywhere}.md img,.md video{max-width:100%;height:auto;border-radius:4px}.md audio{width:100%}
.md h1,.md h2,.md h3{scroll-margin-top:1rem}
.md blockquote{border-left:3px solid var(--line);margin-left:0;padding:.1rem 1rem;background:var(--soft)}
.md pre{background:var(--ks-tinte);color:#fff;padding:.8rem;border-radius:4px;overflow:auto}
.md code{background:var(--soft);padding:.05rem .3rem;border-radius:3px;font-size:.9em}.md pre code{background:none}
.md a[href$="#neu"]{color:var(--ks-rot)}
.embed{border-left:3px solid var(--ks-petrol);background:var(--ks-petrol-hell);padding:.2rem 1rem;margin:1rem 0;border-radius:0 4px 4px 0}.embed-src{font-size:.85rem}
article footer{color:var(--muted);font-size:.85rem;margin-top:2rem;border-top:1px solid var(--line);padding-top:.5rem}
.taskform{display:grid;gap:.4rem 1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end}.taskform label{margin:0}
.board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;align-items:start}
.col{background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:.3rem .6rem .6rem;min-height:10rem}.col.over{outline:2px dashed var(--ks-blau)}
.col h2{margin:.4rem 0}.klist{min-height:5rem}.klist li{border:0;padding:0}
.kcard{background:#fff;border:1px solid var(--line);border-radius:4px;padding:.5rem .6rem;margin:.4rem 0;cursor:grab}
.kmeta{display:flex;flex-wrap:wrap;gap:.2rem .7rem;align-items:center;font-size:.85rem;margin:.2rem 0}.kmeta a{text-decoration:none}
.kact{display:flex;gap:.3rem;justify-content:flex-end}
.col:last-child .kcard strong{color:var(--muted)}
.edit-head{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}
.title-input{flex:1;min-width:12rem;font-size:1.25rem;font-weight:700;margin:0}
.meta-row{display:flex;gap:.8rem;flex-wrap:wrap;margin:.5rem 0}.meta-row label{margin:0;font-weight:400;font-size:.8rem;color:var(--muted)}.meta-row select,.meta-row input{width:auto;min-width:8rem}.meta-row .grow input{width:100%}
.toolbar{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin:.4rem 0}
.split{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.split textarea,.preview{height:calc(100vh - 17rem);min-height:22rem;margin:0}
.preview{border:1px solid var(--line);background:#fff;border-radius:4px;padding:.8rem 1rem;overflow:auto}
code.pre{white-space:pre}
dialog{border:1px solid var(--line);border-radius:6px;padding:1rem 1.4rem;width:min(34rem,calc(100% - 2rem));color:var(--ks-tinte)}
dialog::backdrop{background:rgba(26,35,64,.5)}
.crumbs{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;margin-bottom:.6rem}.crumbs a{padding:0 .3rem;border-radius:3px}.crumbs a.over{background:var(--ks-blau-hell)}.crumbs [aria-current]{font-weight:700;color:var(--ks-tinte);text-decoration:none}
.filebar{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.filebar input{margin:0}
.dropzone{border:1px dashed transparent;border-radius:6px;padding:.4rem;min-height:8rem}.dropzone.over{border-color:var(--ks-blau);background:var(--ks-blau-hell)}
.frow{display:flex;gap:.8rem;align-items:center}.fname{flex:1;min-width:0;overflow-wrap:anywhere}.fname code{font-size:.8rem;color:var(--muted)}
.thumb,.fi{width:44px;height:44px;border-radius:4px;flex:none}.thumb{object-fit:cover}.fi{display:grid;place-items:center;background:var(--soft);color:var(--muted)}
.mv summary{cursor:pointer;color:var(--muted);font-size:.85rem}.empty{color:var(--muted)}
.fblist{display:grid;gap:.6rem}.fblist li{padding:0;border:0}
.fb{background:#fff;border:1px solid var(--line);border-radius:6px;padding:1rem 1.6rem}.fb.erledigt{border-left:3px solid var(--ks-gruen)}.fb.offen{border-left:3px solid var(--ks-orange)}
.fbhead{display:flex;flex-wrap:wrap;gap:.2rem .8rem;align-items:center;font-size:.88rem}
.chip.erledigt{background:var(--ks-gruen-hell);color:var(--ks-gruen-tief)}.chip.offen{background:var(--ks-orange-hell);color:var(--ks-orange-tief)}
.fbmsg{margin:.6rem 0;max-width:62ch;line-height:1.6;overflow-wrap:anywhere}.shots{display:flex;flex-wrap:wrap;gap:.5rem}.shots img{height:90px;border:1px solid var(--line);border-radius:4px}
.fbcomment{background:var(--soft);border-radius:4px;padding:.7rem 1rem;margin:.6rem 0;font-size:.9rem;max-width:62ch;line-height:1.6}
.fb details{margin:.3rem 0;font-size:.88rem}.fb summary{cursor:pointer;color:var(--muted)}.specs{columns:2;font-size:.82rem;color:var(--muted);padding-left:1.1rem}
.fb textarea{margin-bottom:.4rem}.older{margin-top:1rem}.older>summary{cursor:pointer}
.fb-fab[hidden]{display:none}
.fb-fab{position:fixed;inset:auto max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) auto;width:3rem;height:3rem;padding:0;border-radius:50%;display:grid;place-items:center;box-shadow:0 2px 8px rgba(26,35,64,.35);z-index:10}
.done strong,li.done{text-decoration:line-through;color:#6b7390}
@media (max-width:900px){.pagegrid,.split,.board{grid-template-columns:1fr}.side{position:static;max-height:none}.split textarea,.preview{height:24rem}.specs{columns:1}}
@media (max-width:640px){.side-nav{position:fixed;inset:auto 0 0 0;z-index:10;width:auto;min-height:0;flex-direction:row;justify-content:space-around;padding:.2rem;border-right:0;border-top:1px solid var(--line)}.side-nav a{flex:1}.search input{width:6rem}main{padding:0 1rem 5rem}.fb{padding:.8rem 1rem}}
@media print{.fb-fab,header,.side,.side-nav{display:none}}
