/* Generic topbar/header styles shared by all pages. */

.gs-wrap { max-width: 1200px !important; }

/* Topbar */
.gs-topbar { display: flex; gap: 8px; margin-bottom: 16px; }
.gs-btn-nav {
    padding: 6px 14px; border-radius: 4px; font-size: 12px; font-weight: 500;
    text-decoration: none; border: 1px solid #d0d0d0; background: #f0f0f0;
    color: #333; display: inline-flex; align-items: center;
}
.gs-btn-menu { background: #c89134; border-color: #c89134; color: #fff; }

/* Header */
.gs-header-row {
    display: flex; justify-content: space-between; align-items: flex-start;
    gap: 16px; margin-bottom: 20px; flex-wrap: wrap;
}
.gs-title { margin: 0 0 4px; font-size: 24px; font-weight: 700; color: #fff; }
.gs-subtitle { margin: 0; font-size: 12px; color: #c89c34; }

.gs-btn-novo {
    height: 34px; padding: 0 16px; background: #c89134; border: none;
    border-radius: 5px; color: #fff; font-size: 12px; font-weight: 600;
    cursor: pointer; display: inline-flex; align-items: center; gap: 6px;
    white-space: nowrap; transition: background 0.18s;
}
.gs-btn-novo:hover { background: #a87928; }

/* Grid fallback used by some pages */
.gs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 16px;
}
.gs-loading, .gs-empty { color: #aaa; font-size: 13px; grid-column: 1/-1; }
