/* A interface cliente reaproveita o mesmo shell e os mesmos componentes da versão administrativa. */
.client-mode .sidebar-bottom { margin-top:auto; border-top:1px solid var(--line-dark); padding:18px 4px 0; display:flex; align-items:center; gap:10px; }
.client-mode .page-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:20px; }
.client-mode .page-heading .eyebrow { margin:0 0 8px; }
.client-mode .page-heading h1 { margin:0; font-size:27px; letter-spacing:-.6px; }
.client-mode .top-actions { display:flex; align-items:center; gap:12px; color:var(--muted-strong); font-size:11px; }
.client-mode #offerToolbar { display:none !important; }
.client-mode .offer-filter-panel,.client-mode .library-toolbar { margin-bottom:14px; }
.client-mode .offer-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; }
.client-mode .offer-counts { grid-template-columns:repeat(3,minmax(0,1fr)); }
.client-mode .summary-row { display:flex; align-items:center; justify-content:space-between; margin:14px 2px; color:#81919e; font-size:11px; }
.client-mode .button.primary,.client-mode .button.ghost,.offer-dialog .button.ghost,.small-dialog .button.primary { min-height:32px; padding:0 10px; border:1px solid #e1e6e9; border-radius:7px; background:#fff; color:#536272; font-size:10px; font-weight:600; }
.client-mode .button.primary,.small-dialog .button.primary { border-color:#213c34; background:#203b32; color:#f2ffe7; }
.client-mode .pagination { display:flex; justify-content:center; gap:6px; margin:22px 0 30px; }
.client-mode .offer-card-media { display:block; height:auto; aspect-ratio:2.05 / 1; min-height:112px; max-height:176px; }
.client-mode .offer-thumb-mosaic { width:100%; height:100%; }
.client-mode .offer-thumb-mosaic img { width:100%; height:100%; object-fit:contain; }
.offer-dialog { display:none; position:fixed; inset:50% auto auto 50%; transform:translate(-50%,-50%); width:min(1120px,94vw); max-width:94vw; max-height:90vh; overflow:auto; padding:0; border:1px solid #e1e7e9; border-radius:14px; background:#fff; color:#233b4d; box-shadow:0 24px 80px #071b2b55; }
.offer-dialog[open] { display:block; }
.offer-dialog::backdrop { background:#10213299; backdrop-filter:blur(2px); }
.offer-dialog .dialog-inner { padding:24px; }
.offer-dialog .dialog-inner h2 { margin:0 0 5px; color:#213b4d; font:700 23px/1.25 Manrope,sans-serif; }
.offer-dialog .dialog-sub { color:#81919e; font-size:12px; }
.offer-dialog .dialog-stats { display:flex; flex-wrap:wrap; gap:14px; margin:12px 0; padding:12px 0; border-bottom:1px solid #e8edef; color:#687d8a; font-size:11px; }
.offer-dialog .ad-buttons { display:flex; flex-wrap:wrap; gap:7px; margin:12px 0; }
.offer-dialog .creative-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:14px; }
.offer-dialog .creative-card { min-width:0; overflow:hidden; border:1px solid #e3e9eb; border-radius:9px; background:#fff; }
.offer-dialog .creative-card > img { display:block; width:100%; height:190px; max-height:190px; object-fit:contain; background:#f1f3f3; }
.offer-dialog .creative-content { padding:10px; }
.offer-dialog .creative-content p { max-height:64px; overflow:hidden; color:#687d8a; font-size:11px; line-height:1.45; }
.offer-dialog .creative-more { display:block; min-height:36px; margin:16px auto 0; padding:0 18px; border:1px solid #dfe7e9; border-radius:7px; background:#fff; color:#536b7b; }
.offer-dialog .offer-loading { min-height:180px; display:flex; flex-direction:column; justify-content:center; }
@media(max-width:1200px){.client-mode .offer-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:1000px){.client-mode .offer-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:800px){.client-mode .sidebar{width:68px;padding:17px 8px}.client-mode .brand-name,.client-mode .brand-caption,.client-mode .nav-label,.client-mode .nav-item span:nth-child(2),.client-mode .user-copy,.client-mode .logout{display:none}.client-mode .nav-item{justify-content:center;padding:0}.client-mode .sidebar-bottom{justify-content:center;padding:13px 0}.client-mode .main-area{margin-left:68px}.client-mode .page-content{padding:22px 14px}.client-mode .page-heading{align-items:flex-start}.client-mode .top-actions span:not(.live-dot),.client-mode #roleBadge{display:none}.client-mode .offer-grid{grid-template-columns:1fr}.client-mode .offer-filter-panel{grid-template-columns:1fr 1fr;gap:8px;padding:10px}.offer-dialog .dialog-inner{padding:20px 16px}.offer-dialog .creative-grid{grid-template-columns:1fr 1fr}.offer-dialog .creative-card>img{height:160px;max-height:160px}}
