:root{--bg:#f4f6f3;--surface:#fff;--surface-2:#f8faf8;--ink:#17211b;--muted:#69736d;--line:#dfe5df;--green:#7f9929;--green-dark:#566b17;--orange:#ef7416;--orange-dark:#bd4e06;--nav:#17211b;--nav-soft:#253129;--danger:#b42318;--success:#237a3b;--shadow:0 12px 32px rgba(23,33,27,.07);--radius:12px}*{box-sizing:border-box}html{min-height:100%}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;font-size:14px;line-height:1.5}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:var(--nav);color:#fff;display:flex;flex-direction:column;z-index:20;border-right:1px solid rgba(255,255,255,.06)}.brand{height:91px;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;justify-content:center;background:#fff}.brand img{display:block;width:100%;max-height:42px;object-fit:contain}.brand span{margin-top:5px;color:#6e786f;text-align:center;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.main-nav{padding:20px 12px;display:flex;flex-direction:column;gap:3px;overflow:auto}.nav-label{padding:0 12px 9px;color:#8f9c94;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.main-nav a,.sidebar-footer a{display:flex;align-items:center;gap:12px;min-height:43px;padding:10px 12px;border-radius:7px;color:#cbd3ce;font-weight:650;transition:.16s ease}.main-nav a i,.sidebar-footer i{width:20px;font-style:normal;text-align:center;color:#98a59d}.main-nav a:hover,.main-nav a.active{background:var(--nav-soft);color:#fff}.main-nav a.active{box-shadow:inset 3px 0 0 var(--orange)}.main-nav a.active i{color:#f5a05f}.sidebar-footer{margin-top:auto;padding:12px;border-top:1px solid rgba(255,255,255,.08)}.sidebar-footer small{display:block;padding:10px 12px 0;color:#75827a;font-size:10px}.main{margin-left:250px;min-width:0;width:calc(100% - 250px);padding-bottom:60px}.topbar{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:10}.breadcrumbs{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:13px}.breadcrumbs b{font-weight:400;color:#b1b9b3}.topbar-meta{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:12px}.user-chip{padding:7px 10px;border-left:1px solid var(--line);font-weight:700;color:var(--ink)}.menu-toggle{display:none;border:0;background:transparent;font-size:21px}.page-heading{padding:28px 32px 18px;display:flex;justify-content:space-between;align-items:flex-end}.page-heading h1{font-size:29px;line-height:1.15;margin:3px 0 0;letter-spacing:-.035em}.eyebrow{display:block;color:var(--green-dark);font-size:10px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.page-actions{margin:0 32px 16px;display:flex;justify-content:space-between;align-items:center;gap:16px}.page-actions p{margin:0;color:var(--muted)}.panel,.card{margin:0 32px 18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;overflow:auto}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid var(--line)}.panel-head h2{margin:4px 0 0;font-size:19px;letter-spacing:-.02em}.step-index{font-size:12px;font-weight:800;color:#9aa49d;border:1px solid var(--line);padding:5px 8px;border-radius:5px}.btn{border:1px solid transparent;min-height:40px;padding:9px 14px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:750;cursor:pointer;white-space:nowrap;transition:.16s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--orange);color:#fff}.btn-primary:hover{background:var(--orange-dark)}.btn-secondary{background:var(--green);color:#fff}.btn-secondary:hover{background:var(--green-dark)}.btn-light,.btn.ghost{background:#fff;color:var(--ink);border-color:var(--line)}.btn.secondary{background:#edf2df;color:var(--green-dark)}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.actions.compact{margin:0}.form,.workspace-form{display:grid;gap:18px}.form-grid{display:grid;gap:16px}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.field-span-2{grid-column:span 2}.field-span-3{grid-column:span 3}.field label,label{display:block;margin-bottom:6px;color:#354039;font-size:12px;font-weight:750}.field input,.field select,.field textarea,input,select,textarea{width:100%;border:1px solid #ccd5ce;border-radius:7px;background:#fff;color:var(--ink);padding:10px 11px;outline:none;transition:.15s ease}.field input:focus,.field select:focus,.field textarea:focus,input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(127,153,41,.12)}textarea{resize:vertical;min-height:110px}.field-help{margin:5px 0 0;color:var(--muted);font-size:11px}.checkbox-field{display:flex;align-items:flex-end;padding-bottom:9px}.checkbox-field label{display:flex;align-items:center;gap:8px;margin:0}.checkbox-field input,.consent-box input{width:auto}.input-suffix{display:flex}.input-suffix input{border-radius:7px 0 0 7px}.input-suffix span{display:flex;align-items:center;border:1px solid #ccd5ce;border-left:0;border-radius:0 7px 7px 0;padding:0 10px;background:#f1f4f1;color:var(--muted);font-size:12px}.submission-bar{margin:0 32px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--green);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px;display:flex;justify-content:space-between;align-items:center;gap:22px}.submission-bar div{display:grid;gap:3px}.submission-bar span{color:var(--muted);font-size:12px}.alert,.notice,.error{margin:0 32px 16px;padding:12px 14px;border-radius:7px;border:1px solid}.alert-error,.error{background:#fff5f4;border-color:#f2c4bf;color:var(--danger)}.notice{background:#f4f7ec;border-color:#dfe8c4;color:#526517}.table-panel{padding:0}.table-panel .panel-head{padding:20px 22px;margin:0}.table-wrap{overflow:auto}.data-table,.table{width:100%;border-collapse:collapse}.data-table th,.data-table td,.table th,.table td{padding:13px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.data-table th,.table th{background:#f7f9f7;color:#68726c;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.data-table tbody tr:hover{background:#fafcfa}.row-actions{display:flex;gap:12px}.row-actions a{color:var(--green-dark);font-weight:750;font-size:12px}.status,.badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:5px;background:#edf0ed;color:#536058;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.status-unterzeichnet{background:#e7f4ea;color:var(--success)}.status-in-unterschrift{background:#fff2e6;color:var(--orange-dark)}.empty-state{text-align:center!important;color:var(--muted);padding:40px!important}.document-toolbar{margin:0 32px 16px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);display:flex;justify-content:space-between;align-items:center;gap:16px}.document-toolbar>div:first-child{display:grid;gap:2px}.document-toolbar span{color:var(--muted);font-size:11px}.document-stage{padding:0 32px 50px}.contract-paper{max-width:900px;margin:0 auto;background:#fff;border:1px solid #d9ded9;box-shadow:0 18px 46px rgba(23,33,27,.09);padding:54px 62px;color:#171b18}.legal-contract{font-family:Arial,sans-serif;font-size:13px;line-height:1.56}.contract-letterhead{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:22px;border-bottom:2px solid var(--green);margin-bottom:34px}.contract-letterhead img{width:270px;max-height:70px;object-fit:contain;object-position:left center}.contract-letterhead div{display:grid;text-align:right}.contract-letterhead strong{font-size:16px}.contract-letterhead span{font-size:11px;color:#666}.legal-contract h1{font-size:28px;text-align:center;margin:0 0 30px}.contract-intro{margin-bottom:26px}.contract-section{margin:0 0 19px}.contract-section h2{font-size:14px;margin:0 0 5px}.contract-section p{margin:0 0 8px}.contract-signature-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px;margin-top:58px}.contract-signature-grid div{display:grid;gap:9px}.contract-signature-grid span{font-size:11px;color:#555}.contract-signature-grid i{height:34px;border-bottom:1px solid #222}.contract-signature-grid b{font-size:11px}.digital-signatures{margin-top:35px;padding-top:24px;border-top:1px solid #bbb}.digital-signatures h2{font-size:15px}.signature-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.signature-card{display:grid;gap:5px;border:1px solid #ddd;padding:12px}.signature-card span,.signature-card small{font-size:10px;color:#666}.signature-card img{max-width:220px;max-height:85px;object-fit:contain;object-position:left center}.signature-card em{color:#888;font-size:12px}.signature-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(360px,.7fr);gap:18px;margin:0 32px}.signature-layout .panel{margin:0}.document-scroll{max-height:690px;overflow:auto;border:1px solid var(--line);padding:25px;background:#f4f5f4}.document-scroll .legal-contract{background:#fff;padding:30px}.signature-panel{align-self:start;position:sticky;top:82px}.signature-pad{display:block;width:100%;height:220px;background:#fff;border:1px solid #aeb9b1;border-radius:7px;touch-action:none}.consent-box{display:flex;align-items:flex-start;gap:9px;padding:12px;background:#f6f8f6;border:1px solid var(--line);border-radius:7px;font-size:12px}.grid{display:grid;gap:18px}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-2,.form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.metric .num{font-size:31px;font-weight:800}.metric .label{color:var(--muted)}.toolbar{display:flex;gap:10px;align-items:center;margin:12px 32px 18px}
.login-page{min-height:100vh;display:grid;place-items:center;background:#edf1ed;padding:28px}.login-wrap{width:min(1050px,100%);display:grid;grid-template-columns:1.15fr .85fr;background:#fff;border:1px solid var(--line);box-shadow:0 24px 70px rgba(23,33,27,.12)}.login-hero{background:linear-gradient(150deg,#17211b,#29372d);color:#fff;padding:48px}.login-hero-card{height:100%;display:flex;flex-direction:column;justify-content:flex-end}.login-hero-logo{width:360px;max-width:100%;background:#fff;padding:15px;margin-bottom:auto}.login-hero h1{font-size:36px;margin:30px 0 10px}.login-hero p{color:#cbd4ce;max-width:520px}.login-feature-list{display:flex;gap:8px;flex-wrap:wrap}.login-feature-list span{border:1px solid rgba(255,255,255,.16);padding:7px 9px;font-size:11px}.login-card{padding:48px;align-self:center}.login-logo-box{display:none}.login-title span{color:var(--green-dark);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.login-title h2{font-size:28px;margin:5px 0}.login-title p{color:var(--muted);margin:0 0 24px}.login-btn{width:100%}
@media(max-width:1100px){.form-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.signature-layout{grid-template-columns:1fr}.signature-panel{position:static}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.sidebar{transform:translateX(-100%);transition:.2s ease}.sidebar.open{transform:translateX(0)}.main{margin-left:0;width:100%}.menu-toggle{display:block}.topbar{padding:0 18px}.breadcrumbs{display:none}.page-heading{padding:22px 18px 14px}.page-actions,.panel,.card,.submission-bar,.document-toolbar{margin-left:18px;margin-right:18px}.document-stage{padding-left:18px;padding-right:18px}.signature-layout{margin:0 18px}.form-grid-3,.form-grid-4,.grid-2,.form-row{grid-template-columns:1fr}.field-span-2,.field-span-3{grid-column:auto}.submission-bar,.document-toolbar{align-items:stretch;flex-direction:column}.login-wrap{grid-template-columns:1fr}.login-hero{display:none}}@media(max-width:560px){.topbar-meta>span:first-child{display:none}.panel,.card{padding:16px}.contract-paper{padding:28px 22px}.contract-letterhead{display:grid;gap:12px}.contract-letterhead div{text-align:left}.contract-signature-grid,.signature-cards{grid-template-columns:1fr}.btn{width:100%}.actions{width:100%}.grid-4{grid-template-columns:1fr}.login-card{padding:28px}}
@media print{body{background:#fff}.sidebar,.topbar,.page-heading,.no-print,.print-controls{display:none!important}.main{margin:0;width:100%;padding:0}.document-stage{padding:0}.contract-paper{border:0;box-shadow:none;max-width:none;margin:0;padding:12mm 15mm}.legal-contract{font-size:10.5pt}.contract-section{break-inside:avoid}.digital-signatures{break-inside:avoid}@page{size:A4;margin:10mm}}
.field-label-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.field-label-row label{margin-bottom:6px}.text-button{border:0;background:transparent;color:var(--green-dark);font-size:11px;font-weight:800;cursor:pointer;padding:0 0 6px}.text-button:hover{text-decoration:underline}.text-button:disabled{opacity:.55;cursor:wait}


/* Bewerberportal */
.applicant-portal-page {
    min-height: 100vh;
    padding: 32px 18px;
    align-items: flex-start;
    background: linear-gradient(145deg, #f4f6f3 0%, #eef3e7 100%);
}

.applicant-portal-shell {
    width: min(920px, 100%);
    margin: 0 auto;
}

.applicant-portal-panel {
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #dfe5dc;
    border-radius: 12px;
    box-shadow: 0 18px 50px rgba(18, 35, 28, 0.11);
}

.applicant-portal-header {
    display: flex;
    align-items: center;
    gap: 30px;
    padding: 28px 34px;
    border-bottom: 1px solid #e5e9e2;
    background: #fbfcfa;
}

.applicant-portal-logo {
    width: min(300px, 42%);
    height: auto;
    object-fit: contain;
}

.applicant-portal-kicker {
    display: block;
    margin-bottom: 5px;
    color: #6c8121;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.applicant-portal-header h1 {
    margin: 0;
    font-size: clamp(1.55rem, 3vw, 2.2rem);
}

.applicant-portal-header p {
    margin: 7px 0 0;
    color: #68716b;
}

.applicant-portal-panel > .notice,
.applicant-upload-form,
.applicant-documents-section,
.applicant-portal-panel > .actions {
    margin-left: 34px;
    margin-right: 34px;
}

.applicant-portal-panel > .notice {
    margin-top: 28px;
}

.notice.warning {
    border-color: #e8c67e;
    background: #fff8e8;
    color: #76540c;
}

.applicant-upload-form {
    padding: 28px 0;
    border-bottom: 1px solid #e5e9e2;
}

.applicant-documents-section {
    padding: 26px 0 30px;
}

.applicant-documents-section h2 {
    margin: 0 0 16px;
    font-size: 1.05rem;
}

.empty-state {
    padding: 24px;
    border: 1px dashed #ccd4c9;
    background: #f8faf7;
    color: #68716b;
    text-align: center;
}

.applicant-portal-panel > .actions {
    padding-bottom: 30px;
}

@media (max-width: 680px) {
    .applicant-portal-page {
        padding: 0;
    }

    .applicant-portal-panel {
        min-height: 100vh;
        border: 0;
        border-radius: 0;
    }

    .applicant-portal-header {
        display: block;
        padding: 24px 20px;
    }

    .applicant-portal-logo {
        width: min(280px, 100%);
        margin-bottom: 24px;
    }

    .applicant-portal-panel > .notice,
    .applicant-upload-form,
    .applicant-documents-section,
    .applicant-portal-panel > .actions {
        margin-left: 20px;
        margin-right: 20px;
    }
}

/* White-label, language and installer enhancements */
.language-switcher{display:flex;align-items:center;gap:4px;padding-right:10px;border-right:1px solid var(--line)}.language-switcher a,.login-language a{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:5px;color:var(--muted);font-size:11px;font-weight:800}.language-switcher a:hover,.language-switcher a.active,.login-language a:hover,.login-language a.active{background:#eef2e7;color:var(--green-dark)}.app-footer{margin:35px 32px 0;padding:18px 0;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.language-list{display:grid;gap:8px}.language-list>div{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid var(--line);background:var(--surface-2)}.language-list code{padding:4px 7px;border-radius:4px;background:#e9ede9;text-transform:uppercase}.login-page{position:relative;background:radial-gradient(circle at 15% 20%,rgba(127,153,41,.10),transparent 34%),radial-gradient(circle at 85% 80%,rgba(239,116,22,.08),transparent 31%),#eef2ee}.login-language{position:fixed;right:26px;top:22px;z-index:5;display:flex;gap:4px}.login-wrap{width:min(1060px,calc(100% - 44px));min-height:590px;border:0;border-radius:14px;overflow:hidden;box-shadow:0 30px 90px rgba(23,33,27,.16)}.login-hero{padding:52px 56px;background:linear-gradient(145deg,#142019 0%,#1c2d22 58%,#24382a 100%);display:flex;flex-direction:column}.login-brand{min-height:100px;display:flex;align-items:flex-start}.login-hero-logo{width:min(380px,100%);height:auto;max-height:92px;object-fit:contain;object-position:left center;background:transparent!important;padding:0!important;margin:0!important;filter:drop-shadow(0 8px 20px rgba(0,0,0,.12))}.login-hero-copy{margin-top:auto}.login-kicker{display:block;margin-bottom:12px;color:#a9bd61;font-size:11px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.login-hero h1{margin:0 0 14px;font-size:42px}.login-hero p{font-size:15px;line-height:1.7}.login-card{margin:0;border:0;border-radius:0;box-shadow:none;padding:64px 54px;display:flex;flex-direction:column;justify-content:center}.login-mobile-logo{display:none}.password-field{position:relative}.password-field input{padding-right:44px}.password-field button{position:absolute;right:4px;top:4px;width:36px;height:34px;border:0;background:transparent;color:var(--muted);cursor:pointer}.login-error{margin:0 0 18px}.login-footer{margin-top:28px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:10px}.installer-page{min-height:100vh;background:#eef2ee;padding:38px 18px}.installer-shell{width:min(1040px,100%);margin:0 auto}.installer-shell>header{display:flex;align-items:center;gap:30px;margin-bottom:22px;padding:28px 32px;background:#17211b;color:#fff;border-radius:12px}.installer-shell>header img{width:260px;max-height:72px;object-fit:contain}.installer-shell>header span{color:#a9bd61;font-size:10px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.installer-shell>header h1{margin:4px 0;font-size:28px}.installer-shell>header p{margin:0;color:#c5cec8}.installer-progress{display:flex;gap:8px;margin:0 0 18px}.installer-progress span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#dfe5df;color:#6e786f;font-weight:800}.installer-progress span.active{background:var(--orange);color:#fff}.installer-actions{display:flex;justify-content:space-between;gap:12px;margin-top:10px}.requirements{display:grid;gap:8px}.requirements>div{display:flex;justify-content:space-between;padding:12px;border:1px solid var(--line);background:var(--surface-2)}
@media(max-width:820px){.topbar-meta>span:not(.user-chip){display:none}.language-switcher{border:0;padding:0}.language-switcher a span{display:none}.login-language{right:12px;top:10px}.login-wrap{width:min(620px,calc(100% - 24px));min-height:auto}.login-card{padding:42px 30px}.login-mobile-logo{display:block;margin-bottom:28px}.login-mobile-logo img{max-width:280px;max-height:76px;object-fit:contain}.installer-shell>header{display:block}.installer-shell>header img{margin-bottom:20px}.app-footer{margin-left:18px;margin-right:18px}}

/* Professional Desktop UI 1.2: nüchtern, kompakt, ohne Bubble-/Card-Optik */
:root{--bg:#eef1f4;--surface:#fff;--surface-2:#f5f7f9;--ink:#1c2733;--muted:#607080;--line:#cfd6dd;--green:#315c78;--green-dark:#24465c;--orange:#1769aa;--orange-dark:#0e568e;--nav:#202a35;--nav-soft:#2c3947;--shadow:0 1px 2px rgba(20,35,50,.08);--radius:3px}
body{font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:13px;background:var(--bg)}
.sidebar{width:232px;background:var(--nav);border-right:1px solid #111923}.main{margin-left:232px;width:calc(100% - 232px)}
.brand{height:74px;padding:11px 18px;background:#f8f9fa;border-bottom:1px solid #cbd2d9}.brand img{max-height:36px}.brand span{font-size:9px;color:#52606d}
.main-nav{padding:12px 0;gap:0}.nav-label{padding:5px 18px 8px}.main-nav a,.sidebar-footer a{min-height:37px;padding:8px 18px;border-radius:0;border-left:3px solid transparent}.main-nav a:hover{background:#293643}.main-nav a.active{background:#344453;border-left-color:#53a7df;box-shadow:none}.main-nav a.active i{color:#8dc9ee}
.topbar{height:50px;padding:0 24px;background:#fafbfc}.page-heading{padding:20px 24px 12px}.page-heading h1{font-size:24px;letter-spacing:-.015em;font-weight:600}.eyebrow{color:#5b6b79;letter-spacing:.1em}
.page-actions{margin:0 24px 12px}.panel,.card{margin:0 24px 12px;padding:16px;border-radius:3px;box-shadow:var(--shadow)}
.panel-head{padding-bottom:12px;margin-bottom:14px}.panel-head h2,.card h2{font-size:16px;font-weight:600;letter-spacing:0}.step-index{border-radius:2px;background:#f1f4f6}
.grid{gap:0!important;border-top:1px solid var(--line);border-left:1px solid var(--line);margin-left:24px!important;margin-right:24px!important}.grid .card{margin:0;border-left:0;border-top:0;box-shadow:none;border-radius:0}
.metric{min-height:88px}.metric .num{font-size:26px!important;font-weight:600!important;color:#23384a}.metric .label{text-transform:none!important;letter-spacing:0!important;font-size:12px!important}
.btn{min-height:34px;padding:7px 12px;border-radius:2px;font-weight:600;transition:background .12s ease,border-color .12s ease}.btn:hover{transform:none}.btn-primary{background:#1769aa}.btn-secondary{background:#3e6077}.btn.secondary{background:#e7edf2;color:#24465c;border-color:#bdcad4}
.field input,.field select,.field textarea,input,select,textarea{border-radius:2px;padding:8px 9px}.field input:focus,.field select:focus,.field textarea:focus,input:focus,select:focus,textarea:focus{border-color:#2984c2;box-shadow:0 0 0 1px #2984c2}
.submission-bar{margin:0 24px;border-radius:2px;border-left:3px solid #1769aa;box-shadow:var(--shadow)}.notice,.error,.alert{margin-left:24px;margin-right:24px;border-radius:2px}.status,.badge{border-radius:2px}.data-table th,.table th{background:#e9edf1;color:#465766}.data-table td,.table td{padding-top:10px;padding-bottom:10px}.data-table tbody tr:nth-child(even),.table tbody tr:nth-child(even){background:#fafbfc}
.user-chip{background:#eef2f5;border:1px solid #d6dde3;padding:5px 9px}.language-switcher a{border-radius:2px}.app-footer{border-top:1px solid var(--line);padding-top:14px}
@media(max-width:1050px){.sidebar{width:232px}.main{margin-left:0;width:100%}.grid{margin-left:18px!important;margin-right:18px!important}.panel,.card,.page-actions,.submission-bar,.notice,.error,.alert{margin-left:18px;margin-right:18px}}
.module-tabs{display:flex;flex-wrap:wrap;margin:0 24px 14px;border:1px solid var(--line);background:#fff}.module-tabs a{padding:9px 13px;border-right:1px solid var(--line);color:#435363;font-weight:600}.module-tabs a:hover{background:#f0f4f7}.module-tabs a.active{background:#2b4c63;color:#fff}.panel code,.notice code{user-select:all;word-break:break-all}.error{background:#fff2f0}
.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;border:1px solid var(--line);padding:12px;background:#f7f9fa}.portal-page{max-width:1280px;margin:0 auto;padding:24px}.portal-header{display:flex;align-items:center;gap:24px;margin:0 24px 18px;padding:18px 20px;background:#fff;border:1px solid var(--line)}.portal-header img{width:190px;max-height:55px;object-fit:contain}.portal-header h1{margin:0;font-size:24px}.portal-header p{margin:4px 0 0;color:var(--muted)}
.btn-danger{background:#fff;color:#a12622;border-color:#d8aaa7}.btn-danger:hover{background:#a12622;color:#fff}.portal-invite-notice{display:grid;grid-template-columns:1fr auto;gap:8px 14px;align-items:center}.portal-invite-notice strong,.portal-invite-notice small{grid-column:1/-1}.portal-invite-notice code{padding:10px;background:#fff;border:1px solid var(--line)}.portal-account-form{display:grid;gap:6px;min-width:280px}.portal-account-form label{margin:0;font-size:11px}.portal-admin-table td{vertical-align:top}.portal-admin-table td:last-child form{margin-bottom:7px}
.employee-portal-body{background:#edf1f4}.employee-auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,44%) minmax(420px,560px);justify-content:center;align-items:stretch}.employee-auth-brand{padding:10vh 7vw;background:#202d3a;color:#fff;display:flex;flex-direction:column;justify-content:center}.employee-auth-brand img{width:min(360px,90%);max-height:90px;object-fit:contain;background:#fff;padding:14px;margin-bottom:48px}.employee-auth-brand span{font-size:11px;letter-spacing:.16em;color:#91b7d0;font-weight:700}.employee-auth-brand h1{font-size:42px;margin:10px 0 14px}.employee-auth-brand p{max-width:520px;color:#ccd6de;font-size:16px}.employee-auth-card{align-self:center;margin:40px;padding:38px;background:#fff;border:1px solid #cbd3da;box-shadow:0 12px 40px rgba(25,40,55,.12)}.employee-auth-card h2{font-size:25px;margin:7px 0}.employee-auth-card>p{color:var(--muted);margin-bottom:24px}
.employee-portal-shell{min-height:100vh;display:grid;grid-template-columns:240px minmax(0,1fr)}.employee-portal-sidebar{position:sticky;top:0;height:100vh;background:#202d3a;color:#fff;display:flex;flex-direction:column}.employee-portal-sidebar>img{width:100%;height:80px;object-fit:contain;background:#fff;padding:14px}.employee-person{padding:22px 18px;border-bottom:1px solid #394755;display:grid;gap:3px}.employee-person small,.employee-person span{color:#9babb8}.employee-portal-sidebar nav{display:grid;padding:12px 0}.employee-portal-sidebar nav a{padding:11px 20px;border-left:3px solid transparent;color:#d7dfe5}.employee-portal-sidebar nav a:hover{background:#2c3c4b;border-left-color:#4d9fd3}.employee-logout{margin-top:auto;padding:17px 20px;border-top:1px solid #394755}.employee-portal-main{min-width:0;padding:0 24px 40px}.employee-portal-main>header{height:82px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);margin-bottom:20px}.employee-portal-main>header h1{margin:3px 0 0;font-size:25px}.portal-metrics{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);margin-bottom:18px}.portal-metrics div{display:grid;padding:18px;border-right:1px solid var(--line)}.portal-metrics div:last-child{border-right:0}.portal-metrics strong{font-size:25px;color:#24465c}.portal-metrics span{color:var(--muted)}.portal-section{background:#fff;border:1px solid var(--line);padding:20px;margin-bottom:18px;scroll-margin-top:16px}.section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:16px}.section-title h2{margin:3px 0 0;font-size:19px}.section-title p{margin:0;color:var(--muted)}.portal-section>.grid{margin:0!important;border:0}.portal-section>.grid>.form{padding:16px;border:1px solid var(--line)}
@media(max-width:900px){.employee-auth-shell{display:block;padding:20px}.employee-auth-brand{padding:35px}.employee-auth-brand img{margin-bottom:24px}.employee-auth-brand h1{font-size:30px}.employee-auth-card{margin:0;padding:28px}.employee-portal-shell{display:block}.employee-portal-sidebar{position:static;height:auto}.employee-portal-sidebar nav{grid-template-columns:repeat(3,1fr)}.employee-portal-main{padding:0 12px 30px}.portal-metrics{grid-template-columns:repeat(2,1fr)}.section-title{display:block}.section-title p{margin-top:8px}.permission-grid{grid-template-columns:1fr}.portal-invite-notice{display:block}.portal-invite-notice>*{margin-bottom:8px}.portal-admin-table{min-width:900px}}
.calendar-year-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.vacation-year-calendar{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:10px;margin-bottom:18px}.vacation-month{border:1px solid var(--line);background:#fafbfc;padding:10px}.vacation-month h3{margin:0 0 8px;font-size:14px}.weekdays,.month-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.weekdays span{font-size:9px;text-align:center;color:var(--muted);font-weight:700}.month-days span{min-height:26px;display:grid;place-items:center;background:#fff;border:1px solid #e7eaed;font-size:11px}.month-days .weekend{background:#edf0f2;color:#88949d}.month-days .approved,.calendar-legend .approved{background:#dcefe2;color:#1e6538;border-color:#94c8a5}.month-days .requested,.calendar-legend .requested{background:#fff1d8;color:#8a5900;border-color:#e4c27e}.month-days .blocked,.calendar-legend .blocked{background:#f5dedd;color:#922c26;border-color:#daa09c}.calendar-legend{display:flex;gap:8px}.calendar-legend span{padding:4px 7px;border:1px solid;font-size:10px}.vacation-request-form{border-top:1px solid var(--line);padding-top:18px;margin-bottom:18px}
@media(max-width:1100px){.vacation-year-calendar{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media(max-width:650px){.vacation-year-calendar{grid-template-columns:1fr}}
.payslip-list{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.two-factor-box{border:1px solid var(--line);background:#f5f8fa;padding:16px}.two-factor-box code{display:block;padding:10px;background:#fff;border:1px solid var(--line);font-size:16px;letter-spacing:.12em;user-select:all;margin-bottom:12px}

/* White-label Branding 1.6 */
.btn-primary{background:var(--brand-accent,#1769aa)}.btn-primary:hover{filter:brightness(.88)}.submission-bar{border-left-color:var(--brand-accent,#1769aa)}.main-nav a.active{border-left-color:var(--brand-accent,#1769aa)}.login-hero,.employee-auth-brand,.employee-portal-sidebar{background:var(--brand-primary,#202a35)}.eyebrow,.login-kicker{color:var(--brand-accent,#1769aa)}
.installer-branding-grid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(300px,.85fr);gap:24px}.installer-brand-preview{min-height:245px;padding:28px;background:var(--preview-primary);color:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;border:1px solid #b8c2cb}.installer-brand-preview img{width:min(360px,100%);height:78px;object-fit:contain;object-position:left center;background:#fff;padding:8px;margin-bottom:20px}.installer-brand-preview strong{font-size:25px}.installer-brand-preview span{margin:4px 0 20px;color:#d7dfe5}.installer-brand-preview button{border:0;background:var(--preview-accent);color:#fff;padding:9px 14px;font-weight:700}.installer-shell>header{border-radius:3px}.installer-shell>header img{background:#fff;padding:6px}
@media(max-width:760px){.installer-branding-grid{grid-template-columns:1fr}}

/* Backup, echte Flaggen und Live-Branding-Vorschau */
.language-flag{display:block;width:24px;height:16px;object-fit:cover;border:1px solid rgba(0,0,0,.18);box-shadow:0 1px 2px rgba(0,0,0,.12)}.language-switcher a,.login-language a,.installer-language a{min-width:38px;justify-content:center}.installer-language{position:fixed;right:24px;top:20px;display:flex;gap:6px;z-index:10}.installer-language a{display:flex;padding:7px;background:#fff;border:1px solid var(--line);opacity:.72}.installer-language a.active{opacity:1;box-shadow:0 0 0 2px var(--orange)}
.branding-editor{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(420px,1.1fr);gap:24px}.brand-live-preview{min-height:310px;display:grid;grid-template-columns:145px 1fr;border:1px solid var(--line);background:#eef1f4;overflow:hidden}.preview-sidebar{padding:18px 13px;background:var(--preview-primary);color:#fff;display:flex;flex-direction:column;gap:8px}.preview-sidebar img{width:100%;height:48px;object-fit:contain;background:#fff;padding:4px}.preview-sidebar strong{font-size:12px}.preview-sidebar span{font-size:8px;opacity:.75;text-transform:uppercase}.preview-sidebar i{display:block;height:24px;background:rgba(255,255,255,.1);border-left:3px solid transparent}.preview-sidebar i:first-of-type{border-left-color:var(--preview-accent);background:rgba(255,255,255,.18)}.preview-main header{height:48px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 16px}.preview-main header span{width:54px;height:22px;background:var(--preview-primary)}.preview-content{padding:28px}.preview-content h3{margin:0 0 20px}.preview-button{display:inline-block;padding:8px 14px;background:var(--preview-accent);color:#fff;font-weight:700}.preview-lines{margin-top:24px;display:grid;gap:9px}.preview-lines i{height:10px;background:#d7dde2}.preview-lines i:nth-child(2){width:75%}.preview-lines i:nth-child(3){width:45%}.color-control{display:flex;align-items:center;gap:10px}.color-control input[type=color],.installer-form input[type=color]{width:74px!important;height:42px!important;padding:3px!important;border:1px solid #aeb8c1!important;background:#fff!important;cursor:pointer}.color-control input[type=color]::-webkit-color-swatch-wrapper{padding:0}.color-control input[type=color]::-webkit-color-swatch{border:0}.color-control output{font:600 12px Consolas,monospace}.backup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.backup-card{padding:20px;border:1px solid var(--line);background:var(--surface-2)}.backup-card h3{margin-top:0}.danger-zone{border-left:4px solid #b42318}.danger-zone .eyebrow{color:#b42318}.installer-form h2{margin:24px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}
@media(max-width:900px){.branding-editor{grid-template-columns:1fr}.brand-live-preview{min-height:270px}.backup-grid{grid-template-columns:1fr}}@media(max-width:560px){.brand-live-preview{grid-template-columns:105px 1fr}.installer-language{right:12px;top:10px}}

/* Lohnkostenrechner 2026 */
.payroll-legal{line-height:1.55}.payroll-form h3{margin:26px 0 12px;padding-top:18px;border-top:1px solid var(--line)}.payroll-grid{grid-template-columns:repeat(4,minmax(170px,1fr))}.check-row{display:flex;flex-direction:column;gap:10px;justify-content:flex-end}.check-row label{display:flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0;font-size:12px}.check-row input{width:auto}.payroll-sfn-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px}.sfn-card{border:1px solid var(--line);background:#f8fafb;padding:13px;display:grid;gap:9px}.sfn-card strong{min-height:35px;font-size:12px}.sfn-card label{font-size:10px}.sfn-card input{margin-top:4px}.payroll-results{display:grid;gap:16px}.payroll-kpis{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line)}.payroll-kpis div{padding:19px;border-right:1px solid var(--line);display:grid;gap:5px}.payroll-kpis div:last-child{border-right:0}.payroll-kpis span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.payroll-kpis strong{font-size:24px;color:#1f4056}.payroll-kpis.small strong{font-size:19px}.table tr.total th{border-top:2px solid var(--brand-accent);font-size:15px}.muted{color:var(--muted)}
@media(max-width:1150px){.payroll-grid{grid-template-columns:repeat(2,1fr)}.payroll-sfn-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.payroll-grid,.payroll-sfn-grid,.payroll-kpis{grid-template-columns:1fr}.payroll-kpis div{border-right:0;border-bottom:1px solid var(--line)}}

/* Modellabhängige Steuerung des Lohnkostenrechners */
.payroll-section.is-hidden,[data-visibility].is-hidden{display:none!important}.payroll-model-notice{margin:0 0 18px;padding:11px 13px;border-left:4px solid var(--brand-accent,#1769aa);background:#f3f7fa;color:#344b5c;font-size:12px;line-height:1.5}.payroll-inline-notice{margin:0}.payroll-warning{border-left:4px solid #b65b00;background:#fff7e8}.payroll-warning ul{margin:8px 0 0;padding-left:20px}.payroll-warning li+li{margin-top:5px}.field-help{display:block;margin-top:5px;color:var(--muted);font-size:10px;line-height:1.4}.input-locked{background:#eef2f4!important;color:#52616c;cursor:not-allowed}.payroll-result-meta{padding:11px 14px;background:#fff;border:1px solid var(--line);font-size:12px}.payroll-section>h3:first-child{margin-top:18px}.payroll-form section.payroll-section{margin:0}

/* Vertragsgenerator V3: druckfestes A4-Layout, korrekt skaliertes Logo und Signaturblöcke */
.contract-paper{width:min(100%,210mm);max-width:900px;overflow:visible}
.legal-contract{font-family:Arial,"Helvetica Neue",sans-serif;font-size:12.6px;line-height:1.52;color:#171b18;overflow-wrap:anywhere;hyphens:auto}
.contract-letterhead{display:table;width:100%;table-layout:fixed;padding:0 0 18px;border-bottom:2px solid var(--green);margin:0 0 28px;min-height:88px}
.contract-logo-box,.contract-document-meta{display:table-cell!important;vertical-align:middle;max-width:none;width:auto}
.contract-logo-box{width:55%;height:72px;text-align:left;overflow:hidden}
.contract-document-meta{width:45%;text-align:right;min-width:0}
.contract-logo{display:block!important;width:auto!important;height:auto!important;max-width:230px!important;max-height:68px!important;object-fit:contain!important;object-position:left center!important;margin:0!important}
.contract-company-name{display:block;font-size:12px;font-weight:700;color:#4f5b53;max-width:100%;overflow-wrap:anywhere}
.contract-document-meta h1,.legal-contract .contract-document-meta h1{font-size:28px;line-height:1.08;text-align:right;margin:7px 0 8px;letter-spacing:-.025em}
.contract-document-meta p{margin:0;color:#5f6862;font-size:11px;font-weight:700;letter-spacing:.03em}
.contract-intro{margin:0 0 24px}
.contract-section{margin:0 0 17px}
.contract-section h2{font-size:13.4px;line-height:1.3;margin:0 0 5px}
.contract-section p{margin:0 0 7px}
.contract-execution{margin-top:40px;padding-top:20px;border-top:1px solid #b8c0ba;break-inside:avoid-page;page-break-inside:avoid}
.contract-execution>h2{font-size:14px;margin:0 0 20px}
.contract-execution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px}
.contract-execution-card{display:flex;flex-direction:column;min-width:0;min-height:190px}
.contract-place-date{display:grid;grid-template-columns:minmax(0,1fr) 115px;gap:14px;margin-bottom:13px}
.contract-place-date>div{display:grid;gap:3px;min-width:0}
.contract-place-date span{font-size:9.5px;color:#68716b;text-transform:uppercase;letter-spacing:.06em}
.contract-place-date strong{min-height:21px;border-bottom:1px solid #333;padding:1px 2px 3px;font-size:11px;font-weight:500;overflow-wrap:anywhere}
.contract-signature-area{height:64px;display:flex;align-items:flex-end;justify-content:flex-start;overflow:hidden}
.contract-signature-area img{display:block;max-width:220px;max-height:62px;width:auto;height:auto;object-fit:contain;object-position:left bottom}
.contract-signature-rule{border-bottom:1px solid #222;height:1px}
.contract-signer-name{font-size:11px;min-height:18px;margin-top:5px}
.contract-signer-role{font-size:10px;color:#555}
.contract-execution-card small{font-size:8.8px;color:#707972;margin-top:4px}
.panel-intro{margin:-6px 0 18px;color:var(--muted);font-size:12px}
.generator-signature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.generator-signature-card{border:1px solid var(--line);border-radius:10px;background:#f8faf8;padding:18px;display:grid;gap:13px;min-width:0}
.generator-signature-card h3{margin:0;font-size:16px}
.signature-pad-compact{height:155px}
.signature-card-actions{display:flex;justify-content:flex-end;margin-top:-5px}
.signature-card-actions .btn{min-height:34px;padding:6px 10px;font-size:11px}
.compact-consent{padding:10px;margin:0}
.document-scroll .legal-contract{padding:30px;background:#fff}
.document-scroll .contract-execution{background:#fff;padding:20px 30px 30px;margin:0}
.contract-print-page{-webkit-print-color-adjust:exact;print-color-adjust:exact}

@media(max-width:820px){
  .generator-signature-grid{grid-template-columns:1fr}
  .contract-letterhead{display:block}
  .contract-logo-box,.contract-document-meta{display:block!important;width:100%;height:auto;text-align:left}
  .contract-document-meta{margin-top:12px}
  .contract-document-meta h1,.legal-contract .contract-document-meta h1{text-align:left}
  .contract-logo{max-width:200px!important;max-height:54px!important}
}
@media(max-width:560px){
  .contract-execution-grid{grid-template-columns:1fr;gap:28px}
  .contract-place-date{grid-template-columns:1fr 110px}
}
@media print{
  html,body{width:100%;min-height:0;background:#fff!important}
  body{margin:0!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .contract-paper{display:block;width:100%!important;max-width:none!important;box-sizing:border-box!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;overflow:visible!important}
  .legal-contract{font-size:9.7pt;line-height:1.43;color:#000}
  .contract-letterhead{display:table;width:100%;table-layout:fixed;min-height:22mm;margin-bottom:7mm;padding-bottom:4mm}
  .contract-logo-box,.contract-document-meta{display:table-cell!important;vertical-align:middle;max-width:none}
  .contract-logo-box{width:55%;height:18mm;text-align:left}
  .contract-document-meta{width:45%;text-align:right}
  .contract-logo{max-width:48mm!important;max-height:17mm!important}
  .contract-document-meta h1,.legal-contract .contract-document-meta h1{font-size:20pt}
  .contract-company-name{font-size:9pt}
  .contract-document-meta p{font-size:8pt}
  .contract-intro{margin-bottom:5mm}
  .contract-section{margin-bottom:3.7mm;break-inside:auto;page-break-inside:auto}
  .contract-section h2{font-size:10.2pt;break-after:avoid-page;page-break-after:avoid}
  .contract-section p{orphans:3;widows:3}
  .contract-execution{margin-top:9mm;padding-top:5mm;break-inside:avoid-page;page-break-inside:avoid}
  .contract-execution>h2{font-size:10.5pt;margin-bottom:5mm}
  .contract-execution-grid{gap:12mm}
  .contract-execution-card{min-height:42mm}
  .contract-signature-area{height:15mm}
  .contract-signature-area img{max-width:48mm;max-height:14mm}
  .contract-place-date span{font-size:7pt}
  .contract-place-date strong,.contract-signer-name{font-size:8.5pt}
  .contract-signer-role{font-size:7.5pt}
  .contract-execution-card small{font-size:6.5pt}
  @page{size:A4 portrait;margin:14mm 15mm 16mm}
}
.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:820px){.form-grid-2{grid-template-columns:1fr}}

.login-remember{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted);cursor:pointer;margin:-2px 0 3px}
.login-remember input{width:17px;height:17px;margin:0;accent-color:var(--accent)}
.client-management-actions{display:flex;align-items:center;gap:14px;margin:0 0 14px;padding:12px 14px;background:#eef4ef;border:1px solid var(--line);border-radius:8px}
.client-management-actions span{font-size:12px;color:var(--muted)}
.revenue-filter .form-row{align-items:end}
.revenue-filter .form-row>div{flex:1}
.revenue-metrics{grid-template-columns:repeat(5,minmax(0,1fr));margin:0 0 16px}
.metric-card.highlight{border-color:var(--accent);box-shadow:inset 0 3px 0 var(--accent)}
.revenue-details summary{cursor:pointer;font-weight:700;font-size:16px;padding:4px 0 12px}
.revenue-details h3{margin:18px 0 8px}
.compact-table th,.compact-table td{padding:8px 9px;font-size:11px}
.revenue-admin-grid select,.revenue-admin-grid input,.revenue-admin-grid textarea{min-width:0}
.calculation-hint{display:block;min-height:42px;padding:10px;border:1px solid var(--line);border-radius:6px;background:#f5f8f6;font-size:11px;line-height:1.45}
.calculation-hint.is-warning{border-color:#c77a00;background:#fff5df;color:#7b4700}
.minijob-contract-options[hidden]{display:none!important}
@media(max-width:1050px){.revenue-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.revenue-metrics{grid-template-columns:1fr 1fr}.client-management-actions{align-items:flex-start;flex-direction:column}}
.metric-grid{display:grid;gap:12px;margin-left:32px;margin-right:32px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:17px;display:grid;gap:4px}.metric-card strong{font-size:23px;line-height:1.1}.metric-card span{font-size:11px;color:var(--muted)}


/* Intelligente Länderflaggen-Auswahl im Sprachmanager */
.language-flag-emoji{display:inline-grid;place-items:center;width:24px;height:18px;border:0;box-shadow:none;font-size:21px;line-height:1;overflow:visible;background:transparent}.installed-language-name{display:inline-flex;align-items:center;gap:9px}.installed-language-name .language-flag{flex:0 0 auto}.flag-picker-field{position:relative}.flag-picker-control{display:grid;grid-template-columns:44px minmax(0,1fr) 38px;align-items:center;border:1px solid var(--line);background:#fff;min-height:42px}.flag-picker-control:focus-within{border-color:var(--orange);box-shadow:0 0 0 2px rgba(239,116,22,.12)}.flag-picker-control input{border:0!important;box-shadow:none!important;min-width:0}.flag-picker-preview{display:grid;place-items:center;height:100%;font-size:25px;line-height:1;border-right:1px solid var(--line);background:var(--surface-2)}.flag-picker-reset{height:100%;border:0;border-left:1px solid var(--line);background:#fff;color:var(--muted);font-size:20px;cursor:pointer}.flag-picker-reset:hover{background:var(--surface-2);color:var(--text)}.flag-suggestions{position:absolute;z-index:60;top:calc(100% - 22px);left:0;right:0;max-height:310px;overflow:auto;border:1px solid var(--line);background:#fff;box-shadow:0 14px 35px rgba(20,32,25,.17)}.flag-suggestion{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:8px;width:100%;padding:10px 12px;border:0;border-bottom:1px solid #edf0ed;background:#fff;text-align:left;cursor:pointer}.flag-suggestion:last-child{border-bottom:0}.flag-suggestion:hover,.flag-suggestion[aria-selected="true"]{background:#f2f6ef}.flag-suggestion-emoji{font-size:25px;line-height:1;text-align:center}.flag-suggestion-copy{display:grid;gap:2px;min-width:0}.flag-suggestion-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flag-suggestion-copy small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.flag-suggestion-empty{padding:14px;color:var(--muted)}.flag-selection-text{display:block;margin-top:7px;line-height:1.45}.language-list>div{gap:14px}.language-list>div>small{margin-left:auto}
@media(max-width:760px){.language-list>div{align-items:flex-start;flex-wrap:wrap}.language-list>div>small{width:100%;margin-left:33px}.flag-suggestions{position:fixed;left:12px;right:12px;top:auto;bottom:12px;max-height:50vh}}


.language-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.language-actions form{margin:0}
.language-actions .btn-small{padding:8px 12px;font-size:12px;line-height:1.2;white-space:nowrap}
@media (max-width:760px){.language-actions{justify-content:flex-start;width:100%;margin-top:8px}}

/* Zeiterfassungs-App Download */
.app-download-card{display:grid;grid-template-columns:92px minmax(0,1fr) minmax(220px,300px);align-items:center;gap:22px;background:linear-gradient(135deg,#fff 0%,#f3f8ff 100%);border-color:#cbd9ee;overflow:hidden}.app-download-icon{width:82px;height:82px;border-radius:20px;background:#fff;display:grid;place-items:center;box-shadow:0 8px 24px rgba(23,58,110,.14);border:1px solid #dbe5f3}.app-download-icon img{width:68px;height:68px;object-fit:contain}.app-download-copy h2{margin:3px 0 7px}.app-download-copy p{margin:0 0 7px;color:var(--muted);line-height:1.55}.app-download-copy small{color:var(--muted)}.app-download-actions{display:grid;gap:9px;justify-items:stretch}.app-download-actions .btn{text-align:center}.app-download-actions span{font-size:10px;line-height:1.4;color:var(--muted);text-align:center}@media(max-width:900px){.app-download-card{grid-template-columns:74px 1fr}.app-download-actions{grid-column:1/-1}}@media(max-width:560px){.app-download-card{grid-template-columns:1fr;text-align:center}.app-download-icon{margin:auto}.app-download-actions{grid-column:auto}}

.update-nav-badge{margin-left:auto;background:#f97316;color:#fff;border-radius:999px;padding:2px 7px;font-size:11px;font-style:normal}


/* PersonalKern 1.8: Mitarbeiterportal-Direktzugriff und integrierter Live-Support */
.nav-employee-login{margin:6px 8px!important;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06)!important}.nav-employee-login i{color:#7dd3fc!important}.nav-live-support{position:relative;margin:6px 8px!important;background:linear-gradient(135deg,#118c59,#20b978)!important;color:#fff!important;box-shadow:0 10px 24px rgba(17,140,89,.22)}.nav-live-support i,.nav-live-support span{color:#fff!important}.support-unread-badge,.topbar-support b,.support-fab b{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:#ff4d5e;color:#fff;font-size:11px;font-weight:800;font-style:normal}.topbar-quick{display:flex;gap:8px;margin-left:auto}.topbar-quick>a{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:7px 10px;border:1px solid #dfe7ec;border-radius:9px;background:#fff;color:#263744;text-decoration:none;font-size:12px;font-weight:750;white-space:nowrap}.topbar-quick>a:hover{border-color:var(--brand-accent);color:var(--brand-accent)}.topbar-quick .topbar-support{background:#ebfff5;border-color:#bcebd3;color:#087b4a}.support-fab{position:fixed;right:24px;bottom:24px;z-index:80;display:flex;align-items:center;gap:9px;min-height:50px;padding:9px 14px 9px 10px;border-radius:99px;background:linear-gradient(135deg,#0c8d57,#21bd78);color:#fff;text-decoration:none;box-shadow:0 16px 40px rgba(7,99,60,.34);font-weight:800}.support-fab>span{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:rgba(255,255,255,.17)}.support-fab em{font-style:normal}.support-fab b{position:absolute;right:-2px;top:-4px}.support-fab:hover{transform:translateY(-2px);filter:brightness(1.03)}
.employee-login-cta{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin-top:12px;padding:12px 16px;border:1px solid #d7e1e8;border-radius:8px;background:#f6f9fb;color:#20303d;text-decoration:none;font-weight:800}.employee-login-cta:hover{border-color:var(--brand-accent);color:var(--brand-accent);background:#fff}.employee-login-cta small{font-weight:500;color:#70808c}.dashboard-portal-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.dashboard-portal-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #dce6eb;border-radius:12px;background:#fff;text-decoration:none;color:#263744}.dashboard-portal-card>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#edf5ff;font-size:20px}.dashboard-portal-card.support>span{background:#e9fff3}.dashboard-portal-card div{min-width:0}.dashboard-portal-card strong,.dashboard-portal-card small{display:block}.dashboard-portal-card small{margin-top:3px;color:#70808c}.dashboard-portal-card b{margin-left:auto}.dashboard-portal-card:hover{border-color:var(--brand-accent);transform:translateY(-1px);box-shadow:0 10px 24px rgba(33,48,60,.08)}
.support-page{display:grid;grid-template-columns:minmax(250px,340px) minmax(0,1fr);gap:18px;min-height:640px}.support-info-panel,.support-chat-window{border:1px solid #dce5ea;border-radius:16px;background:#fff;box-shadow:0 10px 30px rgba(29,43,53,.06)}.support-info-panel{padding:26px}.support-info-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:20px;border-radius:18px;background:linear-gradient(135deg,#0c8d57,#26c27d);box-shadow:0 12px 25px rgba(12,141,87,.24);font-size:28px}.support-info-panel h2{margin:6px 0 10px;font-size:26px}.support-info-panel p{color:#667782;line-height:1.65}.support-info-panel ul{display:grid;gap:10px;margin:22px 0;padding:0;list-style:none}.support-info-panel li{position:relative;padding-left:22px;color:#536671;line-height:1.45}.support-info-panel li:before{content:'✓';position:absolute;left:0;color:#0c9a5d;font-weight:900}.support-system-card{display:grid;gap:4px;margin-top:22px;padding:15px;border:1px solid #dfe8ec;border-radius:12px;background:#f7fafb}.support-system-card span,.support-system-card small{color:#788995}.support-system-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.support-employee-link{display:flex;align-items:center;gap:11px;margin-top:12px;padding:13px;border:1px solid #d7e6ee;border-radius:12px;background:#f4faff;color:#223643;text-decoration:none}.support-employee-link>span{font-size:22px}.support-employee-link div{min-width:0}.support-employee-link strong,.support-employee-link small{display:block}.support-employee-link small{margin-top:2px;color:#71828e}.support-employee-link b{margin-left:auto}.support-chat-window{display:flex;min-width:0;flex-direction:column;overflow:hidden;background:linear-gradient(rgba(243,239,232,.92),rgba(243,239,232,.92)),radial-gradient(circle at 20px 20px,rgba(36,89,68,.08) 1px,transparent 1px);background-size:auto,26px 26px}.support-chat-header{display:flex;align-items:center;gap:12px;padding:16px 18px;background:#f7faf9;border-bottom:1px solid #dbe5e1}.support-agent-avatar{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#143d31;color:#fff;font-weight:900}.support-chat-header>div{min-width:0}.support-chat-header strong,.support-chat-header small{display:block}.support-chat-header small{margin-top:3px;color:#657a70}.support-chat-header small i{display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:50%;background:#26bd72;box-shadow:0 0 0 4px rgba(38,189,114,.12)}.support-new-button{margin-left:auto;padding:8px 11px;border:1px solid #cbdad3;border-radius:9px;background:#fff;color:#2d5144;font-weight:700;cursor:pointer}.support-chat-notice{padding:9px 16px;background:#fff7dc;border-bottom:1px solid #f0dfaa;color:#725d19;font-size:12px;text-align:center}.support-message-stream{display:flex;flex:1;min-height:430px;max-height:590px;overflow-y:auto;flex-direction:column;gap:9px;padding:20px}.support-loading{margin:auto;color:#728078}.support-message{max-width:min(76%,620px);padding:10px 12px 7px;border-radius:6px 14px 14px 14px;background:#fff;box-shadow:0 2px 5px rgba(40,52,47,.11);color:#24352f;line-height:1.48;white-space:pre-wrap;overflow-wrap:anywhere}.support-message.outgoing{align-self:flex-end;border-radius:14px 6px 14px 14px;background:#d9ffc7}.support-message footer{display:flex;justify-content:flex-end;gap:6px;margin-top:5px;color:#718079;font-size:10px}.support-message footer b{color:#1d8bd1}.support-composer{display:flex;align-items:flex-end;gap:10px;padding:12px;background:#f5f7f6;border-top:1px solid #dbe4e0}.support-composer textarea{min-height:44px;max-height:130px;resize:vertical;border:1px solid #d5dfdb;border-radius:22px;background:#fff;padding:11px 16px;font:inherit}.support-composer button{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border:0;border-radius:50%;background:#0c8d57;color:#fff;font-size:19px;cursor:pointer;box-shadow:0 8px 18px rgba(12,141,87,.26)}.support-chat-footer{display:flex;justify-content:space-between;align-items:center;min-height:36px;padding:6px 15px;background:#f5f7f6;color:#687970;font-size:12px}.support-chat-footer button{border:0;background:transparent;color:#6d7b75;text-decoration:underline;cursor:pointer}.support-chat-footer [data-support-status].error{color:#b42336;font-weight:700}.support-empty{margin:auto;max-width:430px;text-align:center;color:#6a7a72}.support-empty strong{display:block;margin-bottom:6px;color:#2c443a;font-size:18px}
.support-setting-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.support-setting-card>div{max-width:740px}.support-setting-card .status-pill{display:inline-flex;margin-bottom:8px;padding:5px 9px;border-radius:99px;background:#e9fff3;color:#087c49;font-weight:800;font-size:12px}
@media(max-width:1180px){.topbar-quick span{display:none}.topbar-quick>a{padding-inline:9px}.support-page{grid-template-columns:280px minmax(0,1fr)}}
@media(max-width:900px){.topbar-quick{display:none}.support-page{grid-template-columns:1fr}.support-info-panel{display:none}.support-message-stream{min-height:55vh}.support-fab em{display:none}.support-fab{right:14px;bottom:14px;padding:8px}.dashboard-portal-actions{grid-template-columns:1fr}}
@media(max-width:640px){.support-message{max-width:88%}.support-chat-header{padding:12px}.support-new-button{font-size:11px}.support-chat-notice{font-size:11px}.employee-login-cta{flex-wrap:wrap}.support-fab{bottom:72px}}


/* Cronjob-Verwaltung */
.cron-settings-card{border-top:3px solid var(--brand-accent);overflow:hidden}.cron-settings-form{margin-top:16px}.cron-copy-row{display:flex;align-items:center;gap:8px}.cron-copy-row input{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;font-size:12px}.cron-copy-row .btn{white-space:nowrap}.cron-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.cron-status-grid>div{padding:12px 14px;border:1px solid #dce3e7;border-radius:8px;background:#f8fafb}.cron-status-grid>div.full{grid-column:1/-1}.cron-status-grid span{display:block;color:#63717d;font-size:12px;margin-bottom:4px}.cron-status-grid strong{display:block;overflow-wrap:anywhere}@media(max-width:760px){.cron-copy-row{align-items:stretch;flex-wrap:wrap}.cron-copy-row input{flex-basis:100%}.cron-status-grid{grid-template-columns:1fr}.cron-status-grid>div.full{grid-column:auto}}

.integration-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.integration-card{border:1px solid var(--border,#d7dee6);background:#fff;padding:18px}.integration-card h3{margin:0 0 8px}.integration-card p{font-size:12px;line-height:1.5;color:#657386;word-break:break-word}.integration-card .actions{display:flex;gap:8px;flex-wrap:wrap}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:1050px){.grid-3{grid-template-columns:1fr}.integration-grid{grid-template-columns:1fr}}
