*{margin:0;padding:0;box-sizing:border-box}:root{--primary:#2563eb;--primary-dark:#1e40af;--secondary:#64748b;--accent:#f59e0b;--background:#ffffff;--surface:#f8fafc;--text:#1e293b;--text-light:#64748b;--border:#e2e8f0;--shadow:0 4px 6px -1px rgb(0 0 0 / 0.1);--shadow-sm:0 1px 3px 0 rgb(0 0 0 / 0.1);--radius:8px;--transition:all 0.2s ease}@media(prefers-color-scheme:dark){:root{--primary:#3b82f6;--primary-dark:#2563eb;--background:#0f172a;--surface:#1e293b;--text:#f1f5f9;--text-light:#94a3b8;--border:#334155}}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,segoe ui,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.6;color:var(--text);background:var(--background);min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:0 20px}header{background:var(--surface);border-bottom:1px solid var(--border);padding:2rem 0;position:sticky;top:0;z-index:100;backdrop-filter:blur(10px);background:rgba(248,250,252,.9)}@media(prefers-color-scheme:dark){header{background:rgba(30,41,59,.9)}}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.logo{font-size:1.5rem;font-weight:700;color:var(--text);text-decoration:none;letter-spacing:-.5px}nav ul{list-style:none;display:flex;gap:2rem}nav a{color:var(--text-light);text-decoration:none;font-weight:500;padding:.5rem 0;border-bottom:2px solid transparent;transition:var(--transition)}nav a:hover,nav a:focus{color:var(--primary);border-bottom-color:var(--primary);text-decoration:underline}nav a.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}main{padding:3rem 0}.hero{text-align:center;padding:4rem 0;background:linear-gradient(135deg,var(--surface) 0%,var(--background) 100%);border-radius:var(--radius);margin-bottom:3rem}.hero h1{font-size:3rem;font-weight:800;margin-bottom:1rem;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero .subtitle{font-size:1.25rem;color:var(--text-light);margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}.interests{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem;margin-top:2rem}.interest-tag{background:var(--primary);color:#fff;padding:.5rem 1rem;border-radius:20px;text-decoration:none;font-weight:500;transition:var(--transition)}.interest-tag:hover,.interest-tag:focus{background:var(--primary-dark);transform:translateY(-2px);text-decoration:underline}.content-section .interest-tag,.content-section .interest-tag:hover,.content-section .interest-tag:focus{color:#fff;border-bottom:none}.projects{margin-bottom:3rem}.section-title{font-size:2rem;font-weight:700;margin-bottom:2rem;text-align:center;color:var(--text)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-top:2rem}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;transition:var(--transition);position:relative;overflow:hidden}.project-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#10b981 0%,#06b6d4 50%,#3b82f6 100%);transform:scaleX(0);transition:var(--transition)}.project-card:hover::before{transform:scaleX(1)}.project-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);background:linear-gradient(135deg,#ecfdf5 0%,#f0fdfa 100%)}@media(prefers-color-scheme:dark){.project-card:hover{background:linear-gradient(135deg,#064e3b 0%,#134e4a 100%)}}.project-card h3{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--text)}.project-card p{color:var(--text-light);line-height:1.6;margin-bottom:1rem}.project-link{color:var(--primary);text-decoration:none;font-weight:500;display:inline-flex;align-items:center;gap:.5rem;transition:var(--transition)}.project-link:hover{gap:.75rem}.social-section{text-align:center;padding:3rem 0;background:var(--surface);border-radius:var(--radius);margin:3rem 0}.social{list-style:none;display:flex;justify-content:center;gap:1rem;margin-top:2rem}.social li a{display:flex;align-items:center;justify-content:center;width:50px;height:50px;background:var(--background);border:2px solid var(--border);border-radius:50%;color:var(--text-light);text-decoration:none;transition:var(--transition)}.social li a:hover,.social li a:focus{background:var(--primary);border-color:var(--primary);color:#fff;transform:translateY(-3px);box-shadow:var(--shadow)}.social svg{width:24px;height:24px}footer{text-align:center;padding:2rem 0;border-top:1px solid var(--border);color:var(--text-light);font-size:.9rem}.content-section,.content-with-sidebar main{background:var(--surface);border-radius:var(--radius);padding:2rem;margin-bottom:2rem;border:1px solid var(--border)}.content-section h1,.content-with-sidebar main h1{font-size:2rem;font-weight:700;margin-bottom:1.5rem;color:var(--text)}.content-section h2,.content-with-sidebar main h2{font-size:1.5rem;font-weight:600;margin-top:2rem;margin-bottom:1rem;color:var(--text);border-bottom:2px solid var(--primary);padding-bottom:.5rem}.content-section h3,.content-with-sidebar main h3{font-size:1.25rem;font-weight:600;margin-top:1.5rem;margin-bottom:.75rem;color:var(--text)}.content-section p,.content-with-sidebar main p{color:var(--text);margin-bottom:1rem;line-height:1.7}.content-section ul,.content-section ol,.content-with-sidebar main ul,.content-with-sidebar main ol{color:var(--text);margin-bottom:1rem;padding-left:2rem}.content-section li,.content-with-sidebar main li{margin-bottom:.5rem;line-height:1.6}.content-section a,.content-with-sidebar main a{color:var(--primary);text-decoration:none;border-bottom:1px solid transparent;transition:var(--transition)}.content-section a:hover,.content-section a:focus,.content-with-sidebar main a:hover,.content-with-sidebar main a:focus{border-bottom-color:var(--primary);text-decoration:underline}.content-section code,.content-with-sidebar main code{background:var(--background);padding:.2rem .4rem;border-radius:3px;font-size:.9em;font-family:courier new,monospace}.content-section pre,.content-with-sidebar main pre{background:var(--background);padding:1rem;border-radius:var(--radius);overflow-x:auto;margin-bottom:1rem}.content-section blockquote,.content-with-sidebar main blockquote{border-left:4px solid var(--primary);padding-left:1rem;margin:1rem 0;color:var(--text-light);font-style:italic}.content-with-sidebar{display:grid;grid-template-columns:1fr 300px;gap:2rem;align-items:start}.content-with-sidebar aside{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;position:sticky;top:100px}.content-with-sidebar aside h3{font-size:1.125rem;font-weight:600;margin-bottom:1rem;color:var(--text);border-bottom:2px solid var(--primary);padding-bottom:.5rem}.content-with-sidebar aside p{margin-bottom:.75rem;font-size:.875rem}.content-with-sidebar aside strong{color:var(--text);font-weight:600}.content-with-sidebar aside a{color:var(--primary);text-decoration:none}.content-with-sidebar aside a:hover{text-decoration:underline}.hike-details{background:var(--surface);border-left:4px solid var(--accent);padding:1.5rem;margin:1rem 0;border-radius:0 var(--radius)var(--radius)0}.hike-dates{list-style:none;padding:0}.hike-dates li{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--border)}.hike-dates li:last-child{border-bottom:none}.status-badge{padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500}.status-badge.completed{background:#10b981;color:#fff}.status-badge.planned{background:#3b82f6;color:#fff}.status-badge.cancelled{background:#ef4444;color:#fff}.date-section{margin-bottom:1.5rem}.date-section:last-child{margin-bottom:0}.date-section h4{font-size:1.125rem;font-weight:600;color:var(--primary);margin-bottom:.75rem}.hike-details strong{color:var(--text);font-weight:600}.meet-info{background:#fef3c7;border:1px solid #f59e0b;border-radius:var(--radius);padding:1rem;margin:1rem 0}@media(prefers-color-scheme:dark){.meet-info{background:#451a03;border-color:#d97706}}.disclaimer{background:#fee2e2;border:1px solid #ef4444;border-radius:var(--radius);padding:1rem;margin:1rem 0;font-size:.875rem}@media(prefers-color-scheme:dark){.disclaimer{background:#450a0a;border-color:#dc2626}}@media(max-width:768px){.container{padding:0 15px}.header-content{flex-direction:column;text-align:center}nav ul{gap:1rem}.hero{padding:2rem 0}.hero h1{font-size:2rem}.hero .subtitle{font-size:1rem}.projects-grid{grid-template-columns:1fr;gap:1.5rem}.project-card{padding:1.5rem}.social{gap:.75rem}.social li a{width:45px;height:45px}.social svg{width:20px;height:20px}.content-with-sidebar{grid-template-columns:1fr;gap:1.5rem}.content-with-sidebar aside{position:static;order:-1}}@media(max-width:480px){main{padding:2rem 0}.hero{padding:1.5rem 0;margin-bottom:2rem}.hero h1{font-size:1.75rem}.interests{gap:.5rem}.interest-tag{font-size:.875rem;padding:.375rem .75rem}}*:focus{outline:2px solid var(--primary);outline-offset:2px}.skip-link{position:absolute;top:-40px;left:6px;background:var(--primary);color:#fff;padding:8px;text-decoration:none;border-radius:4px;z-index:1000;transition:top .3s}.skip-link:focus{top:6px}@media(prefers-contrast:high){:root{--primary:#0000ff;--primary-dark:#000080;--text:#000000;--background:#ffffff;--border:#000000}@media(prefers-color-scheme:dark){:root{--primary:#0080ff;--primary-dark:#0040ff;--text:#ffffff;--background:#000000;--border:#ffffff}}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}a:focus,button:focus,input:focus,textarea:focus,select:focus{outline:3px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 2px var(--background)}@media(min-resolution:120dpi){body{font-size:calc(1rem * .8)}}*{transition:color .2s ease,background-color .2s ease,border-color .2s ease}.einsatz-single{max-width:900px;margin:0 auto}.einsatz-header h1{font-size:2rem;margin-bottom:.5rem}.einsatz-meta{color:var(--text-light);margin-bottom:2rem;font-size:.95rem}.einsatz-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;margin-bottom:2rem}.einsatz-block ul{margin:0;padding-left:1.5rem;color:var(--text-light)}.einsatz-block ul li{margin-bottom:.4rem}.einsatz-block-title{font-size:1.35rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--primary);color:var(--text)}.einsatz-detail{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.75rem;overflow:hidden}.einsatz-detail-summary{font-weight:600;padding:.75rem 1rem;cursor:pointer;border-left:4px solid var(--primary);background:var(--background);user-select:none}.einsatz-detail-summary:hover{background:var(--surface)}.einsatz-detail-content{padding:1rem;line-height:1.7;color:var(--text-light)}.einsatz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.75rem}.einsatz-card{background:var(--background);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem 1rem;font-size:.9rem;line-height:1.6;color:var(--text-light)}.einsatz-card strong{color:var(--text)}.einsatz-text{margin-bottom:1.5rem;line-height:1.7;color:var(--text-light)}.einsatz-text h3{font-size:1.1rem;font-weight:600;color:var(--text);margin-bottom:.5rem}.einsatz-positive{background:#f0fdf4;border:1px solid #86efac;border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:1rem}.einsatz-positive h3{font-size:1rem;font-weight:600;margin-bottom:.5rem}.einsatz-positive ul{margin:0;padding-left:1.5rem}.einsatz-positive li{margin-bottom:.25rem}.einsatz-negative{background:#fef2f2;border:1px solid #fca5a5;border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:1rem}.einsatz-negative h3{font-size:1rem;font-weight:600;margin-bottom:.5rem}.einsatz-negative ul{margin:0;padding-left:1.5rem}.einsatz-negative li{margin-bottom:.25rem}.einsatz-debrief .einsatz-text:last-child{margin-bottom:0}@media(prefers-color-scheme:dark){.einsatz-positive{background:#052e16;border-color:#166534}.einsatz-negative{background:#450a0a;border-color:#991b1b}}.einsatz-breadcrumb{font-size:.9rem;margin-bottom:1rem}.einsatz-header{background:0 0;backdrop-filter:none;padding:0;border:none;margin-bottom:1.5rem}@media(max-width:768px){.einsatz-grid{grid-template-columns:1fr}.einsatz-header h1{font-size:1.5rem}}.sani-wiki-term{border-bottom:1px dotted;text-decoration:none}.sani-wiki-term:hover{border-bottom-style:solid}.sani-wiki-term-missing{border-bottom:1px dotted #b91c1c;color:#b91c1c;cursor:help}.sani-wiki-breadcrumb{font-size:.9rem;margin-bottom:1rem}.sani-wiki-kategorie{display:inline-block;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;background:var(--bg-light,#f1f5f9);padding:.15rem .5rem;border-radius:.25rem;margin:0}.sani-wiki-aliases{font-style:italic;color:var(--text-light,#64748b);margin-top:.5rem}.sani-wiki-aliases-inline{color:var(--text-light,#64748b);font-style:italic}.sani-wiki-kategorie-block{margin-bottom:2rem}.sani-wiki-body ul,.sani-wiki-body ol{padding-left:1.5rem;margin:.5rem 0 1rem}.sani-wiki-body li{margin:.25rem 0}.sani-wiki-entries{list-style:none;padding:0}.sani-wiki-entries li{padding:.4rem 0;border-bottom:1px solid var(--border-color,#e2e8f0)}.sani-wiki-referenced{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-color,#e2e8f0)}.sani-wiki-disclaimer{margin-top:2rem;padding:1rem 1.25rem;border-left:4px solid #f59e0b;background:#fffbeb;color:#78350f;font-size:.9rem;border-radius:.25rem}@media(prefers-color-scheme:dark){.sani-wiki-disclaimer{background:#422006;color:#fde68a}}.sani-wiki-kurz{color:var(--text-light,#64748b);font-style:italic;font-size:.95em}.hike-section{margin:1.5rem 0}.hike-section-title{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-light);margin-bottom:.75rem}.hike-facts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.625rem;margin:0}.hike-fact{background:var(--background);border:1px solid var(--border);border-radius:var(--radius);padding:.625rem .875rem}.hike-fact dt{font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--text-light);margin-bottom:.2rem}.hike-fact dd{font-size:1rem;font-weight:600;color:var(--text);margin:0}.commute-timeline{list-style:none;padding:0;margin:0;position:relative}.commute-timeline::before{content:'';position:absolute;left:7px;top:14px;bottom:14px;width:2px;background:var(--border)}.commute-step{display:flex;gap:1rem;padding:.375rem 0;position:relative}.commute-node{width:16px;height:16px;border-radius:50%;border:2px solid var(--primary);background:var(--background);flex-shrink:0;margin-top:2px;z-index:1}.commute-body{display:flex;flex-direction:column;gap:.1rem;padding-bottom:.25rem;flex:1}.commute-from{font-weight:600;color:var(--text);font-size:.95rem}.commute-time{color:var(--primary);font-weight:500;font-size:.875rem}.commute-meta{font-size:.8rem;color:var(--text-light)}.commute-dest{font-size:.875rem;color:var(--text-light)}.commute-comment{font-size:.78rem;color:var(--text-light);font-style:italic}.hike-card-meta{display:flex;flex-wrap:wrap;gap:.375rem;margin:.5rem 0 .75rem}.hike-chip{display:inline-block;font-size:.75rem;font-weight:500;padding:.2rem .5rem;border-radius:20px;border:1px solid var(--border);background:var(--background);color:var(--text-light)}.hike-chip--planned{border-color:#3b82f6;color:#3b82f6;background:0 0}.hike-chip--done{border-color:#10b981;color:#10b981;background:0 0}.meetup-btn{display:inline-block;margin-top:.375rem;padding:.375rem .875rem;background:var(--primary);color:#fff;border-radius:20px;font-size:.8rem;font-weight:500;text-decoration:none;transition:var(--transition)}.meetup-btn:hover{background:var(--primary-dark);text-decoration:none}.meet-info{background:color-mix(in srgb,var(--accent) 8%,var(--background));border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-left-width:3px;border-left-color:var(--accent)}@media(prefers-color-scheme:dark){.meet-info{background:color-mix(in srgb,var(--accent) 6%,var(--background))}}.disclaimer{background:color-mix(in srgb,#ef4444 6%,var(--background));border:1px solid color-mix(in srgb,#ef4444 25%,var(--border));border-left-width:3px;border-left-color:#ef4444}@media(prefers-color-scheme:dark){.disclaimer{background:color-mix(in srgb,#ef4444 5%,var(--background))}}