/* Global Reset and Layout */
body { 
    font-family: sans-serif; 
    margin: 0;                /* Keeps navbar at the absolute top */
    background-color: #f8f9fa; 
    color: #333; 
}

/* Main Content Box */
.container { 
    max-width: 850px; 
    margin: 40px auto;        /* Creates the gap around the white box */
    background: #fff; 
    border: 1px solid #ccc; 
    padding: 40px; 
    border-radius: 8px; 
    box-shadow: 0 2px 10px rgba(0,0,0,0.1); 
}

/* --- Corrected Header Style with Blue Line --- */
.header-container { 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
    border-bottom: 2px solid #007bff; /* The missing blue line */
    margin-bottom: 25px;
    padding-bottom: 10px;
}

.header-container h2 { 
    margin: 0; 
    border: none; 
    padding: 0; 
    color: #343a40; 
    font-size: 24px;
}

.header-icon { 
    height: 35px; /* Scaled down to match your reference screenshot */
    width: auto; 
}

/* Alerts and Messages */
.alert { 
    padding: 15px; 
    margin-bottom: 20px; 
    border-radius: 4px; 
    border: 1px solid transparent; 
}
.success { background-color: #d4edda; color: #155724; border-color: #c3e6cb; }
.danger { background-color: #f8d7da; color: #721c24; border-color: #f5c6cb; }

/* Import Report Box */
.report-box { 
    background: #e9ecef; 
    padding: 20px; 
    border-radius: 4px; 
    margin-bottom: 30px; 
    border: 1px solid #dee2e6; 
    line-height: 1.6; 
}

/* Formatting Instructions */
.format-example { 
    background: #fdfdfe; 
    border-left: 4px solid #007bff; 
    padding: 15px; 
    margin-bottom: 30px; 
    font-size: 12px; 
    color: #555; 
}
.format-example code { 
    display: inline-block; 
    margin-top: 15px; 
    font-weight: bold; 
    color: #d63384; 
    font-size: 12.5px; 
}
.warning-text { color: #dc3545; font-weight: bold; }

/* Form Elements */
.input-group { margin-bottom: 20px; }
.input-group label { display: block; font-weight: bold; margin-bottom: 5px; color: #495057; }
.input-control { 
    width: 100%; 
    padding: 10px; 
    border: 1px solid #ccc; 
    border-radius: 4px; 
    box-sizing: border-box; 
    font-size: 16px;
}
.input-control:disabled { background-color: #e9ecef; color: #6c757d; }

/* Buttons */
.btn { 
    background-color: #007bff; 
    color: white; 
    border: none; 
    padding: 12px 20px; 
    border-radius: 5px; 
    cursor: pointer; 
    width: 100%; 
    font-weight: bold; 
    font-size: 16px; 
    margin-top: 10px; 
}
.btn:hover { background-color: #0056b3; }
.btn-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 45px;
    padding: 0 30px;
    font-size: 16px;
    font-weight: bold;
    border-radius: 4px;
    cursor: pointer;
    border: none;
    background-color: #007bff !important;
    color: #ffffff !important;
}

/* Collapsible Section & Password Extras */
.password-wrapper { position: relative; display: flex; align-items: center; width: 100%; }
.toggle-password { 
    position: absolute; 
    right: 12px; 
    top: 50%; 
    transform: translateY(-50%); 
    cursor: pointer; 
    display: flex; 
    color: #6c757d; 
}
.toggle-password svg { width: 22px !important; height: 22px !important; fill: none; stroke: currentColor; stroke-width: 2; }
.collapsible-toggle { display: flex; align-items: center; gap: 8px; cursor: pointer; color: #007bff; font-weight: bold; margin: 20px 0 10px 0; }
.collapsible-arrow { width: 0; height: 0; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 7px solid #666; transition: transform 0.2s; }
.collapsed .collapsible-arrow { transform: rotate(-90deg); }
.hidden { display: none !important; }

/* Loader */
#loader { display: none; text-align: center; margin-top: 15px; font-weight: bold; color: #007bff; }

/* TamperMonkey Script Key Box - Account Page */
.script-key-container { 
    display: flex; 
    align-items: center; 
    gap: 10px; 
    margin-top: 5px; 
}

.script-key-box { 
    flex-grow: 1; 
    background: #f1f3f5; 
    padding: 12px; 
    border-radius: 4px; 
    border: 1px dashed #adb5bd; 
    font-family: monospace; 
    font-size: 14px; 
    color: #495057; 
    word-break: break-all; /* Ensures long keys don't break the layout */
}

.copy-btn { 
    background: #6c757d; 
    color: white; 
    border: none; 
    padding: 10px; 
    border-radius: 4px; 
    cursor: pointer; 
    font-size: 18px; 
    transition: background 0.2s;
}

.copy-btn:hover { 
    background: #5a6268; 
}