.application {
    .top-controls {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 12px;
        align-items: center;
        margin-bottom: 20px;
        input {
            padding: 10px 12px;
            border: 1px solid #ccc;
            border-radius: 10px;
            min-width: 220px;
            font-size: 14px;
        }
    }
    @media(max-width: 468px){
        .top-controls {
            .bill-row {
                display: flex;
                flex-wrap: wrap;
                justify-content: space-between;
                gap: 10px;
                button {
                    width: 46% !important;
                }
                input {
                    min-width: auto;
                    width: 100% !important;
                }
            }
        }
        .btn-calc {
            width: 100%;
        }
    }

    button {
        padding: 10px 16px;
        border: none;
        border-radius: 10px;
        cursor: pointer;
        font-size: 14px;
        transition: 0.2s;
    }

    button:hover {
        opacity: 0.9;
    }

    .btn-add {
        background: #2d89ef;
        color: #fff;
    }

    .btn-calc {
        background: #28a745;
        color: #fff;
    }

    .btn-reset {
        background: #dc3545;
        color: #fff;
    }

    .btn-add:hover {
        background: #00489d;
        color: #fff;
    }
    .btn-calc:hover{
        background: #007c1e;
        color: #fff;
    }
    .btn-reset:hover {
        background: #bd0012;
        color: #fff;
    }

    .remove-btn {
        background: #ff6b6b;
        color: white;
        padding: 8px 12px;
    }
    .remove-btn:hover {
        background: #ff1c1c;
        color: #fff;
    }

    .floor-list {
        display: grid;
        gap: 14px;
        margin-bottom: 24px;
    }

    .floor-item {
        border: 1px solid #dbe3ec;
        border-radius: 14px;
        padding: 16px;
        background: #f9fbfe;
    }

    .floor-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 12px;
        flex-wrap: wrap;
        gap: 10px;
    }

    .floor-header h3 {
        margin: 0;
        color: #333;
        font-size: 18px;
    }

    .floor-fields {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
        gap: 12px;
    }

    .floor-fields input {
        width: 100%;
        padding: 10px;
        border-radius: 10px;
        border: 1px solid #cfd8e3;
        font-size: 14px;
    }

    .results {
        margin-top: 24px;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 24px;
    }

    .card {
        background: #fdfdfd;
        border: 1px solid #e4eaf1;
        border-radius: 16px;
        padding: 18px;
    }

    .result-item {
        border-bottom: 1px solid #ececec;
        padding: 10px 0;
    }

    .result-item:last-child {
        border-bottom: none;
    }

    .highlight {
        color: #0f4c81;
        font-weight: bold;
    }

    canvas {
        max-width: 100%;
    }

    .note {
        background: #eef7ff;
        border-right: 4px solid #2d89ef;
        padding: 12px;
        border-radius: 10px;
        margin-bottom: 18px;
        font-size: 14px;
        color: #234;
    }

    @media (max-width: 900px) {
        .results {
            grid-template-columns: 1fr;
        }
    }
    #usageChart {
        display: flex;
        align-items: flex-end;
        height: 300px;
        gap: 20px;
        padding: 10px;
        .chart-bar {
            display: flex;
            flex-direction: column;
            justify-content: end;
            align-items: center;
            flex: 1 1 0%;
            height: 100%;
            .progress {
                width: 100%;
                height: 0;
                border-radius: 5px 5px 0px 0px;
                transition: height 2s linear;
            }
        }
    }
}
