* {
    -webkit-touch-callout:none;                
    -webkit-text-size-adjust:none;             
    -webkit-tap-highlight-color:rgba(0,0,0,0);                  
}

* {margin:0; padding:0; box-sizing: border-box;}
a * {border: 0;} 
input.text,
input[type=text],
input[type=email],
input[type=tel],
input[type=url],
input[type=search],
input[type=submit] {appearance: none; -moz-appearance: none; -webkit-appearance: none; border-radius: 0; -moz-border-radius: 0; -webkit-border-radius: 0;}

body {font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background: url("../images/fixedbgimage.jpg") no-repeat center center fixed; background-size: cover; padding: 20px; }
        
.container {display: flex; justify-content: center; align-items: flex-start; flex-wrap: wrap; gap: 20px; max-width: 1200px; margin: 0 auto; margin-top: 50px;}
.p24logo {width: 314px; height: 119px; margin: 50px auto 0px auto; display: block;}
.top-user {color: #fff; text-align:center; margin: 35px 0px 20px 0px; font-size: 1.20rem;}
.top-title {text-transform: uppercase; color: #fff; font-size: 2.20rem; width: 100%; text-align: center; margin: 20px 0px 30px 0px;}

.card {background: white; border: 1px solid #ddd; border-radius: 8px; width: 300px; text-align: center; padding: 30px 20px; box-shadow: 0 2px 5px rgba(0,0,0,0.05); transition: transform 0.2s; margin: 0px 10px 0px 10px;}
.card:hover {transform: translateY(-5px); box-shadow: 0 5px 15px rgba(0,0,0,0.1); }

.top-label {text-transform: uppercase; color: #888; font-size: 0.85rem; margin-bottom: 10px; }
.title {font-size: 1.5rem; color: #333; margin: 10px 0; font-weight: 300; }
        
.icon {max-height: 90px;margin: 15px auto; display: flex; align-items: center; justify-content: center; color: white; font-size: 30px;}
.desc {font-size: 0.9rem; color: #666; margin: 20px 0; line-height: 1.5; min-height: 60px; }
.price {font-size: 2.5rem; color: #333; font-weight: bold; margin-bottom: 25px;}
.price small {font-size: 1rem; font-weight: normal;}

.btn_blue {background: #007bff; color: white; border: none; padding: 12px 0; font-size: 1rem; cursor: pointer; border-radius: 4px; width: 100%; display: block; text-decoration: none; font-weight: 600; box-shadow: 10px 10px 10px -10px rgba(0, 0, 0, 0.5);}
.btn_blue:hover {background: #0056b3;}

.btn_green {background: #91a93d; color: white; border: none; padding: 12px 0; font-size: 1rem; cursor: pointer; border-radius: 4px; width: 100%; display: block; text-decoration: none; font-weight: 600; box-shadow: 10px 10px 10px -10px rgba(0, 0, 0, 0.5);}
.btn_green:hover {background: #6c7e2d;}
.btn_green:disabled {background-color: #cccccc !important;cursor: not-allowed; opacity: 0.6;}

.btn_grey {background: #8d8d8d; color: white; border: none; padding: 12px 0; font-size: 1rem; cursor: pointer; border-radius: 4px; width: 100%; display: block; text-decoration: none; font-weight: 600; box-shadow: 10px 10px 10px -10px rgba(0, 0, 0, 0.5);}
.btn_grey:hover {background: #717171;}  
        
.logos {margin-top: 20px;}
.logos img {height: 20px; vertical-align: middle; margin: 0 3px;}

/* Komunikaty */
.alert-container {max-width: 600px; margin: 20px auto; text-align: center;}
.msg-box {padding: 20px; border-radius: 8px; font-weight: bold; margin-bottom: 20px;}
.msg-success {background: #e8f5e9; color: #2e7d32; border: 1px solid #c8e6c9;}
.msg-error {background: #ffebee; color: #c62828; border: 1px solid #ffcdd2;}
.msg-pending {background: #fff3e0; color: #ef6c00; border: 1px solid #ffe0b2;}
.login-alert {color: #d9534f; font-weight: bold;}

.container_add {display: flex; justify-content: center; align-items: center; flex-direction: column; gap: 20px; max-width: 1200px; margin: 0px auto 50px auto; margin-top: 50px;}
.title_add {text-align: center; margin-bottom: 20px; font-size: 1.2rem; color: #fff; font-weight: bold;}
.form-wrapper {
    background: rgba(255, 255, 255, 0.95);
    padding: 40px;
    border-radius: 15px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.3);
    width: 100%;
    max-width: 500px;
}


.reg-input {
    width: 100%;
    padding: 15px 20px;       
    margin-bottom: 20px;
    border: 1px solid #ccc;
    background: #fff;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    font-size: 1.1rem;        
    color: #333;
    
    border-radius: 8px !important; 
    -webkit-border-radius: 8px !important;
    -moz-border-radius: 8px !important;
    
    transition: all 0.3s ease;
}

.reg-input:focus {
    border-color: #91a93d;
    box-shadow: 0 0 8px rgba(145, 169, 61, 0.3);
    outline: none;
}