/* USCG Aviation Wiki Stylesheet */
* { margin: 0; padding: 0; box-sizing: border-box; }

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    line-height: 1.6;
    color: #333;
    background-color: #f5f5f5;
}

header {
    background: linear-gradient(135deg, #1a3a5c 0%, #2d5a87 100%);
    color: white;
    padding: 20px 0;
    border-bottom: 4px solid #c41e3a;
}

.header-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    text-align: center;
}

header h1 { font-size: 2.2em; margin-bottom: 5px; text-shadow: 2px 2px 4px rgba(0,0,0,0.3); }
.tagline { font-style: italic; font-size: 1.1em; color: #cce0ff; }

nav {
    background-color: #1a3a5c;
    padding: 0;
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
}

nav ul { max-width: 1200px; margin: 0 auto; padding: 0 20px; list-style: none; display: flex; flex-wrap: wrap; justify-content: center; }
nav li { margin: 0; }
nav a { display: block; color: white; text-decoration: none; padding: 15px 20px; transition: background-color 0.3s; }
nav a:hover { background-color: #2d5a87; }
nav a.active { background-color: #c41e3a; }

main {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 20px;
}

article {
    background: white;
    padding: 30px;
    border-radius: 5px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

article.full-width { grid-column: 1 / -1; }
article h2 { color: #1a3a5c; border-bottom: 2px solid #c41e3a; padding-bottom: 10px; margin-bottom: 20px; }
article h3 { color: #1a3a5c; margin: 25px 0 15px 0; padding-bottom: 5px; border-bottom: 1px solid #ddd; }
article h4 { color: #2d5a87; margin: 20px 0 10px 0; }
article p { margin-bottom: 15px; }
article ul, article ol { margin: 0 0 20px 30px; }
article li { margin-bottom: 8px; }

table { width: 100%; border-collapse: collapse; margin: 20px 0; background: white; }
thead { background-color: #1a3a5c; color: white; }
th, td { padding: 12px 15px; text-align: left; border: 1px solid #ddd; }
tbody tr:nth-child(even) { background-color: #f9f9f9; }
tbody tr:hover { background-color: #e8f4ff; }

.specs-table { margin: 10px 0; }
.specs-table td { padding: 8px 15px; }
.specs-table td:first-child { width: 40%; background-color: #f5f5f5; }

.info-box {
    background-color: #e8f0f7;
    border-left: 4px solid #2d5a87;
    padding: 20px;
    margin: 20px 0;
    border-radius: 0 5px 5px 0;
}

.info-box h3, .info-box h4 { color: #1a3a5c; margin: 0 0 15px 0; padding: 0; border: none; }
.info-box ul { margin-bottom: 0; }

.highlight-box {
    background-color: #fff5f5;
    border-left: 4px solid #c41e3a;
    padding: 15px 20px;
    margin: 20px 0;
    border-radius: 0 5px 5px 0;
}

.highlight-box h4, .highlight-box h5 { color: #a01830; margin: 0 0 10px 0; }
.highlight-box p { margin-bottom: 0; }

.class-entry {
    background-color: #fafafa;
    border: 1px solid #e0e0e0;
    padding: 20px;
    margin: 20px 0;
    border-radius: 5px;
}

.class-entry h4 { color: #1a3a5c; margin: 0 0 10px 0; }
.class-entry p:last-child { margin-bottom: 0; }

.mission-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; margin: 20px 0; }
.mission-card { background: #f8f9fa; border: 1px solid #e0e0e0; border-radius: 5px; padding: 20px; }
.mission-card h3 { color: #1a3a5c; margin: 0 0 10px 0; font-size: 1.1em; border: none; padding: 0; }
.mission-card p { margin: 0; font-size: 0.95em; }

.timeline-entry { border-left: 3px solid #2d5a87; padding-left: 20px; margin: 20px 0; }
.timeline-entry h4 { color: #1a3a5c; margin: 0 0 8px 0; }
.timeline-entry p { margin: 0; }

.references { background-color: #f0f0f0; padding: 20px; margin-top: 30px; border-radius: 5px; }
.references h3 { color: #1a3a5c; margin: 0 0 15px 0; padding: 0; border: none; }
.references ul { margin: 0; padding-left: 20px; }
.references li { margin-bottom: 10px; }

aside { display: flex; flex-direction: column; gap: 20px; }

.sidebar-box {
    background: white;
    padding: 20px;
    border-radius: 5px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.sidebar-box h3 { color: #1a3a5c; font-size: 1.1em; border-bottom: 2px solid #c41e3a; padding-bottom: 8px; margin-bottom: 15px; }
.sidebar-box h4 { color: #2d5a87; margin-bottom: 10px; }
.sidebar-box ul { list-style: none; margin: 0; padding: 0; }
.sidebar-box li { padding: 5px 0; border-bottom: 1px solid #eee; }
.sidebar-box li:last-child { border-bottom: none; }
.sidebar-box a { color: #2d5a87; text-decoration: none; }
.sidebar-box a:hover { text-decoration: underline; }

a { color: #2d5a87; }
a:hover { color: #1a3a5c; }

footer {
    background-color: #1a3a5c;
    color: white;
    text-align: center;
    padding: 20px;
    margin-top: 30px;
}

footer a { color: #c41e3a; }
footer a:hover { color: #ff6b6b; }

@media (max-width: 900px) {
    main { grid-template-columns: 1fr; }
    aside { order: -1; }
    nav ul { flex-direction: column; }
    nav a { text-align: center; border-bottom: 1px solid rgba(255,255,255,0.1); }
    header h1 { font-size: 1.6em; }
}

@media (max-width: 600px) {
    article { padding: 15px; }
    .sidebar-box { padding: 15px; }
    header h1 { font-size: 1.4em; }
    .mission-grid { grid-template-columns: 1fr; }
}
