/*
 * Datei: public/assets/css/ui-polish.css
 * Zweck: Feinschliff für einheitliche Feldhöhen, Abstände, Buttons und responsive Details.
 */
.content .panel form{margin:0}
.content .panel form.workflow-complete-form{margin-top:14px}
.content label{align-content:start}
.content input:not([type="checkbox"]):not([type="radio"]),.content select,.module-view input:not([type="checkbox"]):not([type="radio"]),.module-view select{height:44px;min-height:44px}
.content textarea{min-height:96px;resize:vertical}
.content input[readonly]{background:#f8fafc;color:#667085}
.content .btn,.module-view .btn,.module-view .button{white-space:nowrap}
.content .form-actions,.content .button-row,.content .topbar-actions,.content .table-actions{gap:10px}
.content .form-actions,.module-view .form-actions{gap:12px}
.check-label{display:flex;align-items:center;gap:8px;min-height:0;padding:2px 0;line-height:1.3}
.check-label input,.content .form-check-input,.module-view .form-check-input{flex:0 0 18px;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:0}
.content .form-check,.module-view .form-check{display:flex;align-items:center;gap:8px;min-height:24px;padding-left:0}
.content .form-check .form-check-input,.module-view .form-check .form-check-input{float:none;margin-left:0}
.portal-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.portal-permission-grid .check-label{padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}
.role-card select,.role-card input{height:44px}
.content .transfer-panel select[multiple],.module-view .transfer-panel select[multiple]{height:320px!important;min-height:320px!important;padding:8px!important}
.filter-bar .btn,.workflow-filter .btn,.rooms-filter .btn,.phonebook-filter .btn,.filter-row .button,.calendar-period-controls .btn{height:44px;min-height:44px;padding-top:0;padding-bottom:0;display:inline-flex;align-items:center;justify-content:center}
.filter-row input:not([type="checkbox"]):not([type="radio"]),.filter-row select{height:44px;min-height:44px}
.phonebook-filter-actions,.rooms-filter-actions,.workflow-filter-actions{align-items:end}
.module-view .form-grid>label,.rooms-form>label{min-width:0}
.module-view .form-grid select,.module-view .form-grid input,.rooms-filter-grid select,.rooms-filter-grid input:not([type="checkbox"]){width:100%}
.rooms-filter-grid{align-items:end}
.rooms-filter-grid .check-label{align-self:center;margin-top:21px}
.calendar-period-controls .form-select,.calendar-period-controls .form-control{height:44px;min-height:44px;font-size:.95rem;line-height:1.2;padding-top:9px;padding-bottom:9px}
.calendar-period-controls input[type="date"]{display:flex;align-items:center}
.calendar-period-controls{align-items:center}
.calendar-pool-filter input{width:18px;height:18px;min-width:18px;min-height:18px;margin:0}
.stand-interest-form{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:8px;align-items:end}
.stand-interest-table .button-row{justify-content:flex-start}
.stand-interest-table input{min-width:180px}
.area-member-row .check-label{align-self:end}
.sub-check-group{display:grid;gap:8px;margin:-4px 0 4px 28px;padding:10px 12px;border-left:3px solid var(--line);background:#f8fafc;border-radius:10px}
.cleanup-groups{display:grid;gap:10px}
.cleanup-group{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}
.cleanup-group summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;list-style:none;background:#f8fafc;font-weight:850}
.cleanup-group summary::-webkit-details-marker{display:none}
.cleanup-group summary:after{content:"▾";flex:0 0 auto;color:var(--muted);transition:transform .15s}
.cleanup-group:not([open]) summary:after{transform:rotate(-90deg)}
.cleanup-group summary small{color:var(--muted);font-weight:650}
.cleanup-options{display:grid;gap:9px;padding:14px 16px}
.cleanup-main{padding:10px 12px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff}
.cleanup-group-danger summary{background:#fff1f0;color:var(--danger)}
.cleanup-group-danger .cleanup-main{border-color:#f4b8b2;background:#fffafa}
.help-hero,.help-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.help-hero h2,.help-card h2{margin:0 0 6px}
.help-hero p,.help-card p{margin:0;color:var(--muted);line-height:1.45}
.help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.help-card{display:grid;gap:12px}
.help-card-head{height:100%}
@media(max-width:900px){
    .content .section-heading{align-items:stretch;flex-direction:column}
    .content .section-heading .button-row,.content .section-heading>.btn{align-self:stretch}
    .content .section-heading .btn,.content .section-heading .button-row .btn{width:100%}
    .portal-permission-grid{grid-template-columns:1fr}
    .stand-interest-form{grid-template-columns:1fr}
    .help-grid{grid-template-columns:1fr}
    .help-hero,.help-card-head{align-items:stretch;flex-direction:column}
    .stand-interest-table .button-row{align-items:stretch;flex-direction:column}
    .stand-interest-table .button-row .btn,.stand-interest-table .button-row input{width:100%}
}
@media(max-width:640px){
    .content{padding:16px}
    .panel{padding:18px}
    .content .btn,.content .button-row form{width:100%}
    .content .button-row{align-items:stretch;justify-content:flex-start}
    .phonebook-filter-actions,.rooms-filter-actions,.workflow-filter-actions{align-items:stretch;flex-direction:column}
    .phonebook-filter-actions .btn,.rooms-filter-actions .btn,.workflow-filter-actions .btn{width:100%}
    th,td{padding:12px 13px}
}
