:root{--tsv-accent:#ffd500;--tsv-accent-hover:#e6c000;--tsv-black:#000;--tsv-dark:#1a1c20;--tsv-gray:#333;--tsv-light-gray:#8b8d94;--tsv-border:#dfe2e5;--tsv-input-bg:#fff;--tsv-body-bg:#1b211b;--tsv-font:"Roboto", Helvetica, Arial, Verdana, sans-serif}*{box-sizing:border-box}body{color:var(--tsv-gray);background-color:var(--tsv-body-bg);background-image:linear-gradient(#1a1c161f,#0d140f6b),url(https://tsv-wacken.de/wp-content/uploads/2024/01/23_TSV_Back_002_-scaled.jpg);background-position:top;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;margin:0;font-weight:400;display:flow-root}.app,body,button,input,select,textarea{font-family:var(--tsv-font)}.app{width:100%;max-width:1120px;margin:calc(clamp(16px,5vh,48px)) auto 40px;padding:0 16px}.application-layout{-moz-column-gap:24px;grid-template-columns:300px 720px;justify-content:center;align-items:start;column-gap:24px;display:grid}.application-main{grid-column:2;width:720px;min-width:0;max-width:100%}.position-info{color:#f7f8f4;border:1px solid #fff3;border-top:5px solid var(--tsv-accent);background:#141b15f0;border-radius:12px;min-width:0;padding:22px 20px;position:sticky;top:20px;box-shadow:0 16px 36px #0003}.position-info h2{color:var(--tsv-accent);margin:0 0 10px;font-size:18px;line-height:1.3}.position-info-list{gap:16px;margin-top:18px;display:grid}.position-info-item{border-top:1px solid #fff3;padding-top:14px}.position-info-item h3{color:#fff;margin:0 0 8px;font-size:14px;line-height:1.4}.position-info-time{color:var(--tsv-accent);margin:0 0 7px;font-size:13px;line-height:1.45}.position-info-effort{color:#e1e6df;margin:0 0 10px;font-size:12px;line-height:1.5}.position-info-item ul{color:#e1e6df;gap:8px;margin:0;padding-left:18px;font-size:13px;line-height:1.5;display:grid}.position-info-estimate-note{color:#cbd2ca;border-top:1px solid #fff3;margin:16px 0 0;padding-top:12px;font-size:11px;line-height:1.45}@media (width<=1100px){.application-layout{grid-template-columns:minmax(0,1fr);gap:14px}.application-main{grid-column:1;justify-self:center}.position-info{position:static}}.privacy-tooltip,.privacy-tooltip-wrapper{position:relative}.privacy-tooltip summary{color:var(--tsv-gray);text-underline-offset:3px;cursor:pointer;font-size:13px;text-decoration:underline;display:inline-block}.privacy-tooltip-content{z-index:5;box-sizing:border-box;overflow-wrap:anywhere;border:1px solid var(--tsv-border);border-top:4px solid var(--tsv-accent);background:#fff;width:calc(min(560px,100vw - 48px));max-width:calc(100vw - 48px);max-height:calc(min(65vh,520px));padding:16px;font-size:13px;line-height:1.5;display:none;position:absolute;bottom:calc(100% + 10px);left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 6px 22px #0003}.privacy-tooltip[open] .privacy-tooltip-content{display:block}.privacy-tooltip-content p{margin:0 0 10px}.privacy-tooltip-content strong{color:var(--tsv-black);margin-bottom:8px;display:block}.privacy-tooltip-content a{color:var(--tsv-gray);font-weight:700}.privacy-confirmation{flex-direction:row;align-items:flex-start;gap:10px;font-size:13px;line-height:1.45;display:flex}.privacy-confirmation input[type=checkbox]{width:18px;height:18px;accent-color:var(--tsv-black);flex:0 0 18px;margin:0;padding:0}.required-indicator{color:#c62828;margin-inline-start:2px;font-size:1.1em;font-weight:700;line-height:1;display:inline-block}.required-indicator.is-complete{color:#16834a}.site-header{background-color:var(--tsv-accent);color:var(--tsv-black);border-radius:14px 14px 0 0;align-items:center;gap:16px;padding:calc(clamp(16px,4vw,24px));display:flex}.logo{-o-object-fit:contain;object-fit:contain;width:64px;height:64px}.site-header h1{text-transform:uppercase;color:var(--tsv-black);margin:0;font-size:24px;font-weight:700}.subtitle{color:var(--tsv-black);opacity:.8;margin:4px 0 0;font-size:14px}form{text-align:left;background-color:#fff;border:1px solid #e7e9e5;border-top:0;border-radius:0 0 14px 14px;flex-direction:column;gap:20px;padding:calc(clamp(18px,4vw,30px));display:flex;box-shadow:0 18px 48px #191f1a1f}.required-fields-legend{color:#555b58;flex-wrap:wrap;align-items:center;gap:8px 20px;margin:0;font-size:12px;display:flex}.required-legend-item{align-items:center;gap:4px;display:inline-flex}.form-section{flex-direction:column;gap:16px;min-width:0;display:flex}.form-section+.form-section{border-top:1px solid #e8eae7;padding-top:20px}.form-section h2,.privacy-consent-card h2{color:#242722;letter-spacing:0;text-align:left;margin:0;font-size:17px;font-weight:700;line-height:1.3}.positionen-fieldset{border:0;min-width:0;margin:0;padding:0}.privacy-consent-card{background:#fbfbf8;border:1px solid #e0e3de;border-top:4px solid #3c704f;border-radius:12px;flex-direction:column;gap:14px;min-width:0;padding:18px;display:flex;position:relative;box-shadow:0 5px 16px #191f1a0f}.privacy-consent-card .privacy-tooltip-wrapper{width:100%}.privacy-consent-card .privacy-tooltip-content{left:50%}.privacy-consent-card .privacy-confirmation{border-top:1px solid #e1e4df;padding-top:12px}.positionen-legend{text-align:left;margin-bottom:4px;font-size:14px;font-weight:700;display:block}.field-hint{color:var(--tsv-light-gray);margin:0 0 8px;font-size:13px}.photo-label-title{color:#242722;font-weight:700}.positionen-options{flex-direction:column;gap:8px;padding-left:2px;display:flex}.position-dropdown{position:relative}.position-dropdown summary{background:var(--tsv-input-bg);cursor:pointer;text-align:left;border:1px solid #cfd4d1;border-radius:8px;min-height:44px;padding:10px 12px;list-style-position:inside}.position-dropdown[open] .positionen-options{z-index:2;border:1px solid var(--tsv-border);background:#fff;border-radius:8px;max-height:240px;padding:12px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000024}.selected-positions{flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.selected-positions li{background:#ffd50047;border-radius:2px;padding:4px 8px;font-size:13px}.checkbox-option{text-align:left;flex-direction:row;align-items:center;gap:10px;font-weight:400;line-height:1.45;display:flex}.checkbox-option input[type=checkbox]{width:18px;height:18px;accent-color:var(--tsv-black);flex:0 0 18px;margin:0;padding:0}label{color:var(--tsv-gray);text-align:left;flex-direction:column;align-items:stretch;gap:6px;font-size:14px;font-weight:500;display:flex}input,select,textarea{color:#303532;background-color:var(--tsv-input-bg);border:1px solid #cfd4d1;border-radius:8px;height:44px;padding:10px 12px;font-size:16px;font-weight:300;transition:border-color .16s,box-shadow .16s}.position-dropdown summary:focus-visible,.privacy-tooltip summary:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #256943a6}input[type=file]{height:auto;padding:8px}textarea{resize:vertical;height:auto;min-height:120px;line-height:1.5}button{text-transform:none;color:#fff;background-color:var(--tsv-black);border:1px solid var(--tsv-black);cursor:pointer;border-radius:8px;padding:12px 18px;font-size:14px;font-weight:700;transition:background-color .2s,color .2s}button:hover:not(:disabled){background-color:var(--tsv-accent);border-color:var(--tsv-accent);color:var(--tsv-black)}button:disabled{color:#68706b;opacity:1;cursor:not-allowed;background:#e8ebe8;border-color:#e8ebe8}.preview{border-radius:2px;max-width:200px}.preview,.status{border:1px solid var(--tsv-border)}.status{background-color:#fff;border-left:5px solid #778078;border-radius:8px;margin:0 0 14px;padding:14px 16px;font-size:14px;line-height:1.45}.status-success{color:#205c38;background:#f0f8f2;border-color:#c4dfcb #c4dfcb #c4dfcb #2d7747}.status-error{color:#7d2420;background:#fff5f4;border-color:#f0c9c6 #f0c9c6 #f0c9c6 #bd342d}.page-shell{min-height:100dvh}body.is-submitting{overflow:hidden}.submission-overlay{z-index:10000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);cursor:progress;background:#0a100bc7;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.submission-dialog{color:#2b302c;border:1px solid #ffffffb3;border-top:6px solid var(--tsv-accent);text-align:center;background:#fff;border-radius:16px;outline:none;width:min(100%,460px);padding:calc(clamp(24px,6vw,38px));box-shadow:0 24px 80px #00000057}.submission-spinner{border:5px solid #e5e9e5;border-top-color:#2d7747;border-radius:50%;width:50px;height:50px;margin:0 auto 20px;animation:.8s linear infinite submission-spin;display:block}.submission-dialog h2{color:#202620;margin:0 0 12px;font-size:calc(clamp(19px,4vw,23px));line-height:1.25}.submission-message{color:#515a53;max-width:360px;margin:0 auto 22px;font-size:15px;line-height:1.55}.submission-progress{background:#e9ede9;border-radius:999px;height:8px;position:relative;overflow:hidden}.submission-progress span{background:var(--tsv-accent);border-radius:inherit;width:35%;animation:1.35s ease-in-out infinite submission-progress;position:absolute;inset:0 auto 0 -35%}.submission-hint{color:#303832;margin:16px 0 0;font-size:13px;font-weight:700}.submission-steps{color:#737b75;margin:14px 0 0;font-size:12px;line-height:1.5}.submission-steps span{color:#2d7747;padding:0 4px;font-weight:700}@keyframes submission-spin{to{transform:rotate(1turn)}}@keyframes submission-progress{0%{transform:translate(0)}to{transform:translate(390%)}}@media (prefers-reduced-motion:reduce){.submission-progress span,.submission-spinner{animation:none}.submission-progress span{width:40%;inset-inline-start:0}}.submit-readiness{color:#8b2a25;text-align:left;margin:-4px 0 0;font-size:13px;line-height:1.45}.submit-readiness.is-ready{color:#256943}.annual-meeting-note{text-align:center;margin:-4px 0 0;font-size:13px;line-height:1.45}@media (width<=520px){.app{margin-top:12px;padding-inline:10px}.site-header{gap:12px;padding:16px}.logo{width:52px;height:52px}.site-header h1{font-size:calc(clamp(18px,5vw,22px));line-height:1.15}form{gap:18px;padding:18px 16px}.privacy-consent-card{padding:15px}.privacy-tooltip-content{width:calc(100vw - 36px);max-width:calc(100vw - 36px);max-height:60dvh}body{background-attachment:scroll}}
