    * {
        box-sizing: border-box;
    }

    body {
        margin: 0;
        font-family: Arial, sans-serif;
        background-color: #eef2f5;
        color: #023a72;
        padding: 20px;
    }

    .page-container {
        max-width: 900px;
        margin: 0 auto;
    }

    .header {
        margin-bottom: 20px;
    }

    .header h1 {
        margin: 0;
        font-size: 28px;
        color: #032e58;
    }

    .subtitle {
        margin: 6px 0 0;
        color: #667085;
        font-size: 15px;
    }

    .task-container,
    .summary {
        background: white;
        padding: 20px;
        border-radius: 12px;
        margin-bottom: 20px;
        box-shadow: 0 3px 12px rgba(0, 0, 0, 0.08);
    }

    .task-container h2,
    .summary h2 {
        margin-top: 0;
        color: #243b53;
    }

    .task {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 15px;
        padding: 14px 0;
        border-bottom: 1px solid #e5e7eb;
    }

    .task:last-child {
        border-bottom: none;
    }

    .task span {
        font-size: 16px;
        line-height: 1.4;
    }

    .task button {
        min-width: 125px;
        padding: 10px 14px;
        font-size: 14px;
        font-weight: bold;
        border: none;
        border-radius: 8px;
        cursor: pointer;
        transition: transform .15s ease, opacity .15s ease;
    }

    .task button:hover {
        transform: translateY(-1px);
        opacity: .9;
    }

    .task button.completed {
        background-color: #2e8b57;
        color: white;
    }

    .task button.pending {
        background-color: #d9534f;
        color: white;
    }

    #summary {
        padding-top: 5px;
    }

    #summary div {
        padding: 7px 0;
        border-bottom: 1px solid #eef0f2;
        font-size: 15px;
    }

    #summary div:last-child {
        border-bottom: none;
    }

    .print-button {
        width: 100%;
        margin-top: 20px;
        padding: 14px 20px;
        font-size: 16px;
        font-weight: bold;
        background-color: #1f6feb;
        color: white;
        border: none;
        border-radius: 8px;
        cursor: pointer;
        transition: background-color .15s ease;
    }

    .print-button:hover {
        background-color: #185abc;
    }

    @media (max-width: 600px) {

        body {
            padding: 12px;
        }

        .header h1 {
            font-size: 23px;
        }

        .task-container,
        .summary {
            padding: 16px;
        }

        .task {
            align-items: flex-start;
            flex-direction: column;
        }

        .task button {
            width: 100%;
            min-height: 44px;
        }
    }

@media print {

    .header,
    .task-container,
    .print-button {
        display: none;
    }

    body {
        background: white;
        padding: 0;
        font-size: 14pt;
        line-height: 1.2;
    }

    .page-container {
        max-width: none;
    }

    .summary {
        display: block;
        box-shadow: none;
        border: none;
        padding: 0;
        margin: 0;
    }

    .summary h2 {
        margin: 0 0 5px;
        font-size: 12pt;
        color: navy;
    }

    #summary div {
        padding: 2px 0;
        border-bottom: none;
        font-size: 12pt;
        line-height: 1.15;
        color: navy;
    }
}