﻿.ffr-name-generator{
    max-width:900px;
    margin:30px auto;
    padding:28px;
    border:1px solid #e5e7eb;
    border-radius:18px;
    background:#fff;
    box-shadow:0 8px 30px rgba(0,0,0,.06);
}

.ffr-tool-heading{
    text-align:center;
    margin-bottom:24px;
}

.ffr-tool-heading h2{
    margin:0 0 8px;
}

.ffr-tool-heading p{
    margin:0;
    opacity:.75;
}

.ffr-tool-controls{
    display:grid;
    grid-template-columns:1fr 1fr auto;
    gap:14px;
    align-items:end;
    margin-bottom:24px;
}

.ffr-tool-field label{
    display:block;
    font-weight:600;
    margin-bottom:7px;
}

.ffr-tool-field select{
    width:100%;
    min-height:46px;
    padding:8px 12px;
    border:1px solid #d1d5db;
    border-radius:10px;
    background:#fff;
}

.ffr-tool-generate{
    min-height:46px;
    padding:0 22px;
    border:0;
    border-radius:10px;
    cursor:pointer;
    font-weight:700;
}

.ffr-name-results{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.ffr-name-result{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px 16px;
    border:1px solid #e5e7eb;
    border-radius:12px;
    background:#f9fafb;
}

.ffr-name-text{
    font-weight:700;
    word-break:break-word;
}

.ffr-copy-name{
    flex:0 0 auto;
    padding:8px 12px;
    border:1px solid #d1d5db;
    border-radius:8px;
    background:#fff;
    cursor:pointer;
}

.ffr-name-actions{
    display:flex;
    justify-content:center;
    gap:10px;
    margin-top:20px;
}

.ffr-name-actions button{
    padding:10px 18px;
    border:1px solid #d1d5db;
    border-radius:9px;
    cursor:pointer;
    background:#fff;
    font-weight:600;
}

.ffr-copy-status{
    text-align:center;
    min-height:22px;
    margin-top:12px;
    font-size:14px;
}

@media(max-width:700px){
    .ffr-name-generator{
        padding:18px;
        margin:20px 0;
    }

    .ffr-tool-controls{
        grid-template-columns:1fr;
    }

    .ffr-name-results{
        grid-template-columns:1fr;
    }
}

/* FF Rewards Sensitivity Generator */

.ffr-sensitivity-generator{
    max-width:900px;
    margin:30px auto;
    padding:28px;
    border:1px solid #e5e7eb;
    border-radius:18px;
    background:#fff;
    box-shadow:0 8px 30px rgba(0,0,0,.06);
}

.ffr-sensitivity-heading{
    text-align:center;
    margin-bottom:24px;
}

.ffr-sensitivity-heading h2{
    margin:0 0 8px;
}

.ffr-sensitivity-heading p{
    margin:0;
    opacity:.75;
}

.ffr-sensitivity-controls{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}

.ffr-sensitivity-field label{
    display:block;
    font-weight:600;
    margin-bottom:7px;
}

.ffr-sensitivity-field select{
    width:100%;
    min-height:46px;
    padding:8px 12px;
    border:1px solid #d1d5db;
    border-radius:10px;
    background:#fff;
}

.ffr-sensitivity-generate{
    display:block;
    width:100%;
    min-height:48px;
    margin-top:20px;
    border:0;
    border-radius:10px;
    cursor:pointer;
    font-weight:700;
}

.ffr-sensitivity-results{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:24px;
}

.ffr-sensitivity-value{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:16px;
    border:1px solid #e5e7eb;
    border-radius:12px;
    background:#f9fafb;
}

.ffr-sensitivity-value strong{
    font-size:17px;
}

.ffr-sensitivity-number{
    font-size:24px;
    font-weight:800;
}

.ffr-sensitivity-actions{
    grid-column:1/-1;
    display:flex;
    justify-content:center;
    gap:10px;
    margin-top:5px;
}

.ffr-sensitivity-actions button{
    padding:10px 18px;
    border:1px solid #d1d5db;
    border-radius:9px;
    background:#fff;
    cursor:pointer;
    font-weight:600;
}

@media(max-width:700px){

    .ffr-sensitivity-generator{
        padding:18px;
        margin:20px 0;
    }

    .ffr-sensitivity-controls{
        grid-template-columns:1fr;
    }

    .ffr-sensitivity-results{
        grid-template-columns:1fr;
    }
}

/* FF Rewards DPI Helper */

.ffr-dpi-helper{
    max-width:900px;
    margin:30px auto;
    padding:28px;
    border:1px solid #e5e7eb;
    border-radius:18px;
    background:#fff;
    box-shadow:0 8px 30px rgba(0,0,0,.06);
}

.ffr-dpi-heading{
    text-align:center;
    margin-bottom:24px;
}

.ffr-dpi-heading h2{
    margin:0 0 8px;
}

.ffr-dpi-heading p{
    margin:0;
    opacity:.75;
}

.ffr-dpi-controls{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}

.ffr-dpi-field label{
    display:block;
    font-weight:600;
    margin-bottom:7px;
}

.ffr-dpi-field select{
    width:100%;
    min-height:46px;
    padding:8px 12px;
    border:1px solid #d1d5db;
    border-radius:10px;
    background:#fff;
}

.ffr-dpi-generate{
    display:block;
    width:100%;
    min-height:48px;
    margin-top:20px;
    border:0;
    border-radius:10px;
    cursor:pointer;
    font-weight:700;
}

.ffr-dpi-results{
    margin-top:24px;
}

.ffr-dpi-result-card{
    text-align:center;
    padding:24px;
    border:1px solid #e5e7eb;
    border-radius:14px;
    background:#f9fafb;
}

.ffr-dpi-result-label{
    font-weight:600;
    margin-bottom:5px;
}

.ffr-dpi-number{
    font-size:42px;
    line-height:1.1;
    font-weight:800;
    margin:8px 0;
}

.ffr-dpi-range{
    font-weight:600;
    margin-bottom:12px;
}

.ffr-dpi-note{
    opacity:.75;
    margin:0 auto;
    max-width:650px;
}

.ffr-dpi-actions{
    display:flex;
    justify-content:center;
    gap:10px;
    margin-top:18px;
}

.ffr-dpi-actions button{
    padding:10px 18px;
    border:1px solid #d1d5db;
    border-radius:9px;
    background:#fff;
    cursor:pointer;
    font-weight:600;
}

@media(max-width:700px){

    .ffr-dpi-helper{
        padding:18px;
        margin:20px 0;
    }

    .ffr-dpi-controls{
        grid-template-columns:1fr;
    }

    .ffr-dpi-number{
        font-size:36px;
    }
}

/* FF Rewards Lag Fix Tool */

.ffr-lag-fix-tool{
    max-width:900px;
    margin:30px auto;
    padding:28px;
    border:1px solid #e5e7eb;
    border-radius:18px;
    background:#fff;
    box-shadow:0 8px 30px rgba(0,0,0,.06);
}

.ffr-lag-heading{
    text-align:center;
    margin-bottom:24px;
}

.ffr-lag-heading h2{
    margin:0 0 8px;
}

.ffr-lag-heading p{
    margin:0;
    opacity:.75;
}

.ffr-lag-controls{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}

.ffr-lag-field label{
    display:block;
    font-weight:600;
    margin-bottom:7px;
}

.ffr-lag-field select{
    width:100%;
    min-height:46px;
    padding:8px 12px;
    border:1px solid #d1d5db;
    border-radius:10px;
    background:#fff;
}

.ffr-lag-generate{
    display:block;
    width:100%;
    min-height:48px;
    margin-top:20px;
    border:0;
    border-radius:10px;
    cursor:pointer;
    font-weight:700;
}

.ffr-lag-results{
    display:grid;
    gap:12px;
    margin-top:24px;
}

.ffr-lag-result-card{
    padding:18px;
    border:1px solid #e5e7eb;
    border-radius:13px;
    background:#f9fafb;
}

.ffr-lag-result-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:8px;
}

.ffr-lag-result-title{
    font-weight:800;
}

.ffr-lag-priority{
    font-size:12px;
    font-weight:700;
    padding:5px 8px;
    border-radius:999px;
    background:#eee;
}

.ffr-lag-result-text{
    margin:0;
    opacity:.8;
}

.ffr-lag-actions{
    display:flex;
    justify-content:center;
    gap:10px;
    margin-top:6px;
}

.ffr-lag-actions button{
    padding:10px 18px;
    border:1px solid #d1d5db;
    border-radius:9px;
    background:#fff;
    cursor:pointer;
    font-weight:600;
}

@media(max-width:700px){

    .ffr-lag-fix-tool{
        padding:18px;
        margin:20px 0;
    }

    .ffr-lag-controls{
        grid-template-columns:1fr;
    }

    .ffr-lag-result-top{
        align-items:flex-start;
        flex-direction:column;
    }
}

/* FF Rewards FPS Tool */

.ffr-fps-tool{
    max-width:900px;
    margin:30px auto;
    padding:28px;
    border:1px solid #e5e7eb;
    border-radius:18px;
    background:#fff;
    box-shadow:0 8px 30px rgba(0,0,0,.06);
}

.ffr-fps-heading{
    text-align:center;
    margin-bottom:24px;
}

.ffr-fps-heading h2{
    margin:0 0 8px;
}

.ffr-fps-heading p{
    margin:0;
    opacity:.75;
}

.ffr-fps-controls{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}

.ffr-fps-field label{
    display:block;
    font-weight:600;
    margin-bottom:7px;
}

.ffr-fps-field select{
    width:100%;
    min-height:46px;
    padding:8px 12px;
    border:1px solid #d1d5db;
    border-radius:10px;
    background:#fff;
}

.ffr-fps-generate{
    display:block;
    width:100%;
    min-height:48px;
    margin-top:20px;
    border:0;
    border-radius:10px;
    cursor:pointer;
    font-weight:700;
}

.ffr-fps-results{
    display:grid;
    gap:12px;
    margin-top:24px;
}

.ffr-fps-result-card{
    padding:22px;
    border:1px solid #e5e7eb;
    border-radius:14px;
    background:#f9fafb;
    text-align:center;
}

.ffr-fps-number{
    font-size:42px;
    line-height:1;
    font-weight:800;
    margin:8px 0;
}

.ffr-fps-mode{
    font-weight:700;
    margin-bottom:8px;
}

.ffr-fps-range{
    opacity:.75;
}

.ffr-fps-actions{
    display:flex;
    justify-content:center;
    gap:10px;
    margin-top:6px;
}

.ffr-fps-actions button{
    padding:10px 18px;
    border:1px solid #d1d5db;
    border-radius:9px;
    background:#fff;
    cursor:pointer;
    font-weight:600;
}

@media(max-width:700px){

    .ffr-fps-tool{
        padding:18px;
        margin:20px 0;
    }

    .ffr-fps-controls{
        grid-template-columns:1fr;
    }
}
