:root{--v17-navy:#062b3d;--v17-green:#18a868;--v17-mint:#eaf9f1;--v17-gold:#f2b84b;--v17-purple:#7357d8;--v17-blue:#2375cf;--v17-danger:#bd3545}
.v17-topbar{z-index:70}.v17-topbar .main-nav{gap:2px}.v17-topbar .nav-item{padding-inline:9px}.v17-bell{position:relative;width:43px;height:43px;display:grid;place-items:center;flex:none;border:1px solid var(--line);border-radius:13px;color:var(--ink);background:#fff}.v17-bell:hover{color:var(--green-dark);background:var(--green-soft)}.v17-bell svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.v17-bell span{position:absolute;top:-6px;right:-6px;min-width:21px;height:21px;padding:0 5px;display:grid;place-items:center;border:2px solid #fff;border-radius:99px;color:#fff;background:var(--red);font-size:9px;font-weight:900}.v17-page{padding-bottom:70px}.v17-hero{position:relative;overflow:hidden;padding:42px 0 34px;color:#fff;background:radial-gradient(circle at 88% 20%,rgba(24,168,104,.35),transparent 30%),linear-gradient(135deg,#041e2c,#0b5269)}.v17-hero::after{content:"";position:absolute;width:280px;height:280px;right:-90px;bottom:-190px;border:55px solid rgba(255,255,255,.05);border-radius:50%}.v17-hero .breadcrumbs{color:#b9d1da}.v17-hero h1{max-width:850px;margin-top:13px;font-size:clamp(30px,5vw,52px);line-height:1.04}.v17-hero p{max-width:760px;margin-top:13px;color:#d0e2e8;line-height:1.7}.v17-hero-row{display:flex;align-items:flex-end;justify-content:space-between;gap:25px}.v17-hero-actions{display:flex;flex-wrap:wrap;gap:9px;position:relative;z-index:1}.v17-hero .button{border-color:rgba(255,255,255,.25);color:#fff;background:rgba(255,255,255,.09)}.v17-hero .button.primary{border-color:var(--green);background:var(--green)}
.v17-context{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding:13px 16px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-sm)}.v17-context-main,.v17-context-actions{display:flex;align-items:center;gap:10px}.v17-context-actions{flex-wrap:wrap;justify-content:flex-end}.v17-context-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;color:var(--green-dark);background:var(--green-soft);font-size:20px}.v17-context span{display:block;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}.v17-context strong{display:block;margin-top:3px;font-size:13px}.v17-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;margin-top:16px}.v17-stack{display:grid;align-content:start;gap:16px;min-width:0}.v17-card{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-sm)}.v17-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px;border-bottom:1px solid var(--line)}.v17-card-head .v17-eyebrow,.v17-eyebrow{display:block;color:var(--green-dark);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.v17-card-head h2{margin-top:5px;font-size:20px}.v17-card-head p{max-width:650px;margin-top:6px;color:var(--muted);font-size:12px;line-height:1.65}.v17-card-body{padding:20px}.v17-muted{color:var(--muted)}.v17-small{font-size:11px}.v17-badge{display:inline-flex;align-items:center;gap:5px;min-height:27px;padding:0 9px;border-radius:99px;color:var(--green-dark);background:var(--green-soft);font-size:10px;font-weight:900;white-space:nowrap}.v17-badge.blue{color:#185f9f;background:#e9f4ff}.v17-badge.gold{color:#765100;background:#fff5d9}.v17-badge.red{color:var(--v17-danger);background:#fff0f1}.v17-badge.purple{color:#5839bd;background:#f1edff}.v17-pills{display:flex;flex-wrap:wrap;gap:7px}.v17-tabs{display:flex;gap:5px;padding:5px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.v17-tab{min-height:38px;padding:0 13px;border:0;border-radius:10px;color:var(--muted);background:transparent;font-size:11px;font-weight:900}.v17-tab.active{color:var(--ink);background:#fff;box-shadow:0 3px 10px rgba(5,38,77,.08)}.v17-field{display:grid;gap:6px}.v17-field>span,.v17-field>label{color:#5d746c;font-size:10px;font-weight:900;text-transform:uppercase}.v17-field input,.v17-field select,.v17-field textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;font:inherit;color:var(--ink)}.v17-field input,.v17-field select{height:44px;padding:0 12px}.v17-field textarea{min-height:130px;padding:12px;resize:vertical;line-height:1.65}.v17-field small{color:var(--muted);font-size:10px;line-height:1.5}.v17-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v17-field.full{grid-column:1/-1}.v17-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.v17-toolbar-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.v17-toolbar select,.v17-toolbar input{height:40px;padding:0 11px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink)}.v17-search{min-width:240px}.v17-table-wrap{overflow:auto}.v17-table{width:100%;border-collapse:collapse;min-width:680px}.v17-table th{padding:11px 14px;color:#6a7d76;background:var(--surface);font-size:9px;text-align:left;text-transform:uppercase}.v17-table td{padding:13px 14px;border-top:1px solid var(--line);font-size:11px}.v17-table tbody tr:hover{background:#fbfdfc}.v17-rank-position{font-family:"Space Grotesk";font-size:18px;font-weight:800}.v17-person{display:flex;align-items:center;gap:10px;min-width:190px}.v17-avatar{position:relative;width:46px;height:46px;display:grid;place-items:center;flex:none;border-radius:50%;color:#fff;background:linear-gradient(135deg,var(--green),#096078);font-weight:900}.v17-avatar img.avatar-photo{width:100%;height:100%;object-fit:cover;border-radius:50%}.v17-avatar img.avatar-frame{position:absolute;inset:-8px;width:calc(100% + 16px);height:calc(100% + 16px);pointer-events:none}.v17-person strong,.v17-person span{display:block}.v17-person span{margin-top:3px;color:var(--muted);font-size:9px}.v17-row-button{padding:0;border:0;color:var(--green-dark);background:none;font:inherit;font-weight:900;text-align:left}.v17-row-button:hover{text-decoration:underline}.v17-pagination{display:flex;align-items:center;justify-content:center;gap:6px;padding:17px;border-top:1px solid var(--line)}.v17-pagination button{min-width:38px;height:38px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:#fff;font-size:11px;font-weight:900}.v17-pagination button.active{border-color:var(--green);color:#fff;background:var(--green)}.v17-pagination button:disabled{opacity:.45}.v17-empty,.v17-loading{display:grid;place-items:center;min-height:220px;padding:30px;text-align:center}.v17-empty-icon{width:64px;height:64px;display:grid;place-items:center;margin:0 auto 13px;border-radius:20px;background:var(--green-soft);font-size:26px}.v17-empty h3,.v17-loading h3{font-size:18px}.v17-empty p,.v17-loading p{max-width:470px;margin:7px auto;color:var(--muted);font-size:11px;line-height:1.65}.v17-spinner{width:34px;height:34px;margin:0 auto 12px;border:3px solid #d9ebe2;border-top-color:var(--green);border-radius:50%;animation:v17-spin .8s linear infinite}@keyframes v17-spin{to{transform:rotate(360deg)}}
.v17-gate{min-height:360px;display:flex;align-items:center;justify-content:center;gap:20px;padding:40px;border:1px solid #e7d7a4;border-radius:22px;background:radial-gradient(circle at 85% 20%,#fff0bd,transparent 35%),#fffaf0;box-shadow:var(--shadow-sm)}.v17-gate-icon{width:72px;height:72px;display:grid;place-items:center;flex:none;border-radius:22px;background:#fff0c3;font-size:30px}.v17-gate h2{margin-top:6px;font-size:25px}.v17-gate p{max-width:520px;margin:8px 0 16px;color:#6e6250;line-height:1.7}.v17-modal-open{overflow:hidden}.v17-modal-backdrop{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:18px;background:rgba(2,22,32,.72);backdrop-filter:blur(5px)}.v17-modal{width:min(760px,100%);max-height:calc(100vh - 36px);display:flex;flex-direction:column;overflow:hidden;border-radius:23px;background:#fff;box-shadow:0 32px 90px rgba(0,0,0,.3)}.v17-modal>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:19px 21px;border-bottom:1px solid var(--line)}.v17-modal>header h2{font-size:21px}.v17-modal-body{overflow:auto;padding:21px}.v17-modal>footer{display:flex;justify-content:flex-end;gap:9px;padding:15px 21px;border-top:1px solid var(--line);background:#fbfdfc}.v17-icon-button{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:#fff;font-size:20px}.v17-toast{position:fixed;z-index:260;right:22px;bottom:22px;max-width:min(400px,calc(100% - 32px));padding:13px 16px;border-radius:13px;color:#fff;background:var(--ink);box-shadow:0 18px 50px rgba(0,0,0,.22);font-size:12px;font-weight:800;opacity:0;transform:translateY(14px);pointer-events:none;transition:.2s}.v17-toast.show{opacity:1;transform:none}.v17-toast[data-type="success"]{background:#087946}.v17-toast[data-type="error"]{background:#a42838}
.v17-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.v17-stat{padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.v17-stat span{display:block;color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase}.v17-stat strong{display:block;margin-top:5px;font-family:"Space Grotesk";font-size:22px}.v17-progress{height:9px;overflow:hidden;border-radius:99px;background:#e6efeb}.v17-progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),#68d79f)}.v17-callout{padding:19px;border-radius:20px;color:#fff;background:linear-gradient(135deg,var(--ink),#0c5d71)}.v17-callout .v17-eyebrow{color:#99dbc1}.v17-callout h2{margin-top:6px;font-size:21px}.v17-callout p{margin-top:7px;color:#d0e2e8;font-size:11px;line-height:1.65}.v17-callout .button{margin-top:13px;border-color:rgba(255,255,255,.2);color:#fff;background:rgba(255,255,255,.1)}
.v17-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:1120px){.v17-grid{grid-template-columns:1fr}.v17-topbar .main-nav{display:none}.v17-topbar .mobile-button{display:grid}.v17-stat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.v17-hero{padding-top:30px}.v17-hero-row,.v17-context{display:grid}.v17-hero-actions,.v17-context-actions{justify-content:start}.v17-form-grid{grid-template-columns:1fr}.v17-field.full{grid-column:auto}.v17-search{min-width:0;width:100%}.v17-toolbar-group{width:100%}.v17-toolbar-group>*{flex:1}.v17-gate{display:grid;text-align:center}.v17-gate-icon{margin:auto}.v17-modal>footer{display:grid}.v17-modal>footer>*{width:100%}.v17-card-head{display:grid}.v17-tabs{max-width:100%;overflow:auto}}
@media(max-width:480px){.v17-stat-grid{grid-template-columns:1fr}.v17-page{padding-bottom:40px}.v17-card-body,.v17-card-head{padding:16px}.v17-person{min-width:155px}.v17-topbar .profile-copy{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Context cards: keep the status glyph optically centered and isolate label styling. */
.v17-context-main{min-width:0}
.v17-context-main>div{min-width:0}
.v17-context .v17-context-icon{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  color:var(--green-dark);
  font-size:20px;
  line-height:1;
  text-align:center;
}
.v17-context .v17-context-icon>svg{
  display:block;
  width:19px;
  height:19px;
  margin:auto;
}
.v17-context-main>div>span{
  display:block;
  color:var(--muted);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}
.v17-context-main strong{overflow-wrap:anywhere}

/* U09: controles de fechamento consistentes em todos os modais V17. */
.v17-icon-button{width:44px;height:44px;display:grid;place-items:center;flex:none;padding:0;line-height:1;cursor:pointer;transition:color .18s,border-color .18s,background .18s,box-shadow .18s}
.premium-block{padding:0 16px 16px}
