:root{--bg-dark:#121222;--surface-dark:#1a1a2e;--primary-glow:#9c27b0;--secondary-glow:#e91e63;--text-primary:#fff;--text-secondary:#a9a9d2;--border-glow:#9c27b04d;--border-strong:#fff3;--border-light:#ffffff1a;--success-color:#00f5a0;--error-color:#ff4757;--warning-color:#feca57;--star-color:#feca57;--font-family:"Poppins", sans-serif}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-family);scrollbar-width:thin;scrollbar-color:var(--primary-glow) var(--surface-dark);margin:0;line-height:1.6}body:not(.kursvertretung-app-embedded){background-color:var(--bg-dark);color:var(--text-primary)}.kursvertretung-app-wrapper{background-color:var(--bg-dark);color:var(--text-primary);font-family:var(--font-family);border-radius:14px;overflow:hidden}body::-webkit-scrollbar{width:8px}body::-webkit-scrollbar-track{background:var(--surface-dark)}body::-webkit-scrollbar-thumb{background-color:var(--primary-glow);border:2px solid var(--surface-dark);border-radius:10px}#root{flex-direction:column;min-height:100vh;display:flex}.kursvertretung-app-wrapper #root,body.kursvertretung-app-embedded #root{min-height:0}.app-container{flex-direction:column;min-height:100vh;transition:background-image .5s;display:flex}.app-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;border-bottom:1px solid var(--border-light);background:#121222cc;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;position:sticky;top:0;box-shadow:0 2px 4px #0000001a}.app-logo{background:linear-gradient(45deg, var(--primary-glow), var(--secondary-glow));-webkit-text-fill-color:transparent;cursor:pointer;-webkit-background-clip:text;background-clip:text;border:none;padding:0;font-family:inherit;font-size:1.5rem;font-weight:700;text-decoration:none}.app-nav button{color:var(--text-secondary);cursor:pointer;font-size:1rem;font-weight:500;font-family:var(--font-family);background:0 0;border:none;margin-left:1.5rem;transition:color .2s ease-in-out,text-shadow .2s ease-in-out}.app-nav button:hover{color:var(--text-primary);text-shadow:0 0 5px var(--primary-glow)}.app-main{flex-grow:1;width:100%;max-width:1200px;margin:0 auto;padding:2rem}.page-container{background-color:var(--surface-dark);border:1px solid var(--border-light);border-radius:8px;padding:2.5rem;animation:.5s ease-in-out fadeIn;box-shadow:0 4px 30px #0003}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.page-title{text-align:center;background:linear-gradient(45deg, var(--primary-glow), var(--secondary-glow));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-top:0;margin-bottom:2rem}.hero-banner{background-color:var(--bg-dark);border-radius:8px;width:100%;height:45vh;min-height:350px;margin-bottom:2rem;position:relative;overflow:hidden;box-shadow:0 4px 30px #0003}.hero-banner-img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1s ease-in-out;position:absolute;top:0;left:0;transform:scale(1.05)}.hero-banner-img.active{opacity:1}.hero-banner-overlay{z-index:1;background:linear-gradient(45deg,#9c27b080,#121222b3);width:100%;height:100%;position:absolute;top:0;left:0}.hero-banner-content{z-index:2;color:#fff;text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:2rem;display:flex;position:relative}.hero-banner-content h1{text-shadow:2px 2px 8px #000000b3;-webkit-text-fill-color:white;background:0 0;margin:0 0 .5rem;font-size:3rem;font-weight:700}.hero-banner-content p{color:var(--text-secondary);text-shadow:1px 1px 4px #00000080;max-width:600px;font-size:1.3rem}.app-container.is-auth-view{justify-content:center;align-items:center}.app-container.is-auth-view:before{content:"";z-index:-2;background-image:url(https://images.pexels.com/photos/1552242/pexels-photo-1552242.jpeg);background-position:50%;background-size:cover;position:fixed;inset:0}.app-container.is-auth-view:after{content:"";-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:-1;background-color:#12122299;position:fixed;inset:0}.app-container.is-auth-view .app-main{max-width:450px;padding:2rem}.is-auth-view .form-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1a1a2ebf}.form-container{margin:0 auto}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-secondary);margin-bottom:.5rem;font-weight:600;display:block}.form-group input,.form-group textarea,.form-group select{border:1px solid var(--border-strong);width:100%;font-size:1rem;font-family:var(--font-family);color:var(--text-primary);background-color:#121222cc;border-radius:4px;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s}.form-group input:-webkit-autofill{-webkit-box-shadow:0 0 0 30px var(--bg-dark) inset!important;-webkit-text-fill-color:var(--text-primary)!important}.form-group input:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 30px var(--bg-dark) inset!important;-webkit-text-fill-color:var(--text-primary)!important}.form-group input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 30px var(--bg-dark) inset!important;-webkit-text-fill-color:var(--text-primary)!important}.form-group input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--bg-dark) inset!important;-webkit-text-fill-color:var(--text-primary)!important}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--primary-glow);box-shadow:0 0 0 3px var(--border-glow);outline:none}.form-group textarea{resize:vertical;min-height:100px}.btn{background:linear-gradient(45deg, var(--primary-glow), var(--secondary-glow));color:#fff;text-align:center;cursor:pointer;background-size:150% 150%;border:none;border-radius:4px;width:100%;padding:.8rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s ease-in-out;display:inline-block}.btn:hover{box-shadow:0 0 15px var(--border-glow);background-position:100%;transform:translateY(-2px)}.btn:active{transform:scale(.98)translateY(-1px)}.btn-secondary{background:var(--surface-dark);border:1px solid var(--primary-glow);color:var(--text-primary)}.btn-secondary:hover{background:var(--primary-glow);color:#fff;box-shadow:0 0 15px var(--border-glow)}.btn-success{background:linear-gradient(45deg, var(--success-color), #0ac282)}.btn-danger{background:linear-gradient(45deg, var(--error-color), #ff6b81)}.text-link{color:var(--primary-glow);cursor:pointer;text-align:center;background:0 0;border:none;margin-top:1rem;padding:0;font-size:.9rem;text-decoration:none;transition:color .2s,text-shadow .2s;display:block}.text-link:hover{color:var(--secondary-glow);text-shadow:0 0 5px var(--secondary-glow)}.back-to-home-link{color:var(--text-secondary);margin-top:1.5rem}.auth-help-text{color:var(--text-secondary);text-align:center;margin:-.75rem 0 1.5rem;font-size:.95rem}.error-message{color:#fff;border:1px solid var(--error-color);text-align:center;background-color:#ff47574d;border-radius:4px;margin-bottom:1rem;padding:.75rem}.filter-container{border:1px solid var(--border-light);background-color:#0000;border-radius:8px;flex-wrap:wrap;align-items:flex-end;gap:1.5rem;margin-bottom:2rem;padding:1.5rem;display:flex}.course-list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;display:grid}.course-card{background-color:var(--surface-dark);border:1px solid var(--border-light);border-radius:8px;flex-direction:column;transition:transform .3s,box-shadow .3s,border-color .3s;display:flex;overflow:hidden;box-shadow:0 2px 10px #0003}.course-card:hover{border-color:var(--primary-glow);box-shadow:0 8px 30px var(--border-glow);transform:translateY(-5px)}.course-card-info{flex-direction:column;flex-grow:1;padding:1.5rem;display:flex}.course-card-info h3{color:var(--text-primary);margin:0 0 1rem;font-size:1.3rem;font-weight:600}.course-card-info p{color:var(--text-secondary);align-items:center;margin:.5rem 0;font-size:.95rem;display:flex}.course-card-info p:last-of-type{flex-grow:1}.course-card-info p svg{color:var(--primary-glow);flex-shrink:0;margin-right:.75rem}.course-card .btn{width:calc(100% - 3rem);margin:1.5rem}.course-detail{max-width:800px;margin:0 auto}.course-detail-grid{grid-template-columns:1fr;gap:1.5rem;margin-bottom:2rem;display:grid}@media (width>=768px){.course-detail-grid{grid-template-columns:repeat(2,1fr)}}.detail-item{background-color:var(--bg-dark);border:1px solid var(--border-light);border-radius:5px;padding:1.25rem}.detail-item strong{color:var(--text-secondary);text-transform:uppercase;margin-bottom:.25rem;font-size:.9rem;display:block}.profile-section{margin-bottom:3rem}.profile-section h3{border-bottom:2px solid var(--primary-glow);margin-bottom:1.5rem;padding-bottom:.5rem}.app-footer{text-align:center;color:var(--text-secondary);border-top:1px solid var(--border-light);margin-top:auto;padding:2rem;font-size:.9rem}.pay-per-minute{color:var(--text-secondary);margin-top:.25rem;font-size:.85rem;display:block}.action-button-group{gap:1rem;margin-top:1rem;margin-bottom:1rem;display:flex}.action-button-group .btn{width:auto}.search-request-manager{background-color:var(--bg-dark);border:1px solid var(--border-light);border-radius:8px;padding:1.5rem}.qualifications-container{border:1px solid var(--border-strong);background-color:var(--bg-dark);border-radius:4px;max-height:250px;padding:1rem;overflow-y:auto}.qualification-item{align-items:center;margin-bottom:.75rem;display:flex}.qualification-item:last-child{margin-bottom:0}.qualification-item input[type=checkbox]{cursor:pointer;width:1.1em;height:1.1em;accent-color:var(--primary-glow);margin-right:.75rem}.qualification-item label{cursor:pointer;color:var(--text-secondary);flex-grow:1;font-weight:400}.qualification-item input:checked+label{color:var(--text-primary)}.qualifications-display{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.qualification-badge{background:linear-gradient(45deg, var(--primary-glow), var(--secondary-glow));color:#fff;white-space:nowrap;border-radius:15px;padding:.25rem .75rem;font-size:.85rem;font-weight:500}.qualifications-display.small .qualification-badge{padding:.2rem .6rem;font-size:.75rem}.status-badge{text-transform:capitalize;border-radius:10px;padding:.3em .7em;font-size:.8rem;font-weight:700}.status-badge.pending{background-color:var(--warning-color);color:var(--bg-dark)}.status-badge.accepted{background-color:var(--success-color);color:var(--bg-dark)}.status-badge.declined{background-color:var(--text-secondary);color:var(--surface-dark)}.contact-info-box{border-left:4px solid;border-radius:8px;margin:1.5rem 0;padding:1.25rem 1.5rem}.contact-info-box.success{border-color:var(--success-color);color:#c8fff0;background-color:#00f5a01a}.contact-info-box.info{border-color:var(--primary-glow);color:#e7c6f0;background-color:#9c27b01a}.contact-info-box h4{margin-top:0}.contact-info-box p{margin-bottom:0}.requests-section{border-top:1px solid var(--border-strong);margin-top:2rem;padding-top:1.5rem}.requests-section h3{margin-bottom:1.5rem}.request-list{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.request-item{background-color:var(--bg-dark);border:1px solid var(--border-light);border-radius:5px;padding:1.25rem}.request-item-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.request-item-header strong{font-size:1.1rem}.request-message{color:var(--text-secondary);border-left:3px solid var(--border-strong);margin:0 0 1rem;padding-left:1rem;font-style:italic}.decline-reason{color:var(--error-color);margin-top:.75rem;font-size:.9rem}.decline-reason strong{color:var(--text-primary)}.request-form{background-color:var(--bg-dark);border-radius:8px;margin-top:2rem;padding:1.5rem}.request-form h3{margin-top:0}.my-request-item{background-color:var(--surface-dark);border:1px solid var(--border-light);cursor:pointer;border-radius:5px;justify-content:space-between;align-items:center;padding:1rem 1.5rem;transition:background-color .2s,box-shadow .2s,border-color .2s;display:flex}.my-request-item:hover{background-color:var(--bg-dark);border-color:var(--primary-glow)}.star-rating{gap:.25rem;display:flex}.star{color:var(--border-strong);font-size:1.5rem}.star.selected{color:var(--star-color)}.star.interactive{cursor:pointer;transition:transform .2s}.star.interactive:hover{color:var(--star-color);transform:scale(1.2)}.average-rating-display{align-items:center;gap:.25rem;display:flex}.average-rating-display .star{font-size:1.1rem}.average-rating-display span{color:var(--text-secondary);margin-left:.5rem;font-size:.9rem;font-weight:600}.average-rating-display .rating-count{color:var(--text-secondary);margin-left:.25rem;font-size:.8rem}.detail-item .average-rating-display{justify-content:center;margin-top:.5rem}.request-item-header .average-rating-display{font-size:.9rem}.request-item-header .average-rating-display .star{font-size:1rem}.rating-form-section{background-color:var(--bg-dark);border:1px solid var(--border-strong);border-radius:8px;margin-top:2rem;padding:1.5rem}.rating-form-section h3{margin-top:0}.rating-criterion{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.rating-criterion label{font-weight:500}.reviews-section .review-list{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.review-item{background-color:var(--bg-dark);border-left:3px solid var(--primary-glow);border-radius:5px;padding:1.25rem}.review-comment{margin:0 0 .75rem;font-style:italic}.review-footer{text-align:right;color:var(--text-secondary);font-size:.85rem}.admin-section{margin-bottom:3rem}.admin-section h2{border-bottom:2px solid var(--primary-glow);padding-bottom:.5rem}.db-management-section{border:1px solid var(--border-strong);background-color:#0000;border-radius:8px;padding:1.5rem}.table-wrapper{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.9rem}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border-strong);vertical-align:middle;padding:.75rem 1rem}.admin-table th{background-color:var(--bg-dark);font-weight:600}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background-color:var(--bg-dark)}.action-cell{align-items:center;gap:.5rem;display:flex}.btn-table-view,.btn-table-edit,.btn-table-delete{cursor:pointer;white-space:nowrap;background:0 0;border:1px solid;border-radius:4px;padding:.3rem .8rem;font-size:.85rem;font-weight:500;transition:all .2s ease-in-out}.btn-table-view{border-color:var(--primary-glow);color:var(--primary-glow)}.btn-table-view:hover{background-color:var(--primary-glow);color:#fff}.btn-table-edit{border-color:var(--warning-color);color:var(--warning-color)}.btn-table-edit:hover{background-color:var(--warning-color);color:var(--bg-dark)}.btn-table-delete{border-color:var(--error-color);color:var(--error-color)}.btn-table-delete:hover{background-color:var(--error-color);color:#fff}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;display:grid}.stat-card{background-color:var(--surface-dark);border:1px solid var(--border-light);border-radius:8px;padding:1.5rem}.stat-card h4{color:var(--text-secondary);text-transform:uppercase;margin-top:0;margin-bottom:1.5rem;font-size:.9rem;font-weight:600}.single-stat-value{background:linear-gradient(45deg, var(--primary-glow), var(--secondary-glow));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700}.stat-bar-chart{flex-direction:column;gap:.75rem;display:flex}.stat-bar-item{grid-template-columns:100px 1fr 30px;align-items:center;gap:.5rem;font-size:.9rem;display:grid}.stat-bar-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.stat-bar-container{background-color:var(--bg-dark);border-radius:5px;height:10px;overflow:hidden}.stat-bar{background:linear-gradient(90deg, var(--primary-glow), var(--secondary-glow));border-radius:5px;height:100%}.toast-container{z-index:9999;flex-direction:column;gap:10px;display:flex;position:fixed;top:20px;right:20px}.toast-item{min-width:300px;color:var(--bg-dark);border-radius:6px;justify-content:space-between;align-items:center;padding:1rem 1.5rem;animation:.5s cubic-bezier(.25,.46,.45,.94) both toastIn;display:flex;box-shadow:0 4px 12px #00000026}@keyframes toastIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-item.success{background-color:var(--success-color)}.toast-item.error{background-color:var(--error-color)}.toast-item p{margin:0;padding-right:1rem}.toast-item button{color:inherit;cursor:pointer;opacity:.8;background:0 0;border:none;font-size:1.5rem;line-height:1}.email-log-list{border:1px solid var(--border-strong);background-color:var(--bg-dark);border-radius:8px;max-height:400px;padding:1rem;overflow-y:auto}.email-log-item{background-color:var(--surface-dark);border-left:3px solid var(--primary-glow);border-radius:5px;margin-bottom:1rem;padding:1rem}.email-log-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.email-log-header span{color:var(--text-secondary)}.email-log-subject{color:var(--text-primary);margin-bottom:.5rem;font-weight:600}.email-log-body{white-space:pre-wrap;word-break:break-word;color:var(--text-secondary);font-size:.9rem}@media (width<=768px){.app-header{flex-direction:column;padding:1rem}.app-nav{flex-wrap:wrap;justify-content:center;margin-top:1rem;display:flex}.app-nav button{margin:.25rem .5rem}.app-main{padding:1rem}.page-container{padding:1.5rem}.filter-container{flex-direction:column;align-items:stretch}.stat-grid{grid-template-columns:1fr}.hero-banner-content h1{font-size:2rem}.hero-banner-content p{font-size:1rem}}.form-group input,.form-group textarea,.form-group select,.filter-group input,.filter-group select,.test-mail-row input{border:1px solid var(--border-strong);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;opacity:1;color:var(--text-primary)!important;-webkit-text-fill-color:var(--text-primary)!important;background-color:#121222eb!important}.form-group input::placeholder,.form-group textarea::placeholder,.filter-group input::placeholder,.test-mail-row input::placeholder{opacity:1;color:#c8c8ee!important;-webkit-text-fill-color:#c8c8ee!important}.form-group select option,.filter-group select option{color:#fff;background-color:#121222}.filter-group{flex:180px}.filter-group label{color:var(--text-secondary);margin-bottom:.5rem;font-weight:600;display:block}.filter-group input,.filter-group select{width:100%;min-height:44px;font-size:1rem;font-family:var(--font-family);border-radius:4px;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s}.filter-group input:focus,.filter-group select:focus{border-color:var(--primary-glow);box-shadow:0 0 0 3px var(--border-glow);outline:none}.form-group input,.form-group textarea,.form-group select,.filter-group input,.filter-group select,.test-mail-row input{width:100%;min-height:46px;font-size:16px}.form-group select,.filter-group select{appearance:auto;background-image:none;color:#fff!important;-webkit-text-fill-color:#fff!important}textarea{resize:vertical;min-height:110px}.btn-warning{background:linear-gradient(45deg, var(--warning-color), #ff9f43);color:#121222}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-strong);background:#ffffff1f}.inline-btn{margin-top:.75rem}.cancellation-box{background:#feca5714;border:1px solid #feca5759;border-radius:8px;margin:2rem 0;padding:1.5rem}.requester-profile-summary,.profile-stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin:.75rem 0;display:grid}.requester-profile-summary span,.profile-stats-grid div{border:1px solid var(--border-light);color:var(--text-secondary);background:#121222a6;border-radius:6px;padding:.65rem .75rem;font-size:.9rem}.profile-stats-grid strong{color:var(--text-secondary);font-size:.85rem;display:block}.profile-stats-grid span{color:var(--text-primary);margin-top:.25rem;font-size:1.25rem;font-weight:700;display:block}.incident-note{color:var(--warning-color);margin-bottom:.4rem;font-weight:700}.incident-checkbox label{color:var(--text-primary);align-items:flex-start;gap:.65rem;line-height:1.4;display:flex}.incident-checkbox input{width:auto;min-height:auto;margin-top:.2rem}.request-item-header{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.request-actions{margin-top:1rem}.status-badge.cancelled{color:var(--warning-color);background-color:#feca5729}.status-badge.pending{color:var(--text-secondary);background-color:#a9a9d229}.contact-info-box.info{border-left:4px solid var(--primary-glow)}.email-settings-section p,.template-hint{color:var(--text-secondary)}.mail-settings-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem 1.5rem;margin-bottom:1.5rem;display:grid}.mail-smtp-box,.mail-template-card{border:1px solid var(--border-light);background-color:#1212228c;border-radius:8px;margin-bottom:1.5rem;padding:1.25rem}.mail-smtp-box h3,.mail-template-section h3,.mail-template-card h4{margin-top:0}.checkbox-form-group{align-items:center;display:flex}.checkbox-form-group label,.template-enabled-toggle{color:var(--text-primary);cursor:pointer;align-items:center;gap:.6rem;display:flex}.checkbox-form-group input,.template-enabled-toggle input{min-width:18px;height:18px;accent-color:var(--primary-glow);width:auto!important}.test-mail-row{grid-template-columns:1fr auto;align-items:center;gap:1rem;margin:1.5rem 0 2rem;display:grid}.test-mail-row input{width:100%;min-height:44px;font-size:1rem;font-family:var(--font-family);border-radius:4px;padding:.75rem 1rem}.test-mail-row .btn{white-space:nowrap;width:auto}.mail-template-section{margin-top:2rem}.mail-template-header,.email-log-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.mail-template-list{gap:1.25rem;display:grid}.email-log-meta{color:var(--text-secondary);justify-content:flex-start;margin-bottom:.75rem;font-size:.85rem}.email-log-error{border:1px solid var(--error-color);color:#ffb8c0;white-space:pre-wrap;background-color:#ff47571f;border-radius:4px;margin-top:.75rem;padding:.75rem}.email-log-item.sent{border-left-color:var(--success-color)}.email-log-item.failed{border-left-color:var(--error-color)}@media (width<=768px){.test-mail-row{grid-template-columns:1fr}.test-mail-row .btn{width:100%}}@media (width<=640px){.kursvertretung-app-wrapper{border-radius:0;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.app-main{padding:.75rem}.page-container{border-radius:10px;padding:1rem}.page-title{font-size:1.55rem;line-height:1.2}.app-nav{gap:.5rem;width:100%}.app-nav button{border:1px solid var(--border-light);background:#ffffff0f;border-radius:999px;flex:calc(50% - .5rem);min-height:44px;margin:0;padding:.55rem .65rem}.course-card,.request-item,.profile-section,.cancellation-box{padding:1rem}.course-detail-grid,.form-grid,.mail-settings-grid,.profile-stats-grid,.requester-profile-summary{grid-template-columns:1fr}.action-button-group{flex-direction:column;align-items:stretch}.action-button-group .btn,.request-form .btn,.btn{width:100%;min-height:46px}.request-item-header{flex-direction:column;align-items:flex-start}.admin-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}}.lookup-success,.lookup-hint,.form-hint{color:var(--text-secondary);margin-top:.45rem;font-size:.85rem;line-height:1.35;display:block}.lookup-success{color:var(--success-color)}.lookup-hint{color:#f5d06f}.form-group input[readonly]{cursor:not-allowed;background-color:#1212228c!important}.studio-suggestions{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:.5rem;margin:.25rem 0 .75rem;font-size:.9rem;display:flex}.studio-suggestion,.inline-button{border:1px solid var(--primary-glow);color:var(--text-primary);cursor:pointer;font-family:var(--font-family);background:#00d4ff14;border-radius:999px;padding:.35rem .75rem;font-size:.85rem}.inline-button{margin-left:.35rem;display:inline-block}.studio-suggestion:hover,.inline-button:hover{background:var(--primary-glow);color:#fff}.planner-page .planner-intro{text-align:center;color:#4b5563;max-width:920px;margin:-1rem auto 1.5rem}.success-message{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;max-width:920px;margin:0 auto 1rem;padding:.9rem 1rem}.planner-toolbar{grid-template-columns:minmax(240px,1fr) auto auto;align-items:end;gap:1rem;margin-bottom:1.2rem;display:grid}.planner-tabs{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:1rem;display:flex}.planner-tabs button{color:#111827;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:999px;padding:.65rem 1rem;font-weight:600}.planner-tabs button.active{color:#fff;background:#111827;border-color:#111827}.planner-section-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.planner-card,.planner-card-wide{text-align:left}.planner-card-wide{grid-column:1/-1}.planner-section-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.planner-section-header h2,.planner-section-header h3{margin:0}.planner-list-item{background:#fff;border:1px solid #e5e7eb;border-radius:14px;margin:0 0 1rem;padding:1rem}.planner-row-grid{gap:1rem;display:grid}.planner-row-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-row-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.planner-row-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.planner-inline-row{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.7rem;display:flex}.planner-inline-row select,.planner-inline-row input{width:auto;min-width:120px}.planner-checkbox-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.4rem .8rem;display:grid}.planner-checkbox-item{align-items:center;gap:.45rem;font-weight:500;display:flex}.planner-weekday-selector{flex-wrap:wrap;gap:.35rem;display:flex}.planner-weekday-selector button{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:999px;padding:.35rem .55rem}.planner-weekday-selector button.selected{color:#fff;background:#2563eb;border-color:#2563eb}.planner-preferences-box{border-top:1px solid #e5e7eb;margin-top:.85rem;padding-top:.85rem}.planner-priority-list{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.planner-priority-pill{background:#f3f4f6;border-radius:999px;align-items:center;gap:.25rem;padding:.35rem .45rem .35rem .7rem;font-size:.9rem;display:inline-flex}.planner-priority-pill button{cursor:pointer;background:#fff;border:none;border-radius:50%;width:1.45rem;height:1.45rem}.planner-conflicts{gap:.5rem;margin-bottom:1rem;display:grid}.planner-conflict{background:#f9fafb;border:1px solid #d1d5db;border-radius:12px;padding:.8rem 1rem}.planner-conflict.info{color:#1e3a8a;background:#eff6ff;border-color:#bfdbfe}.planner-conflict.warning{color:#92400e;background:#fffbeb;border-color:#fde68a}.planner-conflict.error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.planner-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.planner-print-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;margin-bottom:1rem;padding:1rem}.planner-print-card h4{margin:0 0 .75rem}.planner-table th,.planner-table td{white-space:nowrap}@media (width<=900px){.planner-toolbar,.planner-section-grid,.planner-result-grid,.planner-row-grid.two,.planner-row-grid.three,.planner-row-grid.five{grid-template-columns:1fr}}@media print{.app-header,.app-footer,.planner-toolbar,.planner-tabs,.planner-conflicts,.planner-section-header .btn,.btn,.btn-secondary{display:none!important}.planner-result-grid{grid-template-columns:1fr}.planner-print-card{page-break-inside:avoid;box-shadow:none}}.planner-print-card,.planner-print-card h4,.planner-print-card p,.planner-print-card .admin-table,.planner-print-card .admin-table td{color:#111827}.planner-print-card .admin-table th{color:#fff;background-color:#111827}.planner-print-card .admin-table td{background-color:#fff;border-bottom:1px solid #e5e7eb}.planner-print-card .admin-table tr:hover td{background-color:#f9fafb}.planner-print-card .planner-table{table-layout:auto}.planner-list-item-compact{border-radius:10px;margin-bottom:.6rem;padding:.65rem .75rem}.planner-list-item-compact .form-group{margin-bottom:.35rem}.planner-list-item-compact label{margin-bottom:.18rem;font-size:.78rem}.planner-list-item-compact input,.planner-list-item-compact select{min-height:36px;padding:.45rem .55rem}.planner-list-item-compact .planner-row-grid{gap:.55rem}.course-type-item .planner-row-grid.three{grid-template-columns:minmax(220px,1fr) 110px 120px;align-items:end}.room-item .planner-checkbox-grid,.trainer-item .planner-checkbox-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.25rem .6rem}.trainer-item .planner-row-grid.three{grid-template-columns:minmax(220px,1fr) 140px minmax(220px,1.4fr);align-items:start}.trainer-item .planner-row-grid.four{grid-template-columns:minmax(220px,1fr) 130px 170px minmax(220px,1.4fr);align-items:start}.trainer-item .planner-row-grid.two{gap:.65rem}.trainer-item .planner-preferences-box{margin-top:.55rem;padding-top:.55rem}.planner-copy-box{color:#111827;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;margin-top:.8rem;padding:.85rem}.planner-copy-box .planner-inline-row{margin-bottom:.5rem}.planner-copy-box .form-hint{margin:.25rem 0 .65rem}@media (width<=900px){.course-type-item .planner-row-grid.three,.trainer-item .planner-row-grid.three,.trainer-item .planner-row-grid.four{grid-template-columns:1fr}}.planner-accordion-row{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:.45rem;overflow:hidden}.planner-accordion-summary{color:#111827;text-align:left;cursor:pointer;width:100%;min-height:42px;font:inherit;background:#fff;border:0;grid-template-columns:minmax(170px,1.3fr) repeat(3,minmax(90px,auto)) auto;align-items:center;gap:.75rem;padding:.45rem .75rem;display:grid}.course-type-item .planner-accordion-summary{grid-template-columns:minmax(170px,1.5fr) 90px 110px auto}.planner-accordion-summary:hover{background:#f8fafc}.planner-accordion-row.open .planner-accordion-summary{background:#f9fafb;border-bottom:1px solid #e5e7eb}.planner-accordion-title{color:#111827;white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.planner-summary-action{color:#2563eb;justify-self:end;font-size:.86rem;font-weight:700}.planner-accordion-body{color:#111827;padding:.75rem}.planner-accordion-body .form-group{margin-bottom:.45rem}.planner-accordion-body label{margin-bottom:.18rem;font-size:.78rem}.planner-accordion-body input,.planner-accordion-body select{min-height:36px;padding:.45rem .55rem}@media (width<=900px){.planner-accordion-summary,.course-type-item .planner-accordion-summary{grid-template-columns:1fr;gap:.25rem}.planner-summary-action{justify-self:start}}.planner-result-editor{gap:1.4rem;display:grid}.planner-manual-entry-box{color:#111827;background:#eff6ff;border:1px solid #bfdbfe;border-radius:16px;padding:1rem}.planner-manual-entry-box h3{color:#111827;margin:0 0 .25rem}.planner-room-timetables{gap:1.5rem;display:grid}.planner-timetable-card{color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:1rem;overflow-x:auto}.planner-timetable-card h4{color:#111827;margin:0}.planner-week-grid{background:#fff;border:1px solid #dbe2ea;border-radius:12px;min-width:1040px;display:grid;position:relative;overflow:hidden}.planner-grid-corner,.planner-day-header,.planner-time-label{color:#fff;z-index:3;background:#111827;border-bottom:1px solid #374151;border-right:1px solid #374151;justify-content:center;align-items:center;font-weight:700;display:flex}.planner-day-header{position:sticky;top:0}.planner-time-label{color:#334155;z-index:1;background:#f8fafc;border-bottom:1px solid #eef2f7;border-right:1px solid #dbe2ea;justify-content:flex-end;padding-right:.5rem;font-size:.78rem}.planner-drop-cell{cursor:pointer;background:#fff;border-top:0;border-bottom:1px solid #eef2f7;border-left:0;border-right:1px solid #e5e7eb;min-width:0;padding:0}.planner-drop-cell.open:hover,.planner-drop-cell.open:focus{outline-offset:-2px;background:#dbeafe;outline:2px solid #93c5fd}.planner-drop-cell.closed{background:repeating-linear-gradient(45deg,#f8fafc,#f8fafc 6px,#f1f5f9 6px 12px)}.planner-course-block{color:#111827;z-index:4;cursor:grab;background:#dbeafe;border:1px solid #2563eb;border-radius:10px;margin:2px;padding:.28rem 2.15rem .28rem .42rem;font-size:.74rem;line-height:1.18;position:relative;overflow:hidden;box-shadow:0 4px 10px #0f172a1f}.planner-course-block.fixed{cursor:default;background:#fef3c7;border-color:#f59e0b}.planner-course-block-title{white-space:nowrap;text-overflow:ellipsis;font-weight:800;overflow:hidden}.planner-course-actions{z-index:6;flex-direction:row;gap:.18rem;margin-top:0;display:flex;position:absolute;top:4px;right:4px}.planner-course-actions button{color:#111827;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;min-width:20px;height:19px;padding:0 .15rem;font-weight:800;line-height:16px}.planner-course-actions button:hover{background:#f8fafc}@media (width<=900px){.planner-manual-entry-box .planner-row-grid.five{grid-template-columns:1fr}}@media print{.planner-manual-entry-box,.planner-course-actions{display:none!important}.planner-timetable-card{page-break-inside:avoid;overflow:visible}.planner-week-grid{min-width:0;font-size:.65rem}.planner-course-block{box-shadow:none}}.planner-print-toolbar{color:#111827;background:#f8fafc;border:1px dashed #bfdbfe;border-radius:14px;flex-wrap:wrap;align-items:center;gap:.9rem;padding:.9rem 1rem;display:flex}.planner-print-toolbar small{color:#334155}.planner-print-only{display:none}.planner-print-page{color:#111827;page-break-after:always;background:#fff;padding:10mm}.planner-print-header{border-bottom:2px solid #111827;justify-content:space-between;align-items:flex-start;gap:10mm;margin-bottom:5mm;padding-bottom:4mm;display:flex}.planner-print-header h2{color:#111827;margin:0;font-size:16pt}.planner-print-header p{color:#334155;margin:1mm 0 0;font-size:9pt}.planner-print-logo{letter-spacing:.2mm;color:#111827;white-space:nowrap;font-size:15pt;font-weight:900}.planner-print-timetable{border-collapse:collapse;table-layout:fixed;width:100%;font-size:7.4pt}.planner-print-timetable th,.planner-print-timetable td{vertical-align:top;border:.4pt solid #94a3b8;height:11mm;padding:1.2mm}.planner-print-timetable thead th{color:#fff;text-align:center;background:#111827}.planner-print-timetable tbody th{color:#111827;text-align:right;background:#f1f5f9;width:13mm;font-weight:700}.planner-print-course{border-left:2px solid #2563eb;margin-bottom:1mm;padding-left:1.2mm;line-height:1.15}@page{size:A4 landscape;margin:8mm}@media print{html,body{background:#fff!important}body *{visibility:hidden!important}.planner-print-only,.planner-print-only *{visibility:visible!important}.planner-print-only{width:100%;margin:0;padding:0;position:absolute;top:0;left:0;display:block!important}.planner-print-page{box-shadow:none;border:0;display:block}}.planner-print-toolbar .planner-print-button,.planner-print-toolbar .btn{opacity:1;visibility:visible;text-shadow:0 1px 1px #00000047;border:0;justify-content:center;align-items:center;width:auto;min-width:260px;display:inline-flex;box-shadow:0 6px 18px #0f172a29;background:linear-gradient(45deg, var(--primary-glow), var(--secondary-glow))!important;color:#fff!important}.planner-print-toolbar .planner-print-button:hover,.planner-print-toolbar .btn:hover{box-shadow:0 0 15px var(--border-glow);color:#fff!important}.planner-print-logo{min-width:38mm;max-width:52mm}.planner-print-logo img{object-fit:contain;width:100%;max-height:18mm;display:block}.planner-print-page{box-sizing:border-box;width:100%;min-height:0}.planner-print-timetable{page-break-inside:avoid}@page{size:A4 landscape;margin:6mm}@media print{.planner-print-page{break-after:page;page-break-after:always;width:285mm;height:198mm;padding:4mm;overflow:hidden}.planner-print-header{align-items:center;min-height:14mm;margin-bottom:2.2mm;padding-bottom:2mm}.planner-print-header h2{font-size:12.5pt;line-height:1.05}.planner-print-header p{font-size:7.3pt;line-height:1.1}.planner-print-logo{min-width:30mm;max-width:42mm}.planner-print-logo img{max-height:13mm}.planner-print-timetable{table-layout:fixed;font-size:5.3pt;line-height:1.05}.planner-print-timetable th,.planner-print-timetable td{height:5.1mm;max-height:5.1mm;padding:.45mm;overflow:hidden}.planner-print-timetable thead th{height:5.6mm}.planner-print-timetable tbody th{width:11mm;font-size:5.2pt}.planner-print-course{border-left-width:1.1pt;max-height:4.3mm;margin-bottom:.3mm;padding-left:.65mm;line-height:1.05;overflow:hidden}.planner-print-course strong{font-size:5.4pt}.planner-print-course br{display:none}.planner-print-course span:before{content:" · "}}.planner-course-block{border-left-width:4px}.planner-course-block.fixed{box-shadow:inset 0 0 0 2px #f59e0b,0 4px 10px #0f172a1f}.planner-course-trainer{font-weight:800}.planner-print-week-grid{background:#fff;border:.5pt solid #cbd5e1;width:100%;height:calc(100% - 20mm);display:grid;position:relative;overflow:hidden}.planner-print-grid-corner,.planner-print-day-header{color:#fff;z-index:3;background:#111827;border-right:.35pt solid #334155;justify-content:center;align-items:center;font-size:7.2pt;font-weight:900;display:flex}.planner-print-grid-corner{grid-area:1/1}.planner-print-day-header{grid-row:1}.planner-print-day-header:nth-of-type(2){grid-column:2}.planner-print-day-guide{z-index:1;background:linear-gradient(#f8fafc8c,#ffffff40);border-left:.35pt solid #dbe3ef}.planner-print-time-label{color:#475569;text-align:right;z-index:2;align-self:start;padding-right:1.1mm;font-size:5.3pt;transform:translateY(-.75mm)}.planner-print-time-label.visible{color:#0f172a;font-weight:800}.planner-print-course-block{border:.7pt solid var(--planner-course-border,#2563eb);z-index:5;-webkit-print-color-adjust:exact;print-color-adjust:exact;border-left-width:2.2pt;border-radius:1.5mm;flex-direction:column;justify-content:center;margin:.35mm;padding:.65mm .85mm;line-height:1.05;display:flex;overflow:hidden;box-shadow:0 .6mm 1.8mm #0f172a24}.planner-print-course-block.fixed{box-shadow:inset 0 0 0 1pt #f59e0b,0 .6mm 1.8mm #0f172a24}.planner-print-course-block strong{white-space:nowrap;text-overflow:ellipsis;font-size:6pt;line-height:1.05;overflow:hidden}.planner-print-course-block span{white-space:nowrap;text-overflow:ellipsis;font-size:5.2pt;line-height:1.05;overflow:hidden}.planner-print-course-block .planner-print-trainer{font-weight:900}@media print{.planner-print-page{break-after:page;page-break-after:always;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:285mm;height:198mm;padding:4mm;overflow:hidden}.planner-print-header{box-sizing:border-box;height:15mm;margin-bottom:2mm;padding-bottom:1.5mm}.planner-print-header h2{font-size:12pt}.planner-print-header p{font-size:7pt}.planner-print-logo img{max-height:12mm}.planner-print-week-grid{height:calc(100% - 17mm)}.planner-print-course-block strong{font-size:clamp(4.8pt,.9vw,6pt)}.planner-print-course-block span{font-size:clamp(4.2pt,.75vw,5.2pt)}}.dashboard-page .dashboard-intro{color:var(--text-secondary);text-align:center;max-width:820px;margin:-.5rem auto 1.5rem}.dashboard-summary-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem;margin:1.5rem 0 2rem;display:grid}.dashboard-summary-card{border:1px solid var(--border-light);background:#ffffff14;border-radius:14px;flex-direction:column;gap:.25rem;padding:1.1rem 1.25rem;display:flex;box-shadow:0 10px 30px #0000002e}.dashboard-summary-card strong{color:var(--text-primary);font-size:2rem;line-height:1}.dashboard-summary-card span{color:var(--text-secondary);font-size:.95rem}.dashboard-summary-card.urgent{background:#feca571f;border-color:#feca578c}.dashboard-list{flex-direction:column;gap:1rem;display:flex}.dashboard-item{border:1px solid var(--border-light);border-left:5px solid var(--border-strong);background:#121222e6;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:1.15rem 1.25rem;display:grid}.dashboard-item.todo{border-left-color:var(--warning-color)}.dashboard-item.success{border-left-color:var(--success-color)}.dashboard-item.warning{border-left-color:var(--warning-color)}.dashboard-item.info{border-left-color:var(--primary-glow)}.dashboard-item-header{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.55rem;display:flex}.dashboard-item-header time{color:var(--text-secondary);font-size:.85rem}.dashboard-item h3{color:var(--text-primary);margin:0 0 .4rem}.dashboard-item p{color:var(--text-secondary);margin:0}.dashboard-badge{border-radius:999px;padding:.25rem .65rem;font-size:.76rem;font-weight:700;display:inline-flex}.dashboard-badge.todo,.dashboard-badge.warning{color:#ffd98a;background:#feca5733}.dashboard-badge.success{color:#9dffdc;background:#00f5a029}.dashboard-badge.info{color:#f0c8ff;background:#9c27b02e}.dashboard-empty{text-align:center;border:1px dashed var(--border-strong);background:#ffffff0a;border-radius:14px;padding:2rem}.cancellation-box{box-shadow:0 14px 36px #0003;background:linear-gradient(135deg,#feca572e,#121222f5)!important;border:1px solid #feca57bf!important}.cancellation-box h3{text-shadow:0 1px 2px #00000059;margin-top:0;font-size:1.3rem;color:#ffe2a3!important}.cancellation-box p,.cancellation-box li{color:#fff4d8!important}.cancellation-explanation-list{margin:.75rem 0 1.25rem 1.2rem;padding:0}.cancellation-explanation-list li{margin-bottom:.45rem}.planner-print-toolbar .planner-print-button,.planner-print-toolbar .btn.planner-print-button,button.planner-print-button{color:#fff!important;border:2px solid var(--primary-glow)!important;opacity:1!important;visibility:visible!important;background:#121222!important;box-shadow:0 0 0 3px #9c27b02e,0 10px 28px #00000047!important}.planner-print-toolbar .planner-print-button:hover,.planner-print-toolbar .btn.planner-print-button:hover,button.planner-print-button:hover{background:linear-gradient(45deg, var(--primary-glow), var(--secondary-glow))!important;color:#fff!important}@media (width<=700px){.dashboard-item{grid-template-columns:1fr}}.admin-section h2,.admin-section h3,.admin-section h4,.planner-section-header h2,.planner-section-header h3,.planner-section-header h4,.contact-info-box.success h4,.contact-info-box.info h4,.cancellation-box .request-form h4{text-shadow:0 1px 2px #00000073;color:#fff!important}.planner-card .form-hint,.planner-card-wide .form-hint{color:#f3e8ff}.planner-row-grid.fixed-course-grid{grid-template-columns:minmax(150px,1.1fr) minmax(190px,1.3fr) minmax(120px,.8fr) minmax(120px,.8fr) minmax(150px,1fr) minmax(150px,1fr)}.dashboard-item-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.dashboard-dismiss-button{opacity:.88}.dashboard-dismiss-button:hover{opacity:1}@media (width<=1100px){.planner-row-grid.fixed-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.planner-row-grid.fixed-course-grid,.planner-row-grid.two,.planner-row-grid.three,.planner-row-grid.five{grid-template-columns:1fr}.dashboard-item-actions{justify-content:stretch}.dashboard-item-actions .btn{width:100%}}.page-intro,.filter-intro p,.course-list-heading p,.help-panel p,.empty-state-box p,.dashboard-guidance-card p{color:var(--text-secondary)}.page-intro{text-align:center;max-width:760px;margin:-.75rem auto 1.75rem}.help-panel,.filter-intro,.empty-state-box,.dashboard-guidance-card{border:1px solid var(--border-light);background:#ffffff0a;border-radius:12px;margin-bottom:1.5rem;padding:1.1rem 1.25rem}.help-panel h2,.filter-intro h2,.course-list-heading h2,.dashboard-guidance-card h2,.dashboard-offered-section h2,.empty-state-box h3{color:var(--text-primary);margin-top:0}.help-panel p:last-child,.filter-intro p:last-child,.empty-state-box p:last-child,.dashboard-guidance-card p:last-child{margin-bottom:0}.filter-container .filter-group{flex:180px;min-width:180px}.filter-actions{flex-direction:column;flex:0 0 210px;gap:.65rem;min-width:190px;display:flex}.filter-actions .btn,.filter-actions .btn-secondary{width:100%;min-height:44px}.course-list-heading{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:flex-end;gap:1.5rem;margin:2rem 0 1.25rem;padding-bottom:1rem;display:flex}.course-list-heading h2{margin-bottom:.25rem}.course-list-heading span{color:var(--text-secondary);text-align:right;min-width:210px;font-size:.9rem}.empty-state-box{text-align:center}.dashboard-guidance-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin:1.5rem 0 2rem;display:grid}.dashboard-guidance-card{margin-bottom:0}.dashboard-guidance-card.highlighted{border-color:var(--primary-glow);box-shadow:0 0 20px #9c27b026}.dashboard-guidance-card .btn{margin-top:.75rem}.dashboard-offered-section{margin-top:2.5rem}.dashboard-offered-section .course-list-heading .btn{width:auto;min-width:240px}.compact-course-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.search-requests-page .search-request-manager{margin-top:1.5rem}.profile-card{box-shadow:0 0 20px #00000029}@media (width<=760px){.course-list-heading{flex-direction:column;align-items:stretch}.course-list-heading span{text-align:left;min-width:0}.dashboard-offered-section .course-list-heading .btn{width:100%;min-width:0}.filter-actions{flex:100%}}.qualification-file-list{flex-direction:column;gap:.65rem;margin:.75rem 0 1rem;padding:0;list-style:none;display:flex}.qualification-file-list.compact{gap:.4rem;margin:.4rem 0 0}.qualification-file-item{border:1px solid var(--border-light);background:#ffffff0b;border-radius:10px;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .8rem;display:flex}.qualification-file-list.compact .qualification-file-item{padding:.45rem .6rem;font-size:.9rem}.qualification-file-item a{color:var(--primary-glow);overflow-wrap:anywhere;font-weight:700}.qualification-file-item span{color:var(--text-secondary);white-space:nowrap;font-size:.88rem}.qualification-file-list.editable .qualification-file-item{align-items:center}.text-link.danger{color:#ff8a8a}.request-qualification-files{margin:.75rem 0}.request-qualification-files>strong{color:var(--text-primary);margin-bottom:.35rem;display:block}@media (width<=640px){.qualification-file-item{flex-direction:column;align-items:flex-start}.qualification-file-item span{white-space:normal}}.feedback-page .page-intro{max-width:840px}.feedback-section{margin-top:2rem}.feedback-form{border:1px solid var(--border-light);background:#ffffff0a;border-radius:14px;max-width:920px;margin:0 auto;padding:1.25rem}.feedback-user-note{color:var(--text-secondary);border:1px solid var(--border-light);background:#12122273;border-radius:10px;margin-bottom:1.25rem;padding:.75rem .9rem}.feedback-user-note strong{color:var(--text-primary)}.feedback-two-column{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.feedback-button-row{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1rem;display:flex}.feedback-button-row .btn{width:auto;min-width:180px}.roadmap-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}.roadmap-item{border:1px solid var(--border-light);background:#ffffff0d;border-radius:14px;padding:1.1rem 1.2rem;box-shadow:0 10px 30px #00000024}.roadmap-status{border:1px solid var(--primary-glow);color:var(--text-primary);background:#9c27b02e;border-radius:999px;margin-bottom:.75rem;padding:.25rem .7rem;font-size:.82rem;font-weight:700;display:inline-block}.roadmap-item h3{color:var(--text-primary);margin:0 0 .5rem}.roadmap-item p{color:var(--text-secondary);margin:0}@media (width<=700px){.feedback-form{padding:1rem}.feedback-button-row .btn{width:100%}}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body,.kursvertretung-app-wrapper,.app-container{max-width:100%}body{overflow-x:hidden}img,svg,video,canvas{max-width:100%}.kursvertretung-app-wrapper{isolation:isolate}.app-container{min-height:100svh}@supports (min-height:100dvh){.app-container{min-height:100dvh}}body.kursvertretung-app-embedded .kursvertretung-app-wrapper,body.kursvertretung-app-embedded #root,body.kursvertretung-app-embedded .app-container,body.kursvertretung-app-embedded .app-main{width:100%;max-width:100%}body.kursvertretung-app-embedded .app-container{min-height:auto;overflow-x:clip}body.kursvertretung-app-embedded .app-header{z-index:5;position:relative;top:auto}body.kursvertretung-app-embedded #masthead,body.kursvertretung-app-embedded .site-header,body.kursvertretung-app-embedded .wp-site-blocks>header,body.kursvertretung-app-embedded header.wp-block-template-part{z-index:20;position:relative;overflow:visible!important}body.kursvertretung-app-embedded .wp-block-site-logo,body.kursvertretung-app-embedded .custom-logo-link,body.kursvertretung-app-embedded .site-logo{align-items:center;max-width:72vw;display:flex;overflow:visible!important}body.kursvertretung-app-embedded .wp-block-site-logo img,body.kursvertretung-app-embedded img.custom-logo,body.kursvertretung-app-embedded .custom-logo-link img,body.kursvertretung-app-embedded .site-logo img{display:block;object-fit:contain!important;width:auto!important;max-width:min(72vw,320px)!important;height:auto!important;max-height:74px!important}.form-group input,.form-group textarea,.form-group select,.filter-group input,.filter-group select,.test-mail-row input{border-radius:10px;max-width:100%;line-height:1.35!important}.form-group select,.filter-group select{white-space:normal;text-overflow:ellipsis;height:auto;min-height:54px;appearance:none!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;background-position:right 1rem center!important;background-repeat:no-repeat!important;background-size:18px 18px!important;padding:.85rem 3rem .85rem 1rem!important;line-height:1.35!important}.form-group select::-ms-expand{display:none}.filter-group select::-ms-expand{display:none}.course-list,.compact-course-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}@supports (-webkit-touch-callout:none){.form-group select,.filter-group select{min-height:58px;padding-top:.95rem!important;padding-bottom:.95rem!important}}@media (width<=782px){body.kursvertretung-app-embedded .wp-block-site-logo img,body.kursvertretung-app-embedded img.custom-logo,body.kursvertretung-app-embedded .custom-logo-link img,body.kursvertretung-app-embedded .site-logo img{max-width:min(70vw,260px)!important;max-height:62px!important}}@media (width<=640px){body.kursvertretung-app-embedded .kursvertretung-app-wrapper,.kursvertretung-app-wrapper{max-width:100vw}.app-header{gap:.9rem;padding:.95rem clamp(.75rem,4vw,1rem)}.app-logo{max-width:100%;font-size:clamp(1.65rem,8vw,2.2rem);line-height:1.15}.app-nav{gap:.6rem}.app-nav button{white-space:normal;justify-content:center;align-items:center;min-width:0;min-height:48px;padding:.65rem .55rem;font-size:clamp(.9rem,4.1vw,1rem);line-height:1.2;display:flex}.app-main{padding:.75rem}.page-container,.filter-container,.feedback-form,.help-panel,.filter-intro,.empty-state-box,.dashboard-guidance-card{overflow:visible}.page-title{overflow-wrap:anywhere;font-size:clamp(1.95rem,10vw,2.75rem);line-height:1.12}.hero-banner{border-radius:12px;height:min(52svh,420px);min-height:270px}.hero-banner-content{padding:1.25rem}.hero-banner-content h1{overflow-wrap:anywhere;font-size:clamp(1.9rem,9vw,2.45rem);line-height:1.12}.hero-banner-content p{font-size:clamp(.98rem,4.5vw,1.08rem);line-height:1.45}.filter-container{gap:1.15rem;padding:1rem clamp(.85rem,4vw,1rem)}.filter-group,.filter-container .filter-group,.filter-actions{flex:100%;width:100%;min-width:0}.filter-group input,.filter-group select,.form-group input,.form-group select,.btn,.btn-secondary{min-height:52px}.filter-group label,.form-group label{line-height:1.3}.form-hint,.lookup-success,.lookup-hint{line-height:1.45}.course-list-heading h2{overflow-wrap:anywhere;font-size:clamp(1.75rem,9vw,2.3rem);line-height:1.15}}


/* V6.5.3: Aufgeräumtes Filterlayout Offene Kurse */
.course-list-page .filter-container{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:start;
  gap:1.35rem 1.5rem;
}
.course-list-page .filter-container>.filter-group{
  flex:none;
  min-width:0;
  width:100%;
  margin-bottom:0;
  display:flex;
  flex-direction:column;
}
.course-list-page .filter-container>.filter-group:nth-child(5){
  grid-column:span 2;
}
.course-list-page .filter-container>.filter-group label{
  min-height:2.75em;
  display:flex;
  align-items:flex-end;
  margin-bottom:.5rem;
  line-height:1.25;
}
.course-list-page .filter-container>.filter-group input,
.course-list-page .filter-container>.filter-group select{
  height:54px!important;
  min-height:54px!important;
}
.course-list-page .filter-container>.filter-group select{
  white-space:nowrap!important;
}
.course-list-page .filter-container>.filter-group .form-hint,
.course-list-page .filter-container>.filter-group .lookup-success,
.course-list-page .filter-container>.filter-group .lookup-hint{
  margin-top:.55rem;
}
.course-list-page .filter-actions{
  grid-column:span 2;
  align-self:end;
  flex:none;
  min-width:0;
  width:100%;
  max-width:none;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.course-list-page .filter-actions .btn,
.course-list-page .filter-actions .btn-secondary{
  width:100%;
  min-height:54px;
}
@media (max-width:1100px){
  .course-list-page .filter-container{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .course-list-page .filter-container>.filter-group:nth-child(5),
  .course-list-page .filter-actions{
    grid-column:1 / -1;
  }
}
@media (max-width:640px){
  .course-list-page .filter-container{
    grid-template-columns:1fr;
  }
  .course-list-page .filter-container>.filter-group label{
    min-height:0;
  }
  .course-list-page .filter-actions{
    grid-template-columns:1fr;
  }
}
