/* public/styles.css
   CSS aggregator (tema + componentes) + compat para páginas antigas
*/
@import url("assets/css/theme.css");
@import url("assets/css/components.css");
@import url("assets/css/overrides.css");

/* Layout básico */
.page{min-height:100vh;display:flex;flex-direction:column}
main{flex:1}
header, footer{width:100%}

/* Shell/brand/nav compat */
.header-inner, .le-header .inner{display:flex;justify-content:space-between;align-items:center;gap:14px}
.brand-text-main{font-weight:900;font-size:18px;line-height:1}
.brand-text-sub{opacity:.75;font-size:12px;margin-top:2px}
.logo-mark, .brand-mark{width:38px;height:38px;border-radius:12px;background:var(--primary);display:flex;align-items:center;justify-content:center;color:#062012;font-weight:900}

/* Forms compat */
.form-row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.form-col{flex:1;min-width:220px}
.form-label{display:block;font-weight:800;margin:10px 0 6px}
.form-help{color:var(--muted);font-size:12px;margin-top:6px}
.form-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

/* Lists/sections */
.section{padding:18px 0}
.h1{font-size:28px;font-weight:950;margin:0 0 10px}
.h2{font-size:18px;font-weight:900;margin:0 0 10px}

/* Small helpers */
hr{border:0;border-top:1px solid var(--border);margin:18px 0}
