/* =================================================================ato
   E-E-A-T-R Protocol - Main Stylesheet
   =================================================================== */

/* Grundlegendes Layout & Typografie */
* { box-sizing: border-box; }
body { 
    font-family: Arial, sans-serif; 
    line-height: 1.6; 
    max-width: 800px; 
    margin: 0 auto; 
    padding: 20px; 
    color: #333; 
    overflow-x: hidden; 
}
h1, h2, h3 { 
    color: #333; 
    word-wrap: break-word; 
}

/* Tabellen & Responsive Wrapper */
.table-responsive {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 20px 0;
}
table { 
    border-collapse: collapse; 
    width: 100%; 
    min-width: 500px; 
    margin: 0; 
}
th, td { 
    border: 1px solid #ddd; 
    padding: 8px; 
    text-align: left; 
    word-break: normal; 
}
th { background-color: #f2f2f2; }

/* Bilder & Medien */
.header-image {
    width: 100%;
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto 30px auto;
    border-radius: 8px;
}
.note {
    font-style: italic;
    color: #555;
    margin-bottom: 20px;
}

/* Links & Buttons */
a { 
    color: #007bff; 
    text-decoration: none; 
    word-wrap: break-word; 
}
a:hover { text-decoration: underline; }

.btn-verify { 
    display: inline-block; 
    background: #007bff; 
    color: #fff; 
    padding: 10px 15px; 
    border-radius: 4px; 
    text-decoration: none; 
    font-weight: bold; 
    margin-top: 10px; 
}
.btn-verify:hover { background: #0056b3; }

/* Boxen & Cards */
.process-box { 
    background: #f0f7ff; 
    padding: 25px; 
    border-left: 5px solid #007bff; 
    margin-bottom: 30px; 
    border-radius: 4px; 
}
.node-card { 
    background: #f9f9f9; 
    padding: 20px; 
    margin-bottom: 20px; 
    border-radius: 8px; 
    border: 1px solid #eee; 
}
.node-card-placeholder { 
    background: #fafafa; 
    padding: 20px; 
    margin-bottom: 20px; 
    border-radius: 8px; 
    border: 1px dashed #ccc; 
    color: #666; 
}

/* Code-Container */
pre { 
    background: #282c34; 
    color: #abb2bf; 
    padding: 15px; 
    border-radius: 4px; 
    font-size: 0.85em; 
    overflow-x: auto; 
    border: 1px solid #181a1f; 
    max-width: 100%; 
}

/* Responsive Navigation Styles */
nav {
    background: #fff;
    padding: 15px 20px;
    border-bottom: 1px solid #eee;
    margin-bottom: 40px;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 10px 15px;
}
nav a {
    font-weight: bold;
    color: #0066cc;
    text-decoration: none;
    white-space: nowrap;
}
nav a:hover {
    text-decoration: underline;
}
nav span {
    color: #ccc;
}

/* Footer */
footer { 
    margin-top: 40px; 
    text-align: center; 
    color: #666; 
    font-size: 0.9em; 
}

/* Media Queries für Mobilgeräte */
@media (max-width: 600px) {
    body { padding: 12px; }
    table { font-size: 0.85em; min-width: 100%; }
    th, td { padding: 6px; }
    nav span {
        display: none;
    }
    nav {
        flex-direction: column;
        gap: 10px;
        padding: 12px 10px;
    }
    nav a {
        white-space: normal;
        display: block;
        width: 100%;
    }
    .video-responsive-container {
        padding: 0 !important;
    }
}