:root {
      --navy-900: #0a1526;
        --navy-800: #0d1420;
          --navy-700: #14243d;
            --red-600: #d3232f;
              --red-700: #b81c27;
                --red-050: #fdecec;
                  --fog-50: #f7f8fa;
                    --fog-100: #e7e9ee;
                      --fog-200: #d7dbe2;
                        --ink-900: #0f172a;
                          --ink-700: #4b5563;
                            --ink-500: #6b7280;
                              --ok-600: #1a9c5e;
                                --radius-md: 10px;
                                  --radius-lg: 16px;
                                    --shadow-md: 0 10px 30px rgba(10, 21, 38, 0.10);
                                      --shadow-sm: 0 2px 8px rgba(10, 21, 38, 0.08);
                                        font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
                                        }

                                        * { box-sizing: border-box; }
                                        html, body { margin: 0; padding: 0; }
                                        body {
                                          background: var(--fog-50);
                                            color: var(--ink-900);
                                              line-height: 1.55;
                                                -webkit-font-smoothing: antialiased;
                                                }
                                                a { color: inherit; text-decoration: none; }
                                                img { max-width: 100%; display: block; }

                                                .container {
                                                  max-width: 1080px;
                                                    margin: 0 auto;
                                                      padding: 0 24px;
                                                      }

                                                      /* ---------- Header ---------- */
                                                      .nn-header {
                                                        background: var(--navy-900);
                                                          color: #fff;
                                                            padding: 18px 0;
                                                            }
                                                            .nn-header .container {
                                                              display: flex;
                                                                align-items: center;
                                                                  justify-content: space-between;
                                                                    gap: 16px;
                                                                      flex-wrap: wrap;
                                                                      }
                                                                      .nn-brand {
                                                                        display: flex;
                                                                          align-items: baseline;
                                                                            gap: 10px;
                                                                              font-weight: 800;
                                                                                font-size: 20px;
                                                                                  letter-spacing: 0.3px;
                                                                                  }
                                                                                  .nn-brand small {
                                                                                    font-weight: 600;
                                                                                      font-size: 12px;
                                                                                        letter-spacing: 1.5px;
                                                                                          color: var(--red-600);
                                                                                            background: rgba(211, 35, 47, 0.16);
                                                                                              padding: 3px 10px;
                                                                                                border-radius: 100px;
                                                                                                  text-transform: uppercase;
                                                                                                  }
                                                                                                  .nn-nav {
                                                                                                    display: flex;
                                                                                                      align-items: center;
                                                                                                        gap: 22px;
                                                                                                          font-size: 14px;
                                                                                                          }
                                                                                                          .nn-nav a { color: rgba(255,255,255,.78); transition: color .15s; }
                                                                                                          .nn-nav a:hover { color: #fff; }
                                                                                                          .nn-nav a.current { color: #fff; font-weight: 600; }

                                                                                                          /* ---------- Hero / page head ---------- */
                                                                                                          .nn-pagehead {
                                                                                                            padding: 46px 0 30px;
                                                                                                            }
                                                                                                            .nn-pagehead .eyebrow {
                                                                                                              color: var(--red-600);
                                                                                                                font-weight: 700;
                                                                                                                  font-size: 12px;
                                                                                                                    letter-spacing: 1.4px;
                                                                                                                      text-transform: uppercase;
                                                                                                                        display: flex;
                                                                                                                          align-items: center;
                                                                                                                            gap: 8px;
                                                                                                                            }
                                                                                                                            .nn-pagehead .eyebrow::before {
                                                                                                                              content: '';
                                                                                                                                width: 22px; height: 2px;
                                                                                                                                  background: var(--red-600);
                                                                                                                                    display: inline-block;
                                                                                                                                    }
                                                                                                                                    .nn-pagehead h1 {
                                                                                                                                      font-size: clamp(28px, 4vw, 40px);
                                                                                                                                        margin: 10px 0 8px;
                                                                                                                                          color: var(--navy-900);
                                                                                                                                          }
                                                                                                                                          .nn-pagehead p.lead {
                                                                                                                                            color: var(--ink-700);
                                                                                                                                              max-width: 60ch;
                                                                                                                                                font-size: 16px;
                                                                                                                                                }

                                                                                                                                                /* ---------- News grid ---------- */
                                                                                                                                                .nn-grid {
                                                                                                                                                  display: grid;
                                                                                                                                                    grid-template-columns: repeat(3, 1fr);
                                                                                                                                                      gap: 22px;
                                                                                                                                                        padding: 6px 0 60px;
                                                                                                                                                        }
                                                                                                                                                        @media (max-width: 860px) { .nn-grid { grid-template-columns: repeat(2, 1fr); } }
                                                                                                                                                        @media (max-width: 600px) { .nn-grid { grid-template-columns: 1fr; } }

                                                                                                                                                        .nn-card {
                                                                                                                                                          background: #fff;
                                                                                                                                                            border: 1px solid var(--fog-100);
                                                                                                                                                              border-radius: var(--radius-md);
                                                                                                                                                                overflow: hidden;
                                                                                                                                                                  display: flex;
                                                                                                                                                                    flex-direction: column;
                                                                                                                                                                      transition: transform .2s, box-shadow .2s;
                                                                                                                                                                      }
                                                                                                                                                                      .nn-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
                                                                                                                                                                      .nn-card .thumb {
                                                                                                                                                                        aspect-ratio: 16/10;
                                                                                                                                                                          background: var(--fog-100) center/cover no-repeat;
                                                                                                                                                                            position: relative;
                                                                                                                                                                            }
                                                                                                                                                                            .nn-card .thumb.no-image {
                                                                                                                                                                              display: flex; align-items: center; justify-content: center;
                                                                                                                                                                                color: var(--fog-200);
                                                                                                                                                                                }
                                                                                                                                                                                .nn-card .thumb.no-image svg { width: 42px; height: 42px; }
                                                                                                                                                                                .nn-card .body { padding: 18px 20px 22px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
                                                                                                                                                                                .nn-card .date {
                                                                                                                                                                                  font-size: 12px; font-weight: 700; letter-spacing: .4px;
                                                                                                                                                                                    text-transform: uppercase; color: var(--red-600);
                                                                                                                                                                                    }
                                                                                                                                                                                    .nn-card h3 { font-size: 17px; margin: 0; color: var(--navy-900); line-height: 1.35; }
                                                                                                                                                                                    .nn-card p.excerpt { color: var(--ink-700); font-size: 14px; margin: 0; flex: 1; }
                                                                                                                                                                                    .nn-card .read-more { font-size: 13px; font-weight: 700; color: var(--navy-900); display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; }
                                                                                                                                                                                    .nn-card .read-more svg { width: 14px; height: 14px; transition: transform .2s; }
                                                                                                                                                                                    .nn-card:hover .read-more svg { transform: translateX(3px); }

                                                                                                                                                                                    .nn-empty {
                                                                                                                                                                                      text-align: center;
                                                                                                                                                                                        padding: 70px 20px;
                                                                                                                                                                                          color: var(--ink-500);
                                                                                                                                                                                            border: 1px dashed var(--fog-200);
                                                                                                                                                                                              border-radius: var(--radius-md);
                                                                                                                                                                                                margin: 10px 0 60px;
                                                                                                                                                                                                }

                                                                                                                                                                                                /* ---------- Article detail ---------- */
                                                                                                                                                                                                .nn-article { padding: 10px 0 70px; max-width: 760px; margin: 0 auto; }
                                                                                                                                                                                                .nn-article .back-link { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 700; color: var(--ink-700); margin-bottom: 22px; }
                                                                                                                                                                                                .nn-article .cover { border-radius: var(--radius-lg); overflow: hidden; margin-bottom: 26px; box-shadow: var(--shadow-sm); }
                                                                                                                                                                                                .nn-article .date { font-size: 12px; font-weight: 700; letter-spacing: .4px; text-transform: uppercase; color: var(--red-600); }
                                                                                                                                                                                                .nn-article h1 { font-size: clamp(26px, 4vw, 36px); color: var(--navy-900); margin: 8px 0 24px; }
                                                                                                                                                                                                .nn-article .content p { color: var(--ink-700); font-size: 16.5px; margin: 0 0 18px; }

                                                                                                                                                                                                /* ---------- Footer ---------- */
                                                                                                                                                                                                .nn-footer {
                                                                                                                                                                                                  background: var(--navy-900);
                                                                                                                                                                                                    color: rgba(255,255,255,.55);
                                                                                                                                                                                                      font-size: 13px;
                                                                                                                                                                                                        padding: 26px 0;
                                                                                                                                                                                                          text-align: center;
                                                                                                                                                                                                          }

                                                                                                                                                                                                          /* ---------- Forms (login / admin) ---------- */
                                                                                                                                                                                                          .nn-auth-wrap {
                                                                                                                                                                                                            min-height: 78vh;
                                                                                                                                                                                                              display: flex;
                                                                                                                                                                                                                align-items: center;
                                                                                                                                                                                                                  justify-content: center;
                                                                                                                                                                                                                    padding: 40px 20px;
                                                                                                                                                                                                                    }
                                                                                                                                                                                                                    .nn-auth-card {
                                                                                                                                                                                                                      background: #fff;
                                                                                                                                                                                                                        border: 1px solid var(--fog-100);
                                                                                                                                                                                                                          border-radius: var(--radius-lg);
                                                                                                                                                                                                                            box-shadow: var(--shadow-md);
                                                                                                                                                                                                                              padding: 40px 36px;
                                                                                                                                                                                                                                width: 100%;
                                                                                                                                                                                                                                  max-width: 380px;
                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                  .nn-auth-card h1 { font-size: 22px; margin: 0 0 6px; color: var(--navy-900); }
                                                                                                                                                                                                                                  .nn-auth-card p.sub { color: var(--ink-500); font-size: 14px; margin: 0 0 26px; }

                                                                                                                                                                                                                                  .field { margin-bottom: 18px; }
                                                                                                                                                                                                                                  .field label { display: block; font-size: 13px; font-weight: 700; color: var(--navy-900); margin-bottom: 6px; }
                                                                                                                                                                                                                                  .field input[type=text],
                                                                                                                                                                                                                                  .field input[type=password],
                                                                                                                                                                                                                                  .field input[type=file],
                                                                                                                                                                                                                                  .field input[type=date],
                                                                                                                                                                                                                                  .field textarea {
                                                                                                                                                                                                                                    width: 100%;
                                                                                                                                                                                                                                      border: 1px solid var(--fog-200);
                                                                                                                                                                                                                                        border-radius: 8px;
                                                                                                                                                                                                                                          padding: 11px 13px;
                                                                                                                                                                                                                                            font-size: 14.5px;
                                                                                                                                                                                                                                              font-family: inherit;
                                                                                                                                                                                                                                                color: var(--ink-900);
                                                                                                                                                                                                                                                  background: #fff;
                                                                                                                                                                                                                                                    transition: border-color .15s, box-shadow .15s;
                                                                                                                                                                                                                                                    }
                                                                                                                                                                                                                                                    .field input:focus, .field textarea:focus {
                                                                                                                                                                                                                                                      outline: none;
                                                                                                                                                                                                                                                        border-color: var(--red-600);
                                                                                                                                                                                                                                                          box-shadow: 0 0 0 3px rgba(211,35,47,.12);
                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                          .field textarea { resize: vertical; min-height: 160px; line-height: 1.5; }
                                                                                                                                                                                                                                                          .field .hint { font-size: 12px; color: var(--ink-500); margin-top: 5px; }

                                                                                                                                                                                                                                                          .btn {
                                                                                                                                                                                                                                                            display: inline-flex; align-items: center; justify-content: center; gap: 8px;
                                                                                                                                                                                                                                                              border: none; border-radius: 8px; font-weight: 700; font-size: 14.5px;
                                                                                                                                                                                                                                                                padding: 12px 20px; cursor: pointer; transition: background .15s, transform .1s, box-shadow .15s;
                                                                                                                                                                                                                                                                  font-family: inherit;
                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                  .btn-primary { background: var(--red-600); color: #fff; width: 100%; }
                                                                                                                                                                                                                                                                  .btn-primary:hover { background: var(--red-700); }
                                                                                                                                                                                                                                                                  .btn-secondary { background: #fff; color: var(--navy-900); border: 1px solid var(--fog-200); }
                                                                                                                                                                                                                                                                  .btn-secondary:hover { background: var(--fog-50); }
                                                                                                                                                                                                                                                                  .btn-danger { background: #fff; color: var(--red-600); border: 1px solid #f3c9cb; }
                                                                                                                                                                                                                                                                  .btn-danger:hover { background: var(--red-050); }
                                                                                                                                                                                                                                                                  .btn-sm { padding: 7px 12px; font-size: 13px; }

                                                                                                                                                                                                                                                                  .alert {
                                                                                                                                                                                                                                                                    border-radius: 8px; padding: 12px 16px; font-size: 14px; margin-bottom: 20px;
                                                                                                                                                                                                                                                                      border: 1px solid transparent;
                                                                                                                                                                                                                                                                      }
                                                                                                                                                                                                                                                                      .alert-success { background: #eafaf1; color: #0d7a45; border-color: #bdeed2; }
                                                                                                                                                                                                                                                                      .alert-error { background: var(--red-050); color: var(--red-700); border-color: #f3c9cb; }

                                                                                                                                                                                                                                                                      /* ---------- Admin dashboard ---------- */
                                                                                                                                                                                                                                                                      .nn-admin-bar {
                                                                                                                                                                                                                                                                        background: var(--navy-900); color: #fff; padding: 14px 0;
                                                                                                                                                                                                                                                                        }
                                                                                                                                                                                                                                                                        .nn-admin-bar .container { display: flex; align-items: center; justify-content: space-between; }
                                                                                                                                                                                                                                                                        .nn-admin-bar .who { font-size: 13px; color: rgba(255,255,255,.7); }
                                                                                                                                                                                                                                                                        .nn-admin-bar .who strong { color: #fff; }

                                                                                                                                                                                                                                                                        .nn-admin-layout { padding: 34px 0 70px; display: grid; grid-template-columns: 380px 1fr; gap: 28px; align-items: start; }
                                                                                                                                                                                                                                                                        @media (max-width: 900px) { .nn-admin-layout { grid-template-columns: 1fr; } }

                                                                                                                                                                                                                                                                        .panel { background: #fff; border: 1px solid var(--fog-100); border-radius: var(--radius-md); padding: 24px; }
                                                                                                                                                                                                                                                                        .panel h2 { font-size: 16px; margin: 0 0 18px; color: var(--navy-900); }

                                                                                                                                                                                                                                                                        .nn-list { display: flex; flex-direction: column; gap: 12px; }
                                                                                                                                                                                                                                                                        .nn-list-item {
                                                                                                                                                                                                                                                                          display: flex; gap: 14px; align-items: center;
                                                                                                                                                                                                                                                                            border: 1px solid var(--fog-100); border-radius: 10px; padding: 12px;
                                                                                                                                                                                                                                                                            }
                                                                                                                                                                                                                                                                            .nn-list-item .thumb-sm {
                                                                                                                                                                                                                                                                              width: 64px; height: 64px; border-radius: 8px; background: var(--fog-100) center/cover no-repeat; flex: none;
                                                                                                                                                                                                                                                                              }
                                                                                                                                                                                                                                                                              .nn-list-item .meta { flex: 1; min-width: 0; }
                                                                                                                                                                                                                                                                              .nn-list-item .meta .date { font-size: 11px; color: var(--red-600); font-weight: 700; text-transform: uppercase; }
                                                                                                                                                                                                                                                                              .nn-list-item .meta h4 { font-size: 14.5px; margin: 2px 0 0; color: var(--navy-900); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
                                                                                                                                                                                                                                                                              .nn-list-item .actions { display: flex;
}