/* O painel compartilha a estrutura e os componentes do Painel Unidade. */
body.theme-afiliado {
    --accent:#c65c25;
    --soft:#fff0e6;
    --accent-border:#f1cfb8;
    --accent-light:#ffd1b2;
    --accent-rgb:198,92,37;
    --panel:#513021;
    --canvas:#fff4ec;
    --ring:#d9773f;
}

.button-link{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:11px 17px;font-size:13px;font-weight:600;color:#fff}
.button-link:hover{color:#fff;filter:brightness(.94)}
.affiliate-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.affiliate-stats .stat-card{min-width:0}
.affiliate-stats .stat-card strong{font-size:25px;overflow-wrap:anywhere}
.affiliate-stats .stat-icon{font-size:27px;line-height:1}
.affiliate-section{margin-bottom:26px;scroll-margin-top:22px}
.affiliate-link{width:310px;max-width:100%;border:1px solid #dce2eb;border-radius:8px;background:#fcfcfe;padding:10px;color:#42516a;font-size:11px}
.affiliate-finance{scroll-margin-top:22px}
.affiliate-finance>.page-heading{margin-top:36px}
.affiliate-finance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:26px}
.affiliate-finance-card{min-width:0}
.affiliate-card-body{padding:0 25px 25px}
.affiliate-summary{margin:0}
.affiliate-summary>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid #eef1f6}
.affiliate-summary dt{font-size:12px;color:#7b8798}
.affiliate-summary dd{margin:0;font-size:13px;font-weight:650;white-space:nowrap}
.affiliate-summary .affiliate-total{margin-top:10px;padding:16px;background:var(--soft);border:1px solid var(--accent-border);border-radius:10px}
.affiliate-summary .affiliate-total dt,.affiliate-summary .affiliate-total dd{color:var(--accent);font-weight:700}
.affiliate-summary .affiliate-total dd{font-size:20px}
.affiliate-form{display:grid;gap:17px}
.affiliate-form label{display:grid;gap:8px;font-size:11px;font-weight:600;color:#657286}
.affiliate-form input,.affiliate-form textarea{width:100%;min-width:0;border:1px solid #dce2eb;border-radius:8px;padding:11px 12px;font:inherit;font-size:13px;color:#34435b;background:#fff}
.affiliate-form textarea{resize:vertical}
.affiliate-form button{justify-self:start}
.affiliate-form button:disabled{opacity:.55;cursor:not-allowed}
.affiliate-section td form{margin:0}
.affiliate-section td .primary,.affiliate-section td .secondary{white-space:nowrap}
.login-message.error{display:block}
.theme-afiliado .login-password-toggle{top:50%;bottom:auto;right:4px;height:40px;transform:translateY(-50%)}
.theme-afiliado .login-password-toggle svg{width:20px;height:20px}

@media(max-width:1100px){.affiliate-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.affiliate-finance-grid{grid-template-columns:1fr}}
@media(max-width:620px){.affiliate-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.affiliate-stats .stat-card strong{font-size:20px}.affiliate-card-body{padding:0 20px 20px}.affiliate-section{margin-bottom:18px}.affiliate-link{width:230px}}

/* Navegação compacta em uma área central, com uma seção por aba. */
body.theme-afiliado{background:#f3f5f8}
.workspace.affiliate-box{width:min(1140px,calc(100% - 36px));max-width:none;min-height:calc(100dvh - 48px);margin:24px auto;background:#fafbfc;border:1px solid #e6e9ef;border-radius:18px;box-shadow:0 16px 48px #23354b0c;overflow:hidden}
.affiliate-box .affiliate-topbar{min-height:78px;padding:16px 28px;background:#fff}
.affiliate-identity{display:flex;align-items:center;gap:18px;font-size:12px;font-weight:650;color:#667285}
.affiliate-identity a{display:flex;align-items:center;padding-right:18px;border-right:1px solid #e9edf2}
.affiliate-identity img{width:135px;height:auto}
.affiliate-box main{width:100%;max-width:none;padding:22px 28px 30px}
.affiliate-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:16px 28px;background:#fff;border-bottom:1px solid #e9edf2}
.affiliate-tab{display:flex;align-items:center;gap:11px;min-width:0;padding:12px;border:1px solid #e7ebf0;border-radius:12px;color:#647085;background:#fff;transition:border-color .15s,background .15s,transform .15s}
.affiliate-tab:hover{border-color:var(--accent-border);background:#fffaf6;transform:translateY(-1px)}
.affiliate-tab.is-active{border-color:var(--accent-border);background:var(--soft);color:var(--accent)}
.affiliate-tab .tab-icon{display:grid;place-items:center;flex:0 0 37px;width:37px;height:37px;border-radius:9px;background:#f2f4f7;color:#8b96a5}
.affiliate-tab.is-active .tab-icon{background:#fff;color:var(--accent)}
.affiliate-tab svg{width:19px;height:19px}
.affiliate-tab strong,.affiliate-tab small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.affiliate-tab strong{font-size:11px;font-weight:700;color:inherit}
.affiliate-tab small{font-size:10px;color:#a2aab6;margin-top:2px}
.affiliate-tab.is-active small{color:#bc8d70}
.affiliate-box .page-heading{margin:0 0 18px}
.affiliate-box .page-heading h1{font-size:24px}
.affiliate-box .stat-card{padding:17px;gap:12px}
.affiliate-box .stat-card strong{font-size:23px}
.affiliate-box .stat-icon{width:36px;height:36px}
.affiliate-box .affiliate-stats{margin-bottom:18px;gap:12px}
.affiliate-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.affiliate-overview-card{padding:19px 22px}
.affiliate-overview-card .eyebrow{margin-bottom:8px}
.affiliate-overview-card>strong{font-size:24px;line-height:1.2}
.affiliate-overview-card>p:not(.eyebrow){font-size:11px;color:#8a95a5;line-height:1.5;margin:8px 0 10px}
.affiliate-overview-card>a{font-size:11px;font-weight:650}
.affiliate-box .affiliate-section{margin:0}
.affiliate-box .directory-header{padding:19px 22px}
.affiliate-box .directory-header h2{font-size:15px}
.affiliate-box th{padding:12px 17px}
.affiliate-box td{padding:12px 17px}
.affiliate-box .empty{padding:35px 18px}
.affiliate-box .directory-footer{padding:13px 22px}
.affiliate-box .affiliate-finance>.page-heading{margin:0 0 18px}
.affiliate-box .affiliate-finance-grid{gap:14px;margin-bottom:18px}
.affiliate-box .affiliate-card-body{padding:0 22px 20px}
.affiliate-pagination{align-items:center}
.affiliate-pagination nav{display:flex;align-items:center;gap:6px}
.affiliate-pagination nav a{display:inline-flex;min-width:29px;justify-content:center;padding:6px 8px;border-radius:6px;color:#647085;font-size:11px}
.affiliate-pagination nav a:hover,.affiliate-pagination nav a.current{background:var(--soft);color:var(--accent)}
.affiliate-box .page-footer{padding:16px 28px;border-top:1px solid #e9edf2;background:#fff}
.affiliate-box .account{gap:8px}
.affiliate-box .account-badge{display:flex;align-items:center;gap:9px;min-width:0;padding:5px 13px 5px 5px;border:1px solid var(--accent);border-radius:999px;background:#fff;color:#34435b}
.affiliate-box .account-badge .avatar{flex:0 0 34px;width:34px;height:34px}
.affiliate-box .account-badge strong{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600}
.affiliate-box .account>form{margin:0;padding:0;border:0}

@media(max-width:900px){.affiliate-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.affiliate-box .affiliate-finance-grid{grid-template-columns:1fr}}
@media(max-width:620px){.workspace.affiliate-box{width:100%;min-height:100dvh;margin:0;border:0;border-radius:0}.affiliate-box .affiliate-topbar{padding:14px 16px}.affiliate-identity img{width:102px}.affiliate-identity{gap:10px}.affiliate-identity a{padding-right:10px}.affiliate-tabs{padding:12px 16px;gap:8px}.affiliate-tab{padding:10px;gap:8px}.affiliate-tab .tab-icon{width:31px;height:31px;flex-basis:31px}.affiliate-tab strong{font-size:10px}.affiliate-tab small{font-size:9px}.affiliate-box main{padding:18px 16px 24px}.affiliate-overview-grid{grid-template-columns:1fr}.affiliate-box .page-heading h1{font-size:22px}.affiliate-box .stat-card{padding:13px}.affiliate-box .stat-card strong{font-size:21px}.affiliate-pagination{flex-wrap:wrap;justify-content:center}.affiliate-pagination nav{flex-wrap:wrap;justify-content:center}}

.affiliate-vacancy-name{display:block;max-width:350px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650}
.affiliate-section td:first-child{min-width:180px}
.affiliate-section td .affiliate-add-button{padding:5px 8px;border-radius:6px;font-size:10px;min-height:25px}
.affiliate-finance-card{margin-bottom:18px}
.affiliate-withdraw-action{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:15px}
.affiliate-withdraw-action span{font-size:11px;color:#8a95a5}
.affiliate-withdraw-action button:disabled{opacity:.55;cursor:not-allowed}
.affiliate-dialog{width:min(430px,calc(100% - 30px));padding:24px;border:1px solid #e7ebf1;border-radius:14px;box-shadow:0 24px 80px #17243c38;color:#243044}
.affiliate-dialog::backdrop{background:#1c29446b}
.affiliate-dialog h2{font-size:18px;margin:0 0 16px}
.affiliate-dialog p{font-size:13px;line-height:1.65;color:#647085}
.affiliate-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}
.affiliate-dialog-actions button{font-size:12px}
.affiliate-box .notice a{overflow-wrap:anywhere;font-weight:650;text-decoration:underline}
.affiliate-link-cell{display:flex;align-items:center;gap:7px;min-width:0}
.affiliate-link-cell .affiliate-link{width:240px;min-width:180px;flex:0 1 240px}
.affiliate-section td .affiliate-copy-link{padding:7px 9px;border-radius:7px;font-size:10px;white-space:nowrap}
@media(min-width:901px){
    .workspace.affiliate-box{height:calc(100dvh - 48px);min-height:520px;display:flex;flex-direction:column}
    .affiliate-box .affiliate-topbar,.affiliate-box .affiliate-tabs,.affiliate-box .page-footer{flex-shrink:0}
    .affiliate-box main{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
    .affiliate-box main>.affiliate-section{flex:1;min-height:0;display:flex;flex-direction:column}
    .affiliate-box main>.affiliate-section>.table-scroll{flex:1;min-height:0;overflow:auto}
    .affiliate-box .affiliate-finance{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:5px}
}
@media(max-width:900px){
    .workspace.affiliate-box{height:auto;overflow:visible}
    .affiliate-box main{overflow:visible}
    .affiliate-vacancy-name{max-width:260px}
}
@media(max-width:620px){
    .affiliate-box .account>strong{display:none}
    .affiliate-vacancy-name{max-width:200px}
    .affiliate-dialog-actions{flex-wrap:wrap}
}
.affiliate-box .account-badge strong{max-width:180px}
@media(max-width:620px){.affiliate-box .affiliate-topbar{flex-wrap:wrap;gap:10px}.affiliate-box .account{width:100%;flex-wrap:wrap;justify-content:flex-end}.affiliate-box .account-badge strong{max-width:120px}}
