/* SíndicoFlex | Design System Global v1 | 2026-10 */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Poppins:wght@600;700&display=swap');
:root{--sf-primary:#1565C0;--sf-primary-dark:#0D47A1;--sf-accent:#00BCD4;--sf-text:#263238;--sf-bg:#ECEFF1;--sf-white:#FFFFFF;--sf-muted:#60717b;--sf-border:#d7e0e5;--sf-radius:14px;--sf-radius-sm:9px;--sf-shadow:0 3px 16px rgba(13,71,161,.07);--sf-font:Inter,Segoe UI,Arial,sans-serif;--sf-space:16px;--sf-success:#16764a;--sf-danger:#b42332;--sf-warning:#9b6500}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:#1b304d;background:#dce3eb}a{color:#0876ce;text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}button{cursor:pointer}.auth-layout{min-height:100vh;display:grid;grid-template-columns:47% 53%;background:white}.auth-brand{background:linear-gradient(150deg,#082f80,#0876ce);color:white;padding:10vh 10%;position:relative;overflow:hidden}.brand-mark,.logo-square{display:inline-grid;place-items:center;background:#15d4e5;color:#082f80;font-weight:900;border-radius:11px}.brand-mark{width:60px;height:60px;font-size:35px}.auth-brand h1{font-size:42px;margin:35px 0 10px}.auth-brand p{max-width:350px;line-height:1.7;color:#d8ecff;font-size:18px}.auth-decor{position:absolute;width:360px;height:360px;border:65px solid #ffffff13;border-radius:50%;bottom:-180px;right:-110px}.auth-panel{display:flex;justify-content:center;align-items:center;padding:36px}.auth-card{width:min(100%,430px)}.auth-card h2{font-size:30px;margin:0 0 8px}.subtitle,.muted{color:#66788f;line-height:1.5}.subtitle{margin:0 0 28px}.form-stack{display:flex;flex-direction:column;gap:11px}.form-stack label{font-weight:600;font-size:14px;margin-top:5px}.form-stack input,.form-stack select,.search-form input{width:100%;border:1px solid #bcc9d7;border-radius:10px;padding:13px 14px;background:white;color:#1b304d;outline:none}.form-stack input:focus,.form-stack select:focus,.search-form input:focus{border-color:#0876ce;box-shadow:0 0 0 3px #0876ce20}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;border:0;border-radius:10px;font-weight:650;text-decoration:none;white-space:nowrap}.btn-primary{background:#0876ce;color:white}.btn-primary:hover{background:#0565b5;text-decoration:none}.btn-light{background:#eaf0f6;color:#24446c}.form-stack>.btn{margin-top:15px}.auth-footer{text-align:center;margin-top:24px}.alert{padding:13px 15px;border-radius:9px;margin-bottom:18px;font-size:14px}.alert-success{background:#e4f8f2;color:#11694b}.alert-error{background:#fff0f0;color:#9d2a2a}.topbar{height:68px;background:#082f80;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 26px}.top-logo{font-size:23px;color:white;font-weight:750;display:flex;align-items:center;gap:10px}.top-logo:hover{text-decoration:none}.logo-square{width:34px;height:34px;font-size:23px}.top-user{display:flex;gap:20px;align-items:center;font-size:14px}.logout{background:transparent;border:1px solid #ffffff55;border-radius:8px;color:white;padding:8px 13px}.app-shell{display:flex;min-height:calc(100vh - 68px)}.sidebar{width:250px;background:white;border-right:1px solid #bcc9d7;padding:24px 12px;display:flex;flex-direction:column;gap:5px;flex-shrink:0}.sidebar-label{color:#627a94;font-size:11px;letter-spacing:1px;font-weight:800;padding:12px 15px 8px}.sidebar-label.muted{margin-top:20px}.nav-link{display:block;padding:12px 15px;border-radius:10px;color:#24446c;font-weight:600;font-size:14px}.nav-link.active{background:#0876ce;color:white}.nav-link.disabled{color:#a7b4c3;cursor:default}.sidebar-bottom{margin-top:auto;padding:18px 15px;color:#7a8da4;font-size:12px}.main-content{flex:1;min-width:0;padding:28px 34px}.page-header h1{margin:0 0 24px;font-size:28px;color:#082f80}.intro,.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.intro h2{font-size:21px;margin:0 0 6px}.intro p,.section-head p{margin:0;color:#66788f}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:24px}.stat-card,.card{background:white;border:1px solid #bcc9d7;border-radius:12px;padding:24px;box-shadow:0 2px 6px #082f8008}.stat-icon{font-size:25px;color:#0876ce}.stat-value{font-size:35px;font-weight:750;color:#082f80;margin-top:8px}.stat-label{color:#627a94}.card{margin-bottom:20px}.card h3{margin:0 0 17px;font-size:18px}.card.narrow{max-width:680px}.card p{line-height:1.6}.notice{background:#e9f5fd;border-left:4px solid #0876ce;padding:14px;border-radius:6px;font-size:14px}.search-form{display:flex;gap:12px}.search-form input{flex:1}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;text-align:left}.data-table th,.data-table td{padding:13px 12px;border-bottom:1px solid #e7edf3;font-size:14px}.data-table th{color:#627a94;font-size:12px;text-transform:uppercase}.status-chip{background:#e4f8f2;color:#12694a;padding:5px 9px;border-radius:20px;font-size:12px}.pagination{display:flex;justify-content:space-between;padding-top:17px;color:#627a94;font-size:13px}.pagination a{margin:0 10px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}@media(max-width:850px){.auth-layout{grid-template-columns:1fr}.auth-brand{padding:24px}.auth-brand h1{font-size:27px;margin:10px 0}.auth-brand p{font-size:14px}.auth-decor{display:none}.auth-panel{padding:36px 20px}.sidebar{width:190px}.main-content{padding:20px}.stats-grid{grid-template-columns:1fr}.intro,.section-head{align-items:flex-start;flex-direction:column}}@media(max-width:550px){.sidebar{display:none}.topbar{padding:0 14px}.top-user span{display:none}.main-content{padding:18px}.search-form{flex-direction:column}}


/* SíndicoFlex - padronização do painel administrativo */
.top-logo-image{display:block;width:190px;max-width:100%;max-height:56px;height:auto;object-fit:contain;object-position:left center}
.top-logo{min-width:0}
.topbar{gap:16px}
.main-content{max-width:100%;overflow-wrap:anywhere}
.intro>div{min-width:0}
.stat-card{display:flex;flex-direction:column;min-height:154px;transition:box-shadow .15s ease,transform .15s ease}
.stat-card:hover{box-shadow:0 8px 20px #082f8014;transform:translateY(-2px)}
.stat-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;background:#e9f5fd;border-radius:11px;font-size:23px}
.stat-value{font-variant-numeric:tabular-nums}
.stat-label{margin-top:4px;font-weight:600}
.nav-link:hover:not(.disabled){background:#e9f5fd;color:#082f80;text-decoration:none}
.nav-link.active:hover{background:#0876ce;color:#fff}
.btn:focus-visible,.nav-link:focus-visible,.logout:focus-visible{outline:3px solid #15d4e5;outline-offset:2px}
.btn-secondary{background:#eaf0f6;color:#24446c}
.btn-secondary:hover{background:#dce7f1;text-decoration:none}
.module-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dashboard-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.dashboard-shortcut{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #d8e3ef;border-radius:10px;padding:16px;color:#082f80;font-weight:700;background:#f7faff}
.dashboard-shortcut:hover{background:#e9f5fd;text-decoration:none}
.filter-grid{display:grid;grid-template-columns:minmax(200px,2fr) minmax(150px,1fr) auto;gap:12px;align-items:end}
.field-label{display:block;margin-bottom:7px;font-size:13px;font-weight:700;color:#24446c}
.field-control{width:100%;border:1px solid #bcc9d7;border-radius:10px;padding:12px;background:#fff;color:#1b304d;min-height:44px}
.field-control:focus{outline:0;border-color:#0876ce;box-shadow:0 0 0 3px #0876ce20}
.filter-actions{display:flex;gap:8px;flex-wrap:wrap}
.status-chip.is-pending{background:#fff4d6;color:#805900}
.status-chip.is-blocked{background:#fff0f0;color:#9d2a2a}
.status-chip.is-inactive{background:#edf0f4;color:#526175}
.profile-chip{display:inline-flex;padding:5px 9px;border-radius:20px;background:#e9f5fd;color:#082f80;font-size:12px;font-weight:700}
.empty-state{padding:24px;text-align:center;color:#66788f}
@media(max-width:850px){.filter-grid{grid-template-columns:1fr 1fr}.filter-actions{grid-column:1/-1}.dashboard-shortcuts{grid-template-columns:1fr}}
@media(max-width:550px){.top-logo-image{width:150px}.filter-grid{grid-template-columns:1fr}.filter-actions{grid-column:auto}.topbar{height:68px}.main-content{padding:18px}.intro .btn{width:100%}}

/* Regras canônicas: aplicar em todos os módulos administrativos */
body{font-family:var(--sf-font);color:var(--sf-text);background:var(--sf-bg);font-size:14px;line-height:1.5}
a{color:var(--sf-primary)}
.topbar{background:var(--sf-primary-dark);height:72px;padding:0 28px;box-shadow:0 2px 12px rgba(13,71,161,.14)}
.top-logo{font-family:Poppins,var(--sf-font);font-weight:700}
.top-user{font-weight:600}.logout{border:1px solid rgba(255,255,255,.45);border-radius:var(--sf-radius-sm);font-weight:600}
.app-shell{min-height:calc(100vh - 72px)}.sidebar{width:252px;border-color:var(--sf-border);padding:24px 14px;background:var(--sf-white)}
.sidebar-label{color:var(--sf-muted);font-size:11px}.nav-link{border-radius:var(--sf-radius-sm);font-size:14px;color:var(--sf-text);display:flex;align-items:center;gap:10px}
.nav-link.active,.nav-link.active:hover{background:var(--sf-primary);color:white}.nav-link:hover:not(.disabled){background:#e7f2ff;color:var(--sf-primary-dark)}
.nav-icon{width:19px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:17px}
.main-content{padding:30px 36px;max-width:1600px;width:100%;margin:0 auto;overflow-wrap:normal}
.page-header h1{font-size:26px;font-weight:800;letter-spacing:-.035em;color:var(--sf-primary-dark);margin:0 0 22px}
.intro h2{font-size:19px;font-weight:750;color:var(--sf-text)}.intro p,.section-head p{color:var(--sf-muted)}
.card,.stat-card{background:var(--sf-white);border:1px solid var(--sf-border);border-radius:var(--sf-radius);box-shadow:var(--sf-shadow);padding:24px}
.card h3{font-size:17px;font-weight:750;color:var(--sf-primary-dark);margin:0 0 16px}
.stats-grid{gap:18px}.stat-card{min-height:162px}.stat-icon{background:#e6f2ff;color:var(--sf-primary);border-radius:12px;width:44px;height:44px}.stat-value{font-size:34px;font-weight:800;color:var(--sf-primary-dark)}.stat-label{color:var(--sf-muted);font-size:13px}
.btn{border-radius:var(--sf-radius-sm);min-height:42px;padding:10px 17px;font-size:13px;font-weight:700;transition:background .15s,transform .15s,box-shadow .15s}
.btn-primary{background:var(--sf-primary);color:#fff}.btn-primary:hover{background:var(--sf-primary-dark);color:#fff}
.btn-secondary,.btn-light{background:#e7f2ff;color:var(--sf-primary-dark)}.btn-secondary:hover,.btn-light:hover{background:#d4e9ff}
.btn-danger{background:var(--sf-danger);color:white}.btn-danger:hover{background:#8d1d2a;color:white}
.field-label,.form-stack label{font-size:13px;color:var(--sf-text);font-weight:700}
.field-control,.form-stack input,.form-stack select,.form-stack textarea,.search-form input{border:1px solid #b9c9d4;border-radius:var(--sf-radius-sm);min-height:43px;padding:11px 13px;font-family:var(--sf-font);font-size:14px;background:white;color:var(--sf-text)}
.field-control:focus,.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus,.search-form input:focus{outline:0;border-color:var(--sf-primary);box-shadow:0 0 0 3px rgba(21,101,192,.14)}
.data-table th{color:var(--sf-muted);background:#f5f8fa;font-size:11px;font-weight:800;letter-spacing:.045em}.data-table td,.data-table th{padding:14px 13px;border-color:#e5ebef}.data-table tbody tr:hover{background:#f8fbfd}
.status-chip{font-weight:700}.profile-chip{background:#e6f2ff;color:var(--sf-primary-dark)}
.notice{background:#e8f5ff;border-left:4px solid var(--sf-primary);color:var(--sf-text)}
.dashboard-shortcut{border-color:var(--sf-border);background:#f8fbff;color:var(--sf-primary-dark)}.dashboard-shortcut:hover{background:#e8f4ff}
.pagination{align-items:center;gap:12px;flex-wrap:wrap}
.sf-toast-region{position:fixed;z-index:1200;right:20px;top:88px;width:min(380px,calc(100vw - 32px));display:flex;flex-direction:column;gap:10px;pointer-events:none}
.sf-toast{pointer-events:auto;display:flex;align-items:flex-start;gap:12px;padding:15px 16px;background:white;color:var(--sf-text);border:1px solid var(--sf-border);border-left:4px solid var(--sf-primary);border-radius:var(--sf-radius-sm);box-shadow:0 12px 36px rgba(0,0,0,.15);font-size:13px}
.sf-toast[data-type=success]{border-left-color:var(--sf-success)}.sf-toast[data-type=error]{border-left-color:var(--sf-danger)}.sf-toast[data-type=warning]{border-left-color:var(--sf-warning)}
.sf-toast-message{flex:1}.sf-toast-close,.sf-modal-close{background:transparent;border:0;color:var(--sf-muted);font-size:21px;line-height:1;padding:0 3px}
.sf-modal-backdrop{position:fixed;inset:0;z-index:1300;background:rgba(20,35,50,.58);display:flex;align-items:center;justify-content:center;padding:20px}
.sf-modal{background:#fff;width:min(100%,480px);border-radius:var(--sf-radius);box-shadow:0 24px 60px rgba(0,0,0,.24);padding:24px}
.sf-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sf-modal-title{margin:0;color:var(--sf-primary-dark);font-size:19px;font-weight:800}.sf-modal-body{margin:16px 0 22px;color:var(--sf-text);line-height:1.65;white-space:pre-wrap}.sf-modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.sf-modal-open{overflow:hidden}
:focus-visible{outline:3px solid var(--sf-accent);outline-offset:2px}
@media(max-width:850px){.main-content{padding:22px}.sidebar{width:210px}.stats-grid{grid-template-columns:1fr}.sf-toast-region{top:80px}}
@media(max-width:550px){.sidebar{display:none}.topbar{height:68px}.main-content{padding:16px}.card,.stat-card{padding:18px}.page-header h1{font-size:23px}.sf-modal{padding:20px}}

/* SíndicoFlex — Navtop oficial (v6) */
.sf-topbar{height:76px;min-height:76px;padding:0 28px;background:#fff;color:var(--sf-text,#263238);border-bottom:3px solid var(--sf-primary,#1565C0);box-shadow:0 2px 12px rgba(13,71,161,.07);position:relative;z-index:20;gap:18px}
.sf-topbar-brand{display:flex;align-items:center;flex-shrink:0;width:250px;max-width:45%;height:100%}
.sf-topbar-logo{display:block;width:238px;max-width:100%;height:auto;max-height:58px;object-fit:contain;object-position:left center}
.sf-topbar-actions{display:flex;align-items:center;gap:12px;margin-left:auto}
.sf-topbar-icon{width:40px;height:40px;border:1px solid #dde6ee;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;color:var(--sf-primary,#1565C0);background:#f5f9fc}
.sf-topbar-icon svg,.sf-profile-avatar svg,.sf-chevron{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.sf-topbar-unavailable{cursor:help;opacity:.75}
.sf-profile-menu{position:relative}
.sf-profile-trigger{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;padding:6px 10px;border-radius:12px;color:#263238;font-weight:600;font-size:13px}
.sf-profile-trigger::-webkit-details-marker{display:none}
.sf-profile-trigger:hover,.sf-profile-menu[open] .sf-profile-trigger{background:#edf4fa}
.sf-profile-avatar{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#e5f2ff;color:#0D47A1}
.sf-chevron{width:15px;height:15px}
.sf-profile-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sf-profile-dropdown{position:absolute;top:calc(100% + 12px);right:0;min-width:250px;max-width:calc(100vw - 24px);padding:16px;background:#fff;border:1px solid #dce5ed;border-radius:14px;box-shadow:0 16px 40px rgba(13,71,161,.16)}
.sf-profile-dropdown-title{font-size:11px;color:#607d8b;text-transform:uppercase;font-weight:700;letter-spacing:.04em}
.sf-profile-dropdown-name{margin:8px 0 14px;font-size:14px;overflow-wrap:anywhere}
.sf-profile-logout{width:100%;text-align:left;border:1px solid #dce5ed;border-radius:9px;background:#f5f9fc;padding:11px 12px;color:#0D47A1;font-weight:650}
.sf-profile-logout:hover{background:#e5f2ff}
.sf-profile-trigger:focus-visible,.sf-profile-logout:focus-visible,.sf-topbar-brand:focus-visible{outline:3px solid #00BCD4;outline-offset:3px}
.app-shell{min-height:calc(100vh - 76px)}
@media(max-width:680px){.sf-topbar{height:68px;min-height:68px;padding:0 12px;gap:8px}.sf-topbar-brand{width:170px;max-width:48%}.sf-topbar-logo{width:165px}.sf-topbar-actions{gap:6px}.sf-topbar-icon{width:34px;height:34px}.sf-profile-trigger{padding:4px;gap:4px}.sf-profile-name,.sf-chevron{display:none}.app-shell{min-height:calc(100vh - 68px)}}
