:root {
    --gazette-paper: #f5f1e8;
    --gazette-ink: #15191c;
    --gazette-muted: #62676a;
    --gazette-rule: #c7bfae;
    --gazette-red: #9f2d2d;
    --gazette-gold: #b28a42;
}

.gazette-game-shell {
    min-height: 100vh;
    padding: 22px clamp(12px, 2.5vw, 42px) 52px;
    background:
        radial-gradient(circle at 16% 0%, rgba(47, 93, 125, .22), transparent 30%),
        linear-gradient(150deg, #09111a, #121b25 55%, #080d13);
}

.gazette-command-bar,
.gazette-owner-tools,
.gazette-processing {
    width: min(1120px, 100%);
    margin-inline: auto;
}

.gazette-command-bar {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    padding: 18px 0 22px;
    color: #e9f3fa;
}

.gazette-reader-header {
    align-items: center;
    margin-bottom: 18px;
    padding: clamp(18px, 2.8vw, 30px);
    overflow: hidden;
    border: 1px solid rgba(195, 154, 82, .34);
    border-radius: 15px;
    background:
        radial-gradient(circle at 7% 0%, rgba(190, 139, 63, .21), transparent 35%),
        radial-gradient(circle at 90% 120%, rgba(48, 103, 137, .24), transparent 42%),
        linear-gradient(135deg, rgba(20, 34, 45, .98), rgba(7, 14, 21, .98));
    box-shadow: 0 18px 48px rgba(0, 0, 0, .3);
}
.gazette-reader-title-block {
    display: flex;
    align-items: center;
    min-width: 0;
    max-width: 720px;
    gap: clamp(13px, 2vw, 20px);
}
.gazette-reader-title-icon {
    display: grid;
    width: clamp(52px, 6vw, 68px);
    height: clamp(52px, 6vw, 68px);
    color: #f0c779;
    border: 1px solid rgba(229, 184, 102, .38);
    border-radius: 12px;
    background: linear-gradient(145deg, rgba(126, 85, 31, .58), rgba(40, 30, 20, .74));
    box-shadow: inset 0 0 22px rgba(236, 183, 83, .08), 0 9px 24px rgba(0, 0, 0, .25);
    flex: 0 0 auto;
    font-size: clamp(1.45rem, 3vw, 2rem);
    place-items: center;
}
.gazette-reader-heading {
    min-width: 0;
    padding: 9px 13px;
    border-left: 2px solid rgba(215, 170, 91, .54);
    border-radius: 0 9px 9px 0;
    background: linear-gradient(90deg, rgba(2, 8, 13, .56), rgba(2, 8, 13, .08));
}
#main-content .gazette-reader-header h1::after {
    content: none;
    display: none;
    animation: none;
}
#main-content .gazette-reader-header p { margin: 0; color: #9db1c0; }
.gazette-reader-header .gazette-reader-back {
    width: auto;
    max-width: 100%;
    flex: 0 0 auto;
    white-space: nowrap;
}

.gazette-command-bar h1 {
    margin: 2px 0 4px;
    font-size: clamp(1.8rem, 4vw, 3.2rem);
    letter-spacing: -.04em;
}

.gazette-command-bar p { margin: 0; color: #9db1c0; }
.gazette-command-kicker { color: #d9ae5b; font-size: .75rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.gazette-command-actions { display: flex; align-items: center; justify-content: flex-end; gap: 14px; flex-wrap: wrap; }
.gazette-fact-counter { color: #9eb2c0; text-align: right; }
.gazette-fact-counter strong { display: block; color: #fff; font-size: 1.45rem; line-height: 1; }
.btn-gazette-generate { display: flex; align-items: center; justify-content: center; gap: 10px; border: 1px solid #e4bb70; background: linear-gradient(135deg, #c59441, #7d5420); color: #fff; font-weight: 800; box-shadow: 0 8px 24px rgba(0, 0, 0, .25); }
.btn-gazette-generate:hover { color: #fff; filter: brightness(1.12); }
.gazette-request-button-copy { display: grid; gap: 2px; line-height: 1.15; text-align: left; }
.gazette-request-button-copy small { color: inherit; font-size: .64rem; font-weight: 700; letter-spacing: .025em; opacity: .88; }

.gazette-owner-tools {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-block: 18px;
    padding: 12px 16px;
    border: 1px solid rgba(150, 182, 202, .25);
    border-radius: 10px;
    background: rgba(11, 20, 29, .82);
    color: #dbe9f1;
}

.gazette-visibility-panel {
    min-height: 86px;
    margin-block: 18px 22px;
    padding: 15px 18px;
    border-color: rgba(151, 184, 204, .28);
    background:
        linear-gradient(105deg, rgba(23, 40, 52, .94), rgba(7, 15, 22, .94)),
        rgba(11, 20, 29, .9);
    box-shadow: 0 12px 30px rgba(0, 0, 0, .22);
}
.gazette-visibility-state { display: flex; align-items: center; min-width: 0; gap: 13px; }
.gazette-visibility-icon { display: grid; width: 46px; height: 46px; border: 1px solid rgba(167, 188, 201, .24); border-radius: 50%; color: #b8c9d3; background: rgba(33, 50, 61, .72); flex: 0 0 auto; font-size: 1.15rem; place-items: center; }
.gazette-visibility-icon.is-public { color: #82dca4; border-color: rgba(87, 188, 126, .4); background: rgba(25, 81, 48, .48); }
.gazette-visibility-icon.is-private { color: #cad5db; border-color: rgba(158, 178, 190, .3); background: rgba(44, 57, 66, .68); }
.gazette-visibility-copy { min-width: 0; }
.gazette-visibility-label { display: block; margin-bottom: 6px; color: #91a9b7; font-size: .65rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.gazette-visibility-summary { display: flex; align-items: center; min-width: 0; gap: 10px; flex-wrap: wrap; }
.gazette-visibility-panel .badge { display: inline-flex; align-items: center; min-height: 28px; margin: 0; line-height: 1; transform: none; }
#main-content .gazette-visibility-description { margin: 0; color: #b2c1c9; font-size: .8rem; line-height: 1.35; }
.gazette-public-link { display: block; max-width: min(62vw, 680px); margin-top: 7px; color: #79c7ef; font-size: .78rem; overflow-wrap: anywhere; }
.gazette-owner-tools .gazette-visibility-action { align-self: center; width: auto; max-width: 100%; min-width: 0; flex: 0 0 auto; white-space: nowrap; }
.gazette-visibility-modal .modal-body > p { margin-bottom: 16px; }
.gazette-community-notice { display: flex; align-items: flex-start; gap: 12px; padding: 13px 14px; color: #c7d7e0; border: 1px solid rgba(90, 166, 207, .3); border-radius: 9px; background: rgba(27, 72, 96, .32); }
.gazette-community-notice > i { margin-top: 1px; color: #79c7ef; font-size: 1.15rem; }
.gazette-community-notice strong,
.gazette-community-notice span { display: block; }
.gazette-community-notice strong { margin-bottom: 3px; color: #edf7fc; font-size: .84rem; }
.gazette-community-notice span { color: #adc4d0; font-size: .78rem; line-height: 1.45; }
.gazette-publication-acknowledgement { margin-top: 14px; padding: 14px; color: #dce8ee; border: 1px solid rgba(222, 175, 72, .38); border-radius: 9px; background: rgba(101, 71, 17, .22); }
.gazette-publication-acknowledgement > strong { display: block; margin-bottom: 10px; color: #f3d58a; font-size: .86rem; }
.gazette-publication-acknowledgement .form-check { margin: 0; padding-left: 1.75rem; }
.gazette-publication-acknowledgement .form-check-input { margin-top: .2rem; border-color: rgba(243, 213, 138, .58); background-color: rgba(4, 10, 17, .72); }
.gazette-publication-acknowledgement .form-check-input:checked { border-color: #d9ad4c; background-color: #b88720; }
.gazette-publication-acknowledgement .form-check-label { color: #cbd8df; font-size: .8rem; line-height: 1.5; }
.gazette-visibility-modal .gazette-visibility-modal-actions { display: flex; align-items: stretch; flex-direction: column; }
.gazette-visibility-modal-actions > .btn { width: 100%; margin: 0; }
.gazette-archive-metadata { width: min(1120px, 100%); margin: 18px auto -10px; color: #aebbc3; font-family: Arial, sans-serif; font-size: .76rem; letter-spacing: .06em; text-align: right; text-transform: uppercase; }
.gazette-processing { display: flex; align-items: center; gap: 16px; margin-block: 24px; padding: 22px; border: 1px solid rgba(99, 176, 219, .28); border-radius: 12px; color: #e8f5fc; background: rgba(20, 54, 73, .6); }
.gazette-processing p { margin: 3px 0 0; color: #a8c2d0; }
.gazette-processing--failed { border-color: rgba(211, 95, 95, .45); background: rgba(77, 24, 28, .72); }
.gazette-processing--failed > i { color: #ffb0b0; font-size: 1.45rem; }
.gazette-processing--failed p { color: #e7b7ba; }

.colony-gazette-paper {
    width: min(1120px, 100%);
    margin: 24px auto;
    color: var(--gazette-ink);
    background:
        linear-gradient(rgba(255,255,255,.2), rgba(255,255,255,.2)),
        repeating-linear-gradient(0deg, rgba(65, 48, 25, .018) 0, rgba(65, 48, 25, .018) 1px, transparent 1px, transparent 4px),
        var(--gazette-paper);
    border: 1px solid #ded5c5;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .5);
    font-family: Georgia, 'Times New Roman', serif;
}

/* The legacy game theme forces every #main-content paragraph to white. */
#main-content .colony-gazette-paper,
#main-content .colony-gazette-paper p {
    color: var(--gazette-ink);
}

#main-content .colony-gazette-paper .gazette-kicker {
    color: var(--gazette-red);
}

#main-content .colony-gazette-paper h1::after,
#main-content .colony-gazette-paper h2::after {
    content: none;
    display: none;
}

.gazette-masthead { padding: clamp(28px, 5vw, 66px) clamp(22px, 7vw, 90px) 26px; text-align: center; }
.gazette-brand-row { padding-block: 10px; border-top: 4px double var(--gazette-ink); border-bottom: 1px solid var(--gazette-ink); font-family: Arial, sans-serif; letter-spacing: .14em; text-align: center; text-transform: uppercase; }
.gazette-brand-row strong { font-size: clamp(.95rem, 2vw, 1.25rem); }
.gazette-edition-dateline { margin: 15px 0 0; color: var(--gazette-ink); font-family: Arial, sans-serif; font-size: clamp(.72rem, 1.5vw, .9rem); font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.gazette-kicker { margin: 11px 0 28px; color: var(--gazette-red); font-family: Arial, sans-serif; font-size: .78rem; font-weight: 900; letter-spacing: .19em; text-transform: uppercase; }
.gazette-masthead h1 { max-width: 950px; margin: 0 auto; color: #111; font-size: clamp(2rem, 4vw, 3.75rem); font-weight: 800; line-height: 1.04; letter-spacing: -.035em; text-wrap: balance; }
.gazette-masthead h2 { max-width: 760px; margin: 22px auto 0; color: #43484a; font-size: clamp(1.1rem, 2.2vw, 1.75rem); font-weight: 400; line-height: 1.25; text-wrap: balance; }
.gazette-standfirst { max-width: 760px; margin: 28px auto; font-size: clamp(1.08rem, 2vw, 1.35rem); line-height: 1.55; }
.gazette-byline { display: flex; align-items: center; justify-content: center; gap: 16px; padding-top: 16px; border-top: 1px solid var(--gazette-rule); color: var(--gazette-muted); font-family: Arial, sans-serif; font-size: .76rem; letter-spacing: .05em; text-transform: uppercase; }
.gazette-byline span { color: var(--gazette-ink); font-weight: 800; }

.gazette-figure { margin: 0; }
.gazette-figure img { display: block; width: 100%; height: auto; max-height: 720px; object-fit: cover; background: #d9d1c3; }
.gazette-figure figcaption { padding: 9px clamp(18px, 4vw, 46px) 16px; color: #5f605d; border-bottom: 1px solid var(--gazette-rule); font-family: Arial, sans-serif; font-size: .78rem; line-height: 1.35; }
.gazette-story-body { padding: 28px clamp(22px, 7vw, 90px) 54px; }
.gazette-story-section { max-width: 760px; margin: 0 auto 38px; }
.gazette-story-section h3 { margin: 0 0 14px; padding-top: 13px; border-top: 3px solid var(--gazette-ink); font-size: clamp(1.45rem, 3vw, 2.2rem); line-height: 1.05; letter-spacing: -.025em; }
.gazette-story-section p { margin: 0 0 1.15em; font-size: clamp(1rem, 1.6vw, 1.16rem); line-height: 1.72; }
.gazette-story-section p:first-of-type::first-letter { float: left; margin: .06em .09em 0 0; color: var(--gazette-red); font-size: 4.3em; font-weight: 700; line-height: .72; }
.gazette-story-section blockquote { max-width: 660px; margin: 34px auto; padding: 20px 0; border-top: 1px solid var(--gazette-gold); border-bottom: 1px solid var(--gazette-gold); color: #312c25; font-size: clamp(1.35rem, 3vw, 2.05rem); font-style: italic; line-height: 1.25; text-align: center; }
.gazette-story-body > .gazette-figure { max-width: 900px; margin: 10px auto 38px; }
.gazette-story-body > .gazette-figure--portrait { max-width: 520px; }
.gazette-paper-footer { display: flex; justify-content: space-between; gap: 20px; padding: 16px clamp(22px, 7vw, 90px); color: #6d685e; border-top: 4px double var(--gazette-ink); font-family: Arial, sans-serif; font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; }

.gazette-empty-state { width: min(820px, 100%); margin: 60px auto; padding: 60px 24px; border: 1px dashed rgba(155, 190, 211, .34); border-radius: 14px; color: #dbe8ef; text-align: center; background: rgba(10, 19, 27, .7); }
.gazette-empty-state i { display: block; margin-bottom: 16px; color: #c89b50; font-size: 4rem; }
.gazette-empty-state p { color: #97adba; }
.gazette-edition-archive { width: min(1120px, 100%); margin: 38px auto 0; color: #dce8ef; }
.gazette-edition-archive h2 { font-size: 1rem; letter-spacing: .12em; text-transform: uppercase; }
.gazette-edition-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px; }
.gazette-edition-link { display: grid; grid-template-columns: auto 1fr; gap: 3px 10px; padding: 13px; color: #d9e5ec; border: 1px solid rgba(121, 157, 179, .24); border-radius: 8px; background: rgba(11, 21, 30, .76); text-decoration: none; }
.gazette-edition-link:hover, .gazette-edition-link.is-active { color: #fff; border-color: #b58b45; background: rgba(58, 44, 24, .7); }
.gazette-edition-link strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gazette-edition-link small { grid-column: 2; color: #8ca3b1; text-transform: uppercase; }

.gazette-menu > .alert,
.gazette-menu-tabs,
.gazette-intelligence-panel,
.gazette-menu-section {
    width: min(1120px, 100%);
    margin-inline: auto;
}

.gazette-newsroom-header {
    align-items: stretch;
    margin-bottom: 24px;
    padding: clamp(16px, 2vw, 24px);
    border: 1px solid rgba(199, 157, 82, .34);
    border-radius: 15px;
    background:
        radial-gradient(circle at 8% 0%, rgba(188, 137, 63, .2), transparent 35%),
        linear-gradient(135deg, rgba(19, 32, 42, .98), rgba(8, 15, 22, .98));
    box-shadow: 0 18px 48px rgba(0, 0, 0, .28);
}
.gazette-newsroom-header.is-premium-visual { border-color: rgba(225, 181, 91, .64); box-shadow: 0 18px 48px rgba(0, 0, 0, .3), 0 0 24px rgba(205, 151, 61, .1); }
.gazette-newsroom-copy { display: flex; min-width: 0; max-width: 650px; padding: clamp(16px, 2.5vw, 25px); border: 1px solid rgba(255,255,255,.08); border-radius: 11px; background: rgba(3, 10, 15, .58); flex-direction: column; justify-content: center; }
.gazette-newsroom-kicker-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.gazette-premium-badge { transform: none; box-shadow: 0 0 16px rgba(226, 177, 78, .22); }
.gazette-newsroom-controls { display: flex; min-width: min(100%, 350px); padding: 3px 0; flex-direction: column; justify-content: center; gap: 11px; }
.gazette-newsroom-fact-stats { display: grid; grid-template-columns: repeat(2, minmax(115px, 1fr)); gap: 9px; }
.gazette-newsroom-fact-stats > div { padding: 12px 14px; border: 1px solid rgba(137, 174, 195, .2); border-radius: 9px; background: rgba(6, 14, 20, .58); }
.gazette-newsroom-fact-stats > div.is-ready { border-color: rgba(91, 183, 126, .48); background: rgba(24, 78, 48, .35); }
.gazette-newsroom-fact-stats strong { display: block; color: #fff; font-size: 1.5rem; line-height: 1; }
.gazette-newsroom-fact-stats span { display: block; margin-top: 6px; color: #91a7b4; font-size: .66rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.gazette-edition-request-row { display: flex; align-items: stretch; gap: 9px; }
.gazette-edition-request-row form { display: flex; margin: 0; flex: 1; }
.gazette-edition-request-row .btn { width: 100%; }
.gazette-edition-requirement { display: grid; min-width: 118px; padding: 8px 11px; border: 1px solid rgba(213, 170, 97, .3); border-radius: 9px; background: rgba(70, 47, 21, .38); align-content: center; }
.gazette-edition-requirement strong { color: #f3d394; font-size: .98rem; }
.gazette-edition-requirement span { color: #b9a98d; font-size: .58rem; line-height: 1.25; letter-spacing: .06em; text-transform: uppercase; }
.gazette-request-status { min-height: 20px; color: #8fa6b3; font-size: .68rem; line-height: 1.4; }
.gazette-request-status .is-blocked { color: #e2a2a2; }
.gazette-newsroom-controls .btn-gazette-generate:disabled { color: #8d8272; border-color: rgba(190, 155, 94, .2); background: rgba(72, 58, 39, .42); box-shadow: none; opacity: .72; }
.gazette-section-eyebrow { color: #d5aa61; font-size: .68rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.gazette-menu .badge { transform: none; }

.gazette-menu-tabs { display: flex; gap: 8px; margin-bottom: 24px; padding: 6px; border: 1px solid rgba(127, 163, 185, .22); border-radius: 12px; background: rgba(5, 12, 18, .72); }
.gazette-menu-tab { display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; padding: 10px 18px; color: #91a6b3; border: 1px solid transparent; border-radius: 8px; font-size: .86rem; font-weight: 700; text-decoration: none; flex: 1; }
.gazette-menu-tab:hover { color: #eaf3f7; border-color: rgba(130, 174, 201, .24); background: rgba(52, 84, 104, .2); }
.gazette-menu-tab.is-active { color: #fff; border-color: rgba(213, 170, 97, .48); background: linear-gradient(135deg, rgba(128, 87, 36, .62), rgba(36, 51, 61, .82)); box-shadow: 0 7px 20px rgba(0,0,0,.2); }
.gazette-menu-tab > span { display: inline-grid; min-width: 24px; height: 24px; padding-inline: 6px; color: #dbe8ef; border-radius: 999px; background: rgba(0,0,0,.32); font-size: .7rem; place-items: center; }

.gazette-intelligence-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 30px;
    margin-block: 8px 34px;
    padding: clamp(20px, 3vw, 32px);
    overflow: hidden;
    border: 1px solid rgba(199, 157, 82, .35);
    border-radius: 14px;
    color: #eaf2f6;
    background:
        linear-gradient(110deg, rgba(82, 56, 26, .42), rgba(14, 30, 42, .92) 56%),
        repeating-linear-gradient(135deg, rgba(255,255,255,.018) 0, rgba(255,255,255,.018) 1px, transparent 1px, transparent 8px);
    box-shadow: 0 18px 46px rgba(0, 0, 0, .22);
}
.gazette-intelligence-copy h2 { margin: 5px 0 9px; font-size: clamp(1.35rem, 2.8vw, 2rem); }
#main-content .gazette-intelligence-copy p { max-width: 760px; margin: 0; color: #afc0ca; line-height: 1.6; }
.gazette-intelligence-stats { display: grid; grid-template-columns: repeat(2, minmax(105px, 1fr)); gap: 10px; }
.gazette-intelligence-stats div { padding: 15px 18px; border: 1px solid rgba(255,255,255,.1); border-radius: 10px; text-align: center; background: rgba(5, 13, 19, .46); }
.gazette-intelligence-stats strong { display: block; color: #fff; font-size: 1.75rem; line-height: 1; }
.gazette-intelligence-stats span { display: block; margin-top: 7px; color: #aabac4; font-size: .68rem; letter-spacing: .09em; text-transform: uppercase; }

.gazette-menu-section { margin-bottom: 34px; padding: clamp(18px, 2.8vw, 30px); border: 1px solid rgba(127, 163, 185, .2); border-radius: 14px; color: #e9f2f7; background: rgba(8, 17, 25, .76); box-shadow: 0 20px 50px rgba(0,0,0,.18); }
.gazette-menu-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin-bottom: 20px; }
.gazette-menu-section-heading h2 { margin: 3px 0 0; font-size: clamp(1.35rem, 2.5vw, 1.9rem); }
.gazette-menu-section-heading > span { color: #91a6b3; font-size: .76rem; letter-spacing: .08em; text-transform: uppercase; }

.gazette-edition-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.gazette-edition-card { display: flex; min-width: 0; overflow: hidden; border: 1px solid rgba(150, 179, 197, .22); border-radius: 12px; background: linear-gradient(160deg, rgba(24, 38, 49, .98), rgba(10, 18, 25, .98)); box-shadow: 0 12px 30px rgba(0,0,0,.24); flex-direction: column; }
.gazette-edition-card-cover { position: relative; display: grid; min-height: 168px; overflow: hidden; color: #718b9a; background: radial-gradient(circle at center, #263c4b, #111c25); place-items: center; }
.gazette-edition-card-cover > i { font-size: 3.4rem; opacity: .55; }
.gazette-edition-card-cover img { width: 100%; height: 100%; aspect-ratio: 1.476 / 1; object-fit: cover; transition: transform .25s ease; }
.gazette-edition-card:hover .gazette-edition-card-cover img { transform: scale(1.025); }
.gazette-edition-card-cover .badge { position: absolute; top: 10px; right: 10px; max-width: calc(100% - 20px); overflow-wrap: anywhere; white-space: normal; text-align: center; box-shadow: 0 4px 12px rgba(0,0,0,.35); }
.gazette-edition-card-body { display: flex; min-height: 220px; padding: 17px; flex: 1; flex-direction: column; }
.gazette-edition-card-number { color: #d5ab62; font-size: .67rem; font-weight: 800; letter-spacing: .13em; }
.gazette-edition-card-body h3 { margin: 7px 0 9px; color: #f4f7f9; font-family: Georgia, 'Times New Roman', serif; font-size: 1.25rem; line-height: 1.16; }
#main-content .gazette-edition-card-body p { display: -webkit-box; margin: 0 0 15px; overflow: hidden; color: #9eb0bb; font-size: .86rem; line-height: 1.48; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.gazette-edition-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 13px; border-top: 1px solid rgba(255,255,255,.08); }
.gazette-edition-card-footer > span { color: #8fa2ae; font-size: .72rem; }

.gazette-menu-empty { display: grid; min-height: 190px; color: #91a6b3; text-align: center; place-content: center; }
.gazette-menu-empty i { margin-bottom: 10px; color: #c49b56; font-size: 3rem; }
#main-content .gazette-menu-empty p { max-width: 560px; margin: 0 auto; color: #91a6b3; }
.gazette-menu-empty--compact { min-height: 100px; }
.gazette-pagination { display: flex; align-items: center; justify-content: center; gap: 14px; margin-top: 22px; }
.gazette-pagination span { color: #99abb6; font-size: .78rem; }
.gazette-pagination .disabled { pointer-events: none; opacity: .4; }

#main-content .gazette-fact-dashboard-help { margin: -7px 0 20px; color: #93a7b3; font-size: .88rem; line-height: 1.55; }
.gazette-fact-list { display: grid; gap: 9px; }
.gazette-fact-row { display: grid; grid-template-columns: 46px minmax(0, 1fr) minmax(190px, auto); align-items: center; gap: 15px; padding: 14px; border: 1px solid rgba(127, 163, 185, .18); border-left: 3px solid #4f91b8; border-radius: 9px; background: rgba(19, 31, 41, .75); }
.gazette-fact-row--military { border-left-color: #bd5a5a; }
.gazette-fact-row--science { border-left-color: #8b75cc; }
.gazette-fact-row--industry, .gazette-fact-row--infrastructure { border-left-color: #c69a4e; }
.gazette-fact-row--colony { border-left-color: #65a481; }
.gazette-fact-row.is-classified { border-color: rgba(173, 70, 70, .32); border-left-color: #bb4d4d; background: rgba(51, 23, 27, .64); }
.gazette-fact-icon { display: grid; width: 42px; height: 42px; color: #b9d4e3; border: 1px solid rgba(151, 191, 213, .22); border-radius: 50%; background: rgba(79, 133, 163, .14); place-items: center; }
.gazette-fact-meta { display: flex; gap: 12px; color: #788f9d; font-size: .65rem; letter-spacing: .07em; text-transform: uppercase; }
.gazette-fact-content h3 { margin: 3px 0 3px; color: #e8f0f4; font-size: 1rem; }
#main-content .gazette-fact-content p { margin: 0; color: #9dafba; font-size: .82rem; }
.gazette-fact-clearance { display: grid; min-width: 0; max-width: 100%; justify-items: end; gap: 8px; }
.gazette-fact-clearance .badge { max-width: 100%; overflow-wrap: anywhere; white-space: normal; text-align: right; }
.gazette-fact-clearance form { max-width: 100%; margin: 0; }

.gazette-public-page { min-height: 100vh; margin: 0; background: #0d1216; }
.gazette-public-header { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 18px; min-height: 76px; padding: 10px clamp(14px, 4vw, 54px); color: #eff5f8; border-bottom: 1px solid rgba(255,255,255,.12); background: #090d10; }
.gazette-public-header img { width: 54px; height: 54px; object-fit: contain; }
.gazette-public-header > div { text-align: center; }
.gazette-public-header span, .gazette-public-header strong { display: block; }
.gazette-public-header span { color: #a4b2b9; font-size: .7rem; letter-spacing: .13em; text-transform: uppercase; }
.gazette-public-header strong { font-family: Georgia, serif; font-size: 1.15rem; }
.gazette-public-header .btn { justify-self: end; }
.gazette-public-main { padding: 12px clamp(8px, 2vw, 24px) 50px; }
.gazette-public-footer { padding: 28px; color: #8c9aa1; text-align: center; background: #090d10; }
.gazette-public-footer p { margin: 0 0 6px; }
.gazette-public-footer a { color: #d7b36d; }
.gazette-public-actions { position: fixed; right: clamp(14px, 2.4vw, 34px); bottom: clamp(14px, 2.4vw, 34px); z-index: 1040; display: flex; flex-direction: column; gap: 10px; }
.gazette-public-action { position: relative; display: grid; width: 50px; height: 50px; padding: 0; color: #f5e8ce; border: 1px solid rgba(215, 179, 109, .58); border-radius: 50%; background: rgba(12, 17, 21, .94); box-shadow: 0 6px 18px rgba(0, 0, 0, .35); text-decoration: none; cursor: pointer; transition: transform .18s ease, color .18s ease, border-color .18s ease, background .18s ease; place-items: center; }
.gazette-public-action:hover, .gazette-public-action:focus-visible { color: #11171b; border-color: #e8c47c; background: #d7b36d; outline: none; transform: translateY(-3px); }
.gazette-public-action i { font-size: 1.2rem; line-height: 1; }
.gazette-public-action-tooltip { position: absolute; top: 50%; right: 61px; width: max-content; max-width: min(260px, 70vw); padding: 7px 10px; color: #f2f5f6; border: 1px solid rgba(255,255,255,.1); border-radius: 5px; background: rgba(7, 10, 12, .94); box-shadow: 0 5px 14px rgba(0,0,0,.28); font-size: .78rem; font-weight: 600; line-height: 1.25; opacity: 0; pointer-events: none; transform: translate(8px, -50%); transition: opacity .16s ease, transform .16s ease; }
.gazette-public-action:hover .gazette-public-action-tooltip, .gazette-public-action:focus-visible .gazette-public-action-tooltip { opacity: 1; transform: translate(0, -50%); }
.gazette-public-share { position: relative; }
.gazette-public-share-menu { position: absolute; right: 61px; bottom: 0; width: 205px; padding: 7px; border: 1px solid rgba(215,179,109,.35); border-radius: 9px; background: rgba(12, 17, 21, .98); box-shadow: 0 10px 28px rgba(0,0,0,.42); }
.gazette-public-share-menu[hidden] { display: none; }
.gazette-public-share-menu button { display: flex; align-items: center; gap: 10px; width: 100%; padding: 9px 10px; color: #e9eef0; border: 0; border-radius: 6px; background: transparent; text-align: left; cursor: pointer; }
.gazette-public-share-menu button:hover, .gazette-public-share-menu button:focus-visible { color: #161b1e; background: #d7b36d; outline: none; }
.gazette-public-share-menu button i { width: 20px; font-size: 1.05rem; text-align: center; }
.gazette-public-copy-notice { position: fixed; bottom: 28px; left: 50%; z-index: 1050; display: flex; align-items: center; gap: 8px; padding: 10px 15px; color: #eef8f1; border: 1px solid rgba(101, 164, 129, .62); border-radius: 7px; background: rgba(19, 45, 31, .96); box-shadow: 0 8px 24px rgba(0,0,0,.36); font-size: .86rem; transform: translateX(-50%); }
.gazette-public-copy-notice[hidden] { display: none; }

@media (min-width: 900px) {
    .gazette-story-section:nth-of-type(n+2) .gazette-section-copy {
        columns: 2;
        column-gap: 36px;
        column-rule: 1px solid rgba(117, 108, 92, .18);
    }
    .gazette-story-section:nth-of-type(n+2) blockquote {
        column-span: all;
        break-inside: avoid;
    }
}

@media (max-width: 760px) {
    .gazette-command-bar, .gazette-owner-tools { align-items: stretch; flex-direction: column; }
    .gazette-reader-header { gap: 18px; }
    .gazette-reader-header .gazette-reader-back,
    .gazette-owner-tools .gazette-visibility-action { align-self: flex-start; width: auto; white-space: normal; }
    .gazette-visibility-state { align-items: flex-start; }
    .gazette-command-actions { justify-content: flex-start; }
    .gazette-fact-counter { text-align: left; }
    .gazette-archive-metadata { margin-bottom: -12px; text-align: center; }
    #main-content .gazette-masthead h1,
    .gazette-masthead h1 { font-size: clamp(1.8rem, 8.5vw, 2.65rem); }
    .gazette-byline, .gazette-paper-footer { align-items: center; flex-direction: column; text-align: center; }
    .gazette-public-header { grid-template-columns: auto 1fr; }
    .gazette-public-header > div { text-align: left; }
    .gazette-public-header .btn { display: none; }
    .gazette-public-actions { right: 12px; bottom: 12px; gap: 8px; }
    .gazette-public-action { width: 46px; height: 46px; }
    .gazette-public-action-tooltip { display: none; }
    .gazette-public-share-menu { right: 55px; width: 190px; }
    .gazette-public-copy-notice { bottom: 18px; max-width: calc(100vw - 140px); text-align: center; }
    .gazette-intelligence-panel { grid-template-columns: 1fr; }
    .gazette-menu-tabs { flex-direction: column; }
    .gazette-menu-tab { justify-content: flex-start; }
    .gazette-newsroom-copy { max-width: none; }
    .gazette-newsroom-controls { min-width: 0; }
    .gazette-edition-request-row { flex-direction: column; }
    .gazette-edition-requirement { text-align: center; }
    .gazette-intelligence-stats { width: 100%; }
    .gazette-menu-section-heading { align-items: flex-start; flex-direction: column; }
    .gazette-edition-cards { grid-template-columns: 1fr; }
    .gazette-fact-row { grid-template-columns: 38px minmax(0, 1fr); }
    .gazette-fact-icon { width: 36px; height: 36px; }
    .gazette-fact-clearance { grid-column: 1 / -1; align-items: center; justify-items: stretch; padding-top: 10px; border-top: 1px solid rgba(255,255,255,.07); }
    .gazette-fact-clearance .badge { text-align: center; }
    .gazette-fact-clearance .btn { width: 100%; }
}

@media (max-width: 420px) {
    .gazette-reader-title-icon { display: none; }
    .gazette-reader-heading { width: 100%; }
    .gazette-visibility-icon { width: 40px; height: 40px; }
}

@media (min-width: 761px) and (max-width: 1120px) {
    .gazette-edition-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
