.work-container {
    max-width: 1000px
}

.work-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 24px
}

.work-panel {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 24px;
    background: var(--surface);
    margin-block: 20px;
    min-width: 0
}

.work-panel h2 {
    margin-top: 0
}

.work-panel .field {
    margin-block: 18px
}

.work-panel label {
    display: block;
    margin-bottom: 7px
}

.work-panel .control {
    font-size: 16px;
    min-height: 50px
}

.work-panel textarea {
    min-height: 130px
}

.work-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-block: 20px
}

.work-actions .button {
    min-height: 48px;
    font-size: 14px
}

.work-check {
    display: flex !important;
    gap: 12px;
    align-items: center;
    padding: 12px;
    border-bottom: 1px solid var(--line);
    font-weight: 500 !important
}

.work-check input {
    width: 24px;
    height: 24px;
    flex: 0 0 24px
}

.work-steps {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px
}

.work-steps .card {
    margin: 0
}

.work-steps .card h2 {
    font-size: 1.3rem
}

.work-steps .card ol {
    padding-left: 20px
}

.work-steps .card a {
    display: inline-block;
    margin-block: 8px
}

.work-shortcuts {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-block: 24px
}

.work-shortcuts a {
    padding: 10px 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    color: var(--blue);
    text-decoration: none;
    background: var(--surface);
    font-weight: 600
}

.work-filters {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    align-items: end
}

.work-filters .field {
    flex: 1 1 180px
}

.work-counts {
    display: flex;
    gap: 12px;
    flex-wrap: wrap
}

.work-counts p {
    background: var(--surface-soft);
    padding: 12px 16px;
    border: 1px solid var(--line);
    border-radius: 10px;
    margin: 0
}

.work-status {
    min-height: 28px;
    overflow-wrap: anywhere
}

.work-record {
    border-left: 4px solid var(--blue)
}

.work-record[data-overdue=true] {
    border-left-color: #b44b2c
}

.work-record legend {
    font-weight: 700;
    font-size: 1.1rem;
    padding-inline: 8px
}

.work-errors {
    padding: 16px;
    border: 2px solid #b44b2c;
    border-radius: 8px
}

.work-privacy {
    font-size: .9rem;
    color: var(--muted)
}

.work-empty {
    padding: 30px;
    border: 1px dashed var(--line);
    border-radius: 12px
}

.library-card {
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 12px;
    margin-block: 16px;
    background: var(--surface)
}

.library-card h2 {
    font-size: 1.15rem;
    margin: 10px 0
}

.library-card p {
    margin-block: 10px
}

.library-card small {
    color: var(--muted)
}

.library-card .work-actions {
    margin-bottom: 0
}

.work-print {
    display: none
}

.work-guide details {
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 18px;
    margin-block: 14px;
    background: var(--surface)
}

.work-guide summary {
    font-weight: 700;
    cursor: pointer;
    min-height: 32px
}

.work-guide dt {
    font-weight: 700;
    margin-top: 18px
}

.work-guide dd {
    margin: 8px 0 20px
}

.flow-preparation-text {
    white-space: pre-wrap;
    overflow-wrap: anywhere
}

.work-actions .report-file {
    position: relative;
    cursor: pointer
}

.work-actions .report-file input {
    position: absolute;
    inset: 0;
    opacity: 0;
    width: 100%;
    cursor: pointer
}

.work-actions .report-file:focus-within {
    outline: 3px solid var(--blue-bright);
    outline-offset: 3px
}

@media(max-width:650px) {
    .work-steps {
        grid-template-columns: 1fr
    }

    .work-panel {
        padding: 16px
    }

    .work-actions>.button {
        flex: 1 1 180px
    }

    .work-filters {
        display: block
    }

    .work-filters .field {
        margin-block: 14px
    }
}

@media print {

    body[data-work-page] .site-header,
    body[data-work-page] .site-footer,
    body[data-work-page] main,
    body[data-work-page] .site-top,
    body[data-work-page] .site-page-actions {
        display: none !important
    }

    .work-print {
        display: block !important;
        color: #111;
        background: #fff;
        font: 11pt/1.5 Arial, sans-serif
    }

    .work-print article {
        margin-block: 20px;
        border-bottom: 1px solid #888;
        padding-bottom: 16px;
        break-inside: avoid
    }

    .work-print p {
        white-space: pre-wrap;
        overflow-wrap: anywhere
    }

    .work-print h2 {
        font-size: 14pt
    }

    .work-print table {
        width: 100%;
        border-collapse: collapse
    }

    .work-print th,
    .work-print td {
        border: 1px solid #aaa;
        padding: 8px;
        text-align: left
    }

    .work-print th {
        width: 32%
    }

    @page {
        size: A4;
        margin: 16mm
    }
}
