:root {
    --notice-bg: #fdfdfd;
    --notice-text: #333333;
    --notice-primary: #ff9800; /* Amber/Orange */
    --notice-secondary: #ffffff;
    --notice-accent: #03a9f4; /* Light Blue */
    --notice-border: #eeeeee;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
body {
    background-color: var(--notice-bg); color: var(--notice-text);
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    line-height: 1.6; overflow-x: hidden;
}

.notice-container { max-width: 900px; margin: 0 auto; padding: 0 20px;}

/* Header */
.notice-header {
    display: flex; justify-content: space-between; align-items: center;
    padding: 20px 0; margin-bottom: 40px; border-bottom: 2px solid var(--notice-primary);
}
.notice-brand {
    font-size: 24px; font-weight: bold; color: var(--notice-primary);
    display: flex; align-items: center; gap: 10px;
}
.notice-brand::before {
    content: '📢'; font-size: 24px;
}
.notice-nav { display: flex; gap: 20px; }
.notice-nav a {
    font-size: 15px; font-weight: bold; color: #666; text-decoration: none;
    padding: 5px 10px; transition: all 0.2s;
}
.notice-nav a:hover, .notice-nav a.active { color: var(--notice-primary); background: #fff3e0; border-radius: 4px;}

/* Hero */
.notice-hero {
    text-align: center; margin-bottom: 60px; padding: 40px 20px;
    background: var(--notice-secondary); border: 1px solid var(--notice-border);
    border-top: 4px solid var(--notice-primary); box-shadow: 0 4px 10px rgba(0,0,0,0.02);
}
.notice-hero h1 {
    font-size: 32px; color: #222; margin-bottom: 15px;
}
.notice-hero p { font-size: 16px; color: #666; margin-bottom: 30px;}

.btn-notice {
    display: inline-block; padding: 12px 30px; font-size: 15px; font-weight: bold;
    color: #fff; background: var(--notice-primary); border-radius: 4px;
    text-decoration: none; transition: background 0.2s;
}
.btn-notice:hover { background: #f57c00; }

/* Notice List */
.notice-list { margin-bottom: 80px; }
.n-item {
    background: var(--notice-secondary); padding: 25px; margin-bottom: 20px;
    border: 1px solid var(--notice-border); border-left: 4px solid var(--notice-accent);
    box-shadow: 0 2px 5px rgba(0,0,0,0.02);
}
.n-item.urgent { border-left-color: #f44336; }
.n-meta { display: flex; justify-content: space-between; margin-bottom: 10px; font-size: 13px; color: #999;}
.n-tag { background: #e1f5fe; color: var(--notice-accent); padding: 2px 8px; border-radius: 10px; font-weight: bold;}
.n-item.urgent .n-tag { background: #ffebee; color: #f44336; }
.n-item h3 { font-size: 20px; color: #222; margin-bottom: 15px;}
.n-item p { font-size: 15px; color: #555;}

/* FAQ */
.notice-faq { margin-bottom: 80px; }
.notice-faq h2 { font-size: 24px; margin-bottom: 30px; color: #222; border-bottom: 2px solid var(--notice-border); padding-bottom: 10px;}
.n-faq-item { margin-bottom: 20px; }
.n-fq { font-size: 16px; font-weight: bold; color: #333; margin-bottom: 10px;}
.n-fa { font-size: 15px; color: #666; background: #f9f9f9; padding: 15px; border-radius: 4px;}

footer {
    text-align: center; padding: 20px 0; color: #999; font-size: 13px;
    border-top: 1px solid var(--notice-border);
}

@media (max-width: 768px) {
    .notice-header { flex-direction: column; gap: 15px; }
    .n-meta { flex-direction: column; gap: 5px; }
}