.sdm-wrap{max-width:1180px;margin:0 auto 40px;font-family:Arial,Helvetica,sans-serif;color:#1f2937}.sdm-header{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:22px 24px;margin:0 0 20px}.sdm-header h2{margin:0 0 8px;font-size:28px;line-height:1.2}.sdm-header p{margin:0;color:#4b5563}.sdm-header-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.sdm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 20px}.sdm-grid-small{grid-template-columns:repeat(2,minmax(0,220px))}.sdm-card{display:block;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:22px;text-decoration:none;color:#1f2937;box-shadow:0 2px 6px rgba(0,0,0,.04)}.sdm-card:hover{border-color:#2563eb;box-shadow:0 4px 14px rgba(0,0,0,.08)}.sdm-card strong{display:block;font-size:19px;margin-bottom:8px}.sdm-card span{display:block;color:#4b5563}.sdm-card-primary{background:#eff6ff;border-color:#bfdbfe}.sdm-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 22px;margin:0 0 20px}.sdm-panel h3{margin:0 0 16px;font-size:21px}.sdm-form label{display:block;font-weight:600;margin:0 0 14px}.sdm-form input[type=text],.sdm-form textarea,.sdm-form select{width:100%;box-sizing:border-box;margin-top:6px;border:1px solid #d1d5db;border-radius:8px;padding:10px 11px;font-size:15px;background:#fff}.sdm-form textarea{resize:vertical}.sdm-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 16px}.sdm-checkbox{display:flex!important;align-items:center;gap:8px;margin-top:30px!important}.sdm-checkbox input{margin:0}.sdm-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.sdm-button{display:inline-block;border:1px solid #d1d5db;background:#fff;color:#111827!important;border-radius:8px;padding:9px 13px;text-decoration:none!important;font-weight:600;cursor:pointer;line-height:1.25}.sdm-button:hover{background:#f9fafb}.sdm-button-primary{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important}.sdm-button-primary:hover{background:#1d4ed8!important}.sdm-alert{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;border-radius:10px;padding:12px 14px;margin:0 0 18px;font-weight:600}.sdm-note{background:#fffbeb;border:1px solid #fde68a;color:#92400e;border-radius:12px;padding:14px 16px;margin:0 0 20px}.sdm-warning{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.sdm-table-wrap{overflow-x:auto}.sdm-table{width:100%;border-collapse:collapse;font-size:14px}.sdm-table th,.sdm-table td{border-bottom:1px solid #e5e7eb;padding:10px 9px;text-align:left;vertical-align:top}.sdm-table th{background:#f9fafb;font-weight:700}.sdm-table tbody tr:hover{background:#fafafa}.sdm-muted{color:#6b7280;font-size:13px;margin-top:4px}.sdm-badge{display:inline-block;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:700;color:#374151}.sdm-green{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.sdm-danger{color:#b91c1c!important}.sdm-nowrap{white-space:nowrap}.sdm-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.sdm-flow div{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:13px;text-align:center;font-weight:700}.sdm-stat{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:18px}.sdm-stat strong{display:block;font-size:34px;line-height:1}.sdm-stat span{display:block;color:#4b5563;margin-top:6px}@media (max-width:900px){.sdm-header-row{display:block}.sdm-header-row .sdm-actions,.sdm-header-row>.sdm-button{margin-top:14px}.sdm-form-grid,.sdm-grid,.sdm-grid-small,.sdm-flow{grid-template-columns:1fr}.sdm-wrap{padding:0 10px}.sdm-table{font-size:13px}.sdm-table th,.sdm-table td{padding:8px 7px}.sdm-button{width:auto}}
.sdm-form input[type=date]{width:100%;box-sizing:border-box;margin-top:6px;border:1px solid #d1d5db;border-radius:8px;padding:10px 11px;font-size:15px;background:#fff}.sdm-button-small{font-size:12px;padding:6px 9px}.sdm-profit{color:#047857!important;font-weight:700}.sdm-badge-danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.sdm-calc-results{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.sdm-calc-results>div,.sdm-summary-grid>div{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:14px}.sdm-calc-results span,.sdm-summary-grid span{display:block;color:#6b7280;font-size:13px;margin-bottom:5px}.sdm-calc-results strong,.sdm-summary-grid strong{display:block;font-size:20px;line-height:1.2}.sdm-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.sdm-textbox{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:12px 14px;margin-bottom:12px}.sdm-internal-box{background:#fffbeb;border-color:#fde68a}.sdm-mt{margin-top:14px}.sdm-detail-panel h4{margin:18px 0 8px}.sdm-calc-result-panel{border-color:#bfdbfe;background:#eff6ff}@media (max-width:900px){.sdm-calc-results,.sdm-summary-grid{grid-template-columns:1fr}.sdm-calc-results strong,.sdm-summary-grid strong{font-size:18px}}
.sdm-calc-entry-table input[type=text],.sdm-calc-entry-table select{min-width:105px;padding:8px 9px;font-size:13px}.sdm-calc-entry-table .sdm-resource-select,.sdm-calc-entry-table .sdm-item-select{min-width:220px}.sdm-calc-entry-table .sdm-resource-desc,.sdm-calc-entry-table .sdm-item-desc{min-width:240px}.sdm-calc-entry-table td{vertical-align:middle}.sdm-calc-entry-table .sdm-persons,.sdm-calc-entry-table .sdm-hours,.sdm-calc-entry-table .sdm-days,.sdm-calc-entry-table .sdm-item-qty{min-width:70px}.sdm-calc-entry-table .sdm-internal-rate,.sdm-calc-entry-table .sdm-sales-rate,.sdm-calc-entry-table .sdm-item-internal,.sdm-calc-entry-table .sdm-item-sales{min-width:85px}@media (max-width:900px){.sdm-calc-entry-table input[type=text],.sdm-calc-entry-table select{font-size:12px;padding:7px 8px}.sdm-calc-entry-table .sdm-resource-select,.sdm-calc-entry-table .sdm-item-select{min-width:190px}.sdm-calc-entry-table .sdm-resource-desc,.sdm-calc-entry-table .sdm-item-desc{min-width:200px}}

.sdm-action-select {
    min-width: 150px;
    padding: 6px 8px;
    border: 1px solid #cfd8e3;
    border-radius: 6px;
    background: #fff;
    font-size: 13px;
}

/* SDM Dashboard 1.3.0 - direktes Dashboard-Layout ohne Zusatzplugin und ohne DOM-Manipulation */
.sdm-dashboard {
    max-width: 1180px;
    margin: 0 auto 48px;
    padding: 0 14px;
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
    color: #1b2733;
}

.sdm-dashboard-hero {
    margin: 0 0 22px;
    padding: 30px 34px 32px;
    border: 1px solid #d8e2ea;
    border-radius: 18px;
    background: linear-gradient(135deg, #f7f9fb 0%, #eef4f7 100%);
    box-shadow: 0 10px 28px rgba(20, 40, 60, .07);
}

.sdm-dashboard-kicker {
    margin: 0 0 7px;
    font-size: 17px;
    line-height: 1.35;
    font-weight: 700;
    color: #315f74;
    letter-spacing: .01em;
}

.sdm-dashboard-hero h1 {
    margin: 0 0 10px;
    font-size: 36px;
    line-height: 1.15;
    font-weight: 800;
    color: #14384a;
}

.sdm-dashboard-intro {
    margin: 0;
    max-width: 760px;
    font-size: 18px;
    line-height: 1.58;
    color: #4a5b66;
}

.sdm-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin: 0;
}

.sdm-dashboard-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 154px;
    padding: 24px 24px 22px;
    box-sizing: border-box;
    border: 1px solid #dce5eb;
    border-radius: 18px;
    background: #fff;
    color: #1f2f3a;
    text-decoration: none !important;
    box-shadow: 0 7px 18px rgba(20, 40, 60, .055);
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background-color .18s ease;
}

.sdm-dashboard-card:hover,
.sdm-dashboard-card:focus {
    border-color: #77a9c2;
    box-shadow: 0 12px 28px rgba(20, 40, 60, .12);
    transform: translateY(-2px);
    outline: none;
}

.sdm-dashboard-card:focus-visible {
    outline: 3px solid rgba(80, 145, 176, .28);
    outline-offset: 3px;
}

.sdm-dashboard-card-title {
    display: block;
    margin: 0 0 10px;
    font-size: 21px;
    line-height: 1.25;
    font-weight: 800;
    color: #17384a;
}

.sdm-dashboard-card-text {
    display: block;
    margin: 0 0 20px;
    font-size: 15.5px;
    line-height: 1.55;
    color: #53636e;
}

.sdm-dashboard-card-link {
    display: inline-flex;
    align-items: center;
    margin-top: auto;
    font-size: 13px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: .02em;
    color: #315f74;
    text-transform: uppercase;
}

.sdm-dashboard-card-link::after {
    content: "›";
    margin-left: 7px;
    font-size: 18px;
    line-height: 1;
}

.sdm-dashboard-card-primary {
    border-color: #2e6f8f;
    background: linear-gradient(135deg, #173d52 0%, #23617d 100%);
    box-shadow: 0 13px 30px rgba(20, 68, 92, .22);
}

.sdm-dashboard-card-primary:hover,
.sdm-dashboard-card-primary:focus {
    border-color: #16435a;
    box-shadow: 0 16px 34px rgba(20, 68, 92, .3);
}

.sdm-dashboard-card-primary .sdm-dashboard-card-title,
.sdm-dashboard-card-primary .sdm-dashboard-card-text,
.sdm-dashboard-card-primary .sdm-dashboard-card-link {
    color: #fff;
}

.sdm-dashboard-card-primary .sdm-dashboard-card-text {
    color: rgba(255, 255, 255, .86);
}

@media (max-width: 980px) {
    .sdm-dashboard-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sdm-dashboard-hero {
        padding: 26px 28px;
    }
}

@media (max-width: 640px) {
    .sdm-dashboard {
        padding: 0 10px;
    }

    .sdm-dashboard-hero {
        padding: 23px 21px 24px;
        border-radius: 16px;
    }

    .sdm-dashboard-hero h1 {
        font-size: 29px;
    }

    .sdm-dashboard-intro {
        font-size: 16px;
    }

    .sdm-dashboard-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .sdm-dashboard-card {
        min-height: 138px;
        padding: 22px 21px 20px;
        border-radius: 16px;
    }
}
