:root{
    --bg:#0F1115;
    --sidebar:#171A21;
    --card:#1E232D;
    --gold:#C8A44D;
    --text:#ECECEC;
    --muted:#9FA6B2;
    --border:#2B303A;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

a {
	text-decoration: none;
}

body{
    background:var(--bg);
    color:var(--text);
    font-family:"Segoe UI", sans-serif;
}

textarea,
input,
select,
button{
    font-family:inherit;
}


.sidebar{
    position:fixed;
    width:220px;
    height:100vh;
    background:linear-gradient(180deg,#121722,#0b0f16);
    border-right:1px solid rgba(200,164,77,.16);
    box-shadow:12px 0 35px rgba(0,0,0,.25);
}

.sidebar-header{
    text-align:center;
    padding:24px 15px 20px;
    border-bottom:1px solid rgba(200,164,77,.14);
}

.sidebar-header img{
    width:92px;
    height:auto;
    margin-bottom:12px;
    filter:drop-shadow(0 0 18px rgba(200,164,77,.18));
}

.sidebar-header h3{
    font-size:18px;
    letter-spacing:3px;
    color:var(--gold);
    margin-bottom:5px;
}

.sidebar-header span{
    font-size:11px;
    color:var(--muted);
    text-transform:uppercase;
    letter-spacing:2px;
}

.sidebar ul{
    list-style:none;
    padding:18px 14px;
}

.sidebar li{
    margin-bottom:9px;
}

.sidebar a{
    display:flex;
    align-items:center;
    justify-content:center;
    padding:12px 15px;
    border-radius:12px;
    background:rgba(200,164,77,.07);
    border:1px solid rgba(200,164,77,.22);
    color:#d9bd68;
    text-decoration:none;
    transition:.25s ease;
    font-size:14px;
    font-weight:600;
}

.sidebar a:hover,
.sidebar a.active{
    background:linear-gradient(135deg,#c8a44d,#a9822e);
    color:#101010;
    border-color:transparent;
}

.sidebar-exit{
    padding:18px 14px;
    border-top:1px solid rgba(200,164,77,.12);
}

.sidebar-exit a{
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0;
    margin:0;
    border-radius:12px;
    background:rgba(125,30,30,.20);
    border:1px solid rgba(255,100,100,.25);
    color:#ff8b8b;
    font-weight:600;
}

.sidebar-exit a:hover{
    background:rgba(125,30,30,.34);
    color:#fff;
}

.content{
    margin-left:220px;
    padding:35px;
}

.card{
    background:var(--card);
    border:1px solid var(--border);
    border-radius:18px;
    padding:20px;
    min-height:140px;
    box-shadow:0 10px 30px rgba(0,0,0,.30);
}

.card h3{
    color:var(--muted);
    font-size:14px;
    margin-bottom:10px;
}

.card h2{
    color:var(--gold);
    font-size:28px;
}

.dashboard-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:20px;
    margin-top:20px;
}

.form-group{
    margin-bottom:18px;
}

.form-group label{
    display:block;
    margin-bottom:6px;
    color:var(--muted);
}

.form-group input,
.form-group select,
.form-group textarea{
    width:100%;
    padding:12px;
    border-radius:10px;
    border:1px solid var(--border);
    background:#11151C;
    color:white;
}

.btn{
    background:var(--gold);
    color:#000;
    border:none;
    border-radius:10px;
    padding:14px 22px;
    font-weight:700;
    cursor:pointer;
    transition:.2s;
}

.btn:hover{
    transform:translateY(-2px);
}

.table-sophyx{
    width:100%;
    border-collapse:collapse;
}

.table-sophyx th{
    background:#242A34;
    color:var(--gold);
    padding:15px;
	white-space:nowrap;
}

.table-sophyx td{
    padding:15px;
    border-bottom:1px solid var(--border);
	white-space:nowrap;
}

.table-sophyx tr:hover{
    background:#20242D;
}

.topbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:30px;
}

.login-page{
    min-height:100vh;
    height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    background:radial-gradient(circle at top, rgba(200,164,77,.18), transparent 35%),linear-gradient(135deg,#080b11,#121722 55%,#080b11);
    padding:16px;
    overflow:hidden;
}

.login-card{
    width:100%;
    max-width:500px;
    background:rgba(25,32,45,.92);
    border:1px solid rgba(255,255,255,.08);
    border-radius:22px;
    padding:38px 42px;
    box-shadow:0 25px 70px rgba(0,0,0,.45),0 0 45px rgba(200,164,77,.08);
	backdrop-filter:blur(12px);
    animation:loginFade .5s ease;
}

.login-logo{
    text-align:center;
    margin-bottom:28px;
}

.login-logo img{
    width:150px;
    max-width:60%;
    filter:drop-shadow(0 10px 25px rgba(200,164,77,.18));
}

.login-title{
    text-align:center;
    color:#fff;
    font-size:28px;
    margin:0;
    font-weight:700;
}

.login-subtitle{
    text-align:center;
    color:var(--muted);
    margin:10px 0 34px;
    font-size:14px;
    letter-spacing:.3px;
}

.login-card .form-group{
    margin-bottom:22px;
}

.login-card label{
    display:block;
    margin-bottom:8px;
    color:#b9c6d8;
    font-weight:500;
}

.login-card input{
    width:100%;
    height:54px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.09);
    background:#10151d;
    color:#fff;
    padding:0 16px;
    font-size:15px;
    transition:.2s ease;
}

.login-card input:focus{
    outline:none;
    border-color:#c8a44d;
    box-shadow:0 0 0 3px rgba(200,164,77,.15);
}

.login-card .btn{
    width:100%;
    height:54px;
    border-radius:12px;
    font-weight:700;
    margin-top:8px;
    transition:.2s ease;
}

.login-card .btn:hover{
    transform:translateY(-1px);
    box-shadow:0 10px 25px rgba(200,164,77,.20);
}

.login-alert{
    background:rgba(125,30,30,.95);
    color:#fff;
    padding:12px 14px;
    border-radius:10px;
    margin-bottom:22px;
    font-size:14px;
    text-align:center;
}

@keyframes loginFade{
    from{
        opacity:0;
        transform:translateY(15px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

body.login-body{
    min-height:100vh;
    background:radial-gradient(circle at top, rgba(200,164,77,.18), transparent 35%),linear-gradient(135deg,#080b11,#121722 55%,#080b11);
	overflow:hidden;
}

body.login-body .login-page{
    min-height:calc(100vh - 72px);
    height:auto;
    background:none;
	padding:12px;
}

body.login-body .footer-sophyx{
    height:72px;
    margin-top:0;
    padding:0 50px;
    display:flex;
    align-items:center;
}

body.login-body .footer-content{
    width:100%;
}

body:not(.login-body){
    min-height:100vh;
}

body:not(.login-body) .content{
    min-height:100vh;
    display:flex;
    flex-direction:column;
}

body:not(.login-body) .footer-sophyx{
    margin-top:auto;
}

.sidebar-header{
    text-align:center;
    padding:22px 15px;
    border-bottom:1px solid var(--border);
}

.sidebar-header img{
    width:90px;
	height:auto;
    margin-bottom:10px;
}

.sidebar-header h3{
    font-size:18px;
    letter-spacing:2px;
    color:var(--gold);
    margin-bottom:4px;
}

.sidebar-header span{
    font-size:12px;
    color:var(--muted);
    text-transform:uppercase;
    letter-spacing:2px;
}

.topbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:30px;
    padding-bottom:20px;
    border-bottom:1px solid var(--border);
}

.topbar h2{
    color:var(--text);
    font-size:26px;
    margin-bottom:5px;
}

.topbar small{
    color:var(--muted);
}

.topbar-user{
    color:var(--gold);
    font-weight:600;
}

.dashboard-bottom{
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:20px;
    margin-top:25px;
}

.stats-list{
    display:flex;
    flex-direction:column;
    gap:15px;
}

.stats-list div{
    display:flex;
    justify-content:space-between;
    padding:12px;
    border-bottom:1px solid var(--border);
}

.stats-list strong{
    color:var(--gold);
}

.table-wrapper{
    overflow-x:auto;
}

.form-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px;
}

.filters{
    display:flex;
    gap:15px;
    align-items:end;
    flex-wrap:wrap;
}

.filters select,
.filters input{
    min-width:220px;
}

.filters .btn{
    height:50px;
}

.relatorio-filtros{
    display:flex;
    gap:20px;
    width:100%;
    align-items:flex-end;
}

.relatorio-filtros select{
    flex:2;
}

.relatorio-filtros input{
    flex:1;
}

.relatorio-filtros .btn{
    width:180px;
    flex:none;
}

.relatorio-filtros .form-group{
    margin-bottom:0;
}

.relatorio-filtros .funcionario{
    flex:4;
}

.relatorio-filtros .data{
    flex:2;
}

.relatorio-filtros .botao{
    width:220px;
}

select{
    background-color:#11151C;
    color:#FFF;
    border:1px solid var(--border);
    border-radius:10px;
    padding:14px;
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23C8A44D' viewBox='0 0 16 16'%3E%3Cpath d='M1.5 5.5l6 6 6-6' stroke='%23C8A44D' stroke-width='2' fill='none'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 15px center;
    padding-right:40px;
}

select:hover{
    border-color:var(--gold);
}

.badge-status{
    background:#1f3a29;
    color:#4fd07d;
    padding:6px 12px;
    border-radius:20px;
    font-size:13px;
    font-weight:600;
}

.btn-small{
    display:inline-block;
    padding:8px 14px;
    border-radius:8px;
    background:var(--gold);
    color:#000;
    text-decoration:none;
    font-size:13px;
    font-weight:600;
	margin-right: 3px;
}

.btn-small:hover{
    transform:translateY(-2px);
}

.btn-small-secondary{
	text-decoration:none;
	font-size:13px;
    color:white;
}

.btn-small-secondary:hover{
    font-weight:600;
	color:var(--gold);
}

.btn-small,
.btn-small:visited{
    color:#000 !important;
    text-decoration:none !important;
}

.btn-small-secondary,
.btn-small-secondary:visited{
    color:var(--gold) !important;
    text-decoration:none !important;
}

.audit-login{
    color:#39d353;
    font-weight:600;
}

.audit-logout{
    color:#ff6b6b;
    font-weight:600;
}

.audit-relatorio{
    color:var(--gold);
    font-weight:600;
}

.audit-cliente{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(200,164,77,.14);
    border:1px solid rgba(200,164,77,.28);
    color:#f0d37d;
    font-size:11px;
    font-weight:800;
    letter-spacing:.4px;
}

.audit-documento{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(80,140,255,.14);
    border:1px solid rgba(80,140,255,.28);
    color:#9fc0ff;
    font-size:11px;
    font-weight:800;
    letter-spacing:.4px;
}

.alerta{
    background:#1f2f1f;
    border:1px solid #2e7d32;
    color:#9be79b;
    padding:15px;
    border-radius:10px;
    margin-bottom:10px;
    font-weight:600;
}

.btn-small{
    display:inline-block;
    padding:8px 12px;
    border-radius:8px;
    text-decoration:none;
    background:var(--gold);
    color:#000;
    font-size:13px;
    font-weight:600;
    margin-right:5px;
}

.btn-danger{
    background:#9c2d2d;
    color:#fff;
}

.btn-success{
    background:#2d7a42;
    color:#fff;
}

.badge-success{
    background:#1f5f31;
    color:#fff;
    padding:6px 10px;
    border-radius:20px;
    font-size:12px;
}

.badge-danger{
    background:#7a2525;
    color:#fff;
    padding:6px 10px;
    border-radius:20px;
    font-size:12px;
}

.badge-info{
    background:#2b303a;
    color:#c8a44d;
    padding:8px 12px;
    border-radius:8px;
    font-size:12px;
    font-weight:600;
}

.badge-warning{
    background:#c8a44d;
    color:#000;
	padding:6px 10px;
    border-radius:20px;
    font-size:12px;
}

.report-summary{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(120px, max-content));
    gap:22px 38px;
    margin-top:15px;
    align-items:start;
}

.report-summary div{
    min-width:120px;
    max-width:160px;
    padding:0;
}

.cliente-card{
    background:#1d2430;
    border:1px solid #303848;
    border-radius:12px;
    padding:20px;
    margin-bottom:20px;
}

.cliente-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px;
}

.full-width{
    grid-column:1 / -1;
}

.status-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px 35px;
    margin-top:15px;
}

.status-grid label{
    display:flex;
    align-items:center;
    gap:8px;
}
.switch-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:12px;
	padding:12px 15px;
	gap:15px;
}

.switch{
    position:relative;
    display:inline-block;
    width:52px;
    height:28px;
}

.switch input{
    opacity:0;
    width:0;
    height:0;
    display:none;
}

.slider{
    position:absolute;
    cursor:pointer;
    inset:0;
    background:#555;
    border-radius:30px;
    transition:.3s;
}

.slider:before{
    content:"";
    position:absolute;
    width:22px;
    height:22px;
    left:3px;
    top:3px;
    background:white;
    border-radius:50%;
    transition:.3s;
}

input:checked + .slider{
    background:#c8a44d;
}

input:checked + .slider:before{
    transform:translateX(24px);
}

.add-cliente-card{
    border:2px dashed #c8a44d;
    border-radius:12px;
    padding:40px;
    text-align:center;
    cursor:pointer;
    transition:.3s;
    color:#c8a44d;
    margin-bottom:20px;
}

.add-cliente-card:hover{
    background:rgba(200,164,77,.08);
    transform:translateY(-2px);
}

.add-cliente-card .icone{
    font-size:40px;
    font-weight:bold;
    margin-bottom:10px;
}

.textarea-relatorio{
    width:100%;
    min-height:180px;
    padding:15px;
    border:1px solid #d9d9d9;
    border-radius:10px;
    background:#fafafa;
    font-size:14px;
    line-height:1.6;
    resize:vertical;
    box-sizing:border-box;
    transition:all .2s ease;
}

.textarea-relatorio:focus{
    outline:none;
    border-color:#c8a44d;
    box-shadow:0 0 0 3px rgba(200,164,77,.15);
}

.report-view-header{
    margin-bottom:25px;
}

.cliente-view-card{
    background:#1d2430;
    border:1px solid var(--border);
    border-radius:16px;
    padding:22px;
    margin-bottom:20px;
    box-shadow:0 10px 30px rgba(0,0,0,.18);}

.cliente-view-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
    border-bottom:1px solid var(--border);
    padding-bottom:15px;
    margin-bottom:15px;
}

.cliente-view-header h3{
    margin:0;
    color:var(--text);
    font-size:20px;
}

.cliente-tipo{
    display:inline-block;
    margin-top:6px;
    color:var(--gold);
    font-size:12px;
    font-weight:700;
    letter-spacing:.5px;
}

.cliente-empresa{
    background:#151a22;
    border:1px solid var(--gold);
    box-shadow:0 0 0 3px rgba(200,164,77,.15);    
    padding:12px 15px;
    border-radius:10px;
    margin-bottom:15px;
    color:var(--text);
    font-weight:600;
}

.cliente-info-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:12px;
    margin-bottom:15px;
}

.cliente-info-grid div{
    background:#151a22;
    border:1px solid var(--border);
    border-radius:10px;
    padding:12px;
}

.cliente-info-grid small,
.cliente-text-block small{
    display:block;
    color:var(--muted);
    font-size:12px;
    margin-bottom:5px;
}

.cliente-info-grid strong{
    color:var(--text);
    font-size:14px;
    word-break:break-word;
}

.cliente-tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:15px;
}

.cliente-tags span{
    background:rgba(200,164,77,.12);
    color:var(--gold);
    border:1px solid rgba(200,164,77,.35);
    padding:6px 10px;
    border-radius:20px;
    font-size:12px;
    font-weight:600;
}

.cliente-text-block{
    background:#151a22;
    border:1px solid var(--border);
    border-radius:10px;
    padding:14px;
    margin-top:12px;
}

.cliente-text-block p{
    color:var(--text);
    line-height:1.6;
    margin:0;
}

.info-relatorio-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:12px;
}

.info-relatorio-grid div{
    background:#151a22;
    border:1px solid var(--border);
    border-radius:10px;
    padding:14px;
}

.info-relatorio-grid small{
    display:block;
    color:var(--muted);
    font-size:12px;
    margin-bottom:6px;
}

.info-relatorio-grid strong{
    color:var(--text);
    font-size:14px;
}

.alerta-danger{
    background:#7d1e1e;
    color:#fff;
    padding:12px 15px;
    border-radius:8px;
    margin-top:10px;
    font-weight:600;
}

.switch input:checked + .slider{
    background:#c8a44d;
}

.switch input:disabled + .slider{
    opacity:.7;
    cursor:not-allowed;
}

.switch input:checked:disabled + .slider{
    background:#7d1e1e;
}

.footer-sophyx{
    margin-top:40px;
    padding:22px 0 10px;
}

.footer-content{
    width:100%;
    padding-top:18px;
    border-top:1px solid rgba(200,164,77,.10);
    text-align:center;
    color:#8e98aa;
    font-size:13px;
}

.footer-dev{
    margin-top:6px;
    color:#b9c6d8;
}

.footer-dev strong{
    color:#d8bd69;
}

body:not(.login-body) .footer-sophyx{
    margin-right:160px;
}

.acoes-relatorio{
    display:flex;
    gap:12px;
    align-items:center;
    margin-top:20px;
    flex-wrap:wrap;
}

.acoes-relatorio .btn{
    margin:0;
}

.empty-state{
    padding:20px 0;
}

.empty-state p{
    margin:0 0 20px 0;
}

.acoes-relatorio{
    display:flex;
    gap:12px;
    align-items:center;
    margin-top:20px;
    flex-wrap:wrap;
}

.acoes-relatorio .btn,
.acoes-relatorio .btn-secondary{
    width:auto;
    text-decoration:none;
}

.construction-body{
    min-height:100vh;
    background:
    radial-gradient(circle at top, rgba(200,164,77,.18), transparent 32%),
    radial-gradient(circle at bottom right, rgba(200,164,77,.08), transparent 34%),
    linear-gradient(135deg,#070a10,#121722 55%,#070a10);
    display:flex;
    flex-direction:column;
    overflow-x:hidden;
}

.construction-wrapper{
    flex:1;
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:46px 22px 30px;
    position:relative;
}

.construction-wrapper::before{
    content:'';
    position:absolute;
    inset:0;
    background-image:
    linear-gradient(rgba(200,164,77,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(200,164,77,.035) 1px, transparent 1px);
    background-size:54px 54px;
    mask-image:radial-gradient(circle at center, black, transparent 72%);
    pointer-events:none;
}

.premium-construction{
    position:relative;
    overflow:hidden;
}

.construction-card{
    width:100%;
    max-width:820px;
    padding:58px 54px 50px;
    text-align:center;
    background:
    linear-gradient(180deg, rgba(30,35,45,.94), rgba(16,21,30,.94));
    border:1px solid rgba(200,164,77,.22);
    border-radius:32px;
    box-shadow:
    0 35px 100px rgba(0,0,0,.58),
    0 0 90px rgba(200,164,77,.08),
    inset 0 1px 0 rgba(255,255,255,.04);
    backdrop-filter:blur(14px);
    animation:loginFade .55s ease;
}

.construction-card::before{
    content:'';
    position:absolute;
    inset:1px;
    border-radius:31px;
    background:
    linear-gradient(135deg, rgba(200,164,77,.18), transparent 22%, transparent 78%, rgba(200,164,77,.10));
    pointer-events:none;
    opacity:.75;
}

.construction-bg-line{
    position:absolute;
    height:1px;
    width:420px;
    background:linear-gradient(90deg, transparent, rgba(200,164,77,.45), transparent);
    pointer-events:none;
}

.line-one{
    top:56px;
    left:-120px;
    transform:rotate(-18deg);
}

.line-two{
    right:-120px;
    bottom:92px;
    transform:rotate(-18deg);
}

.construction-logo-area{
    position:relative;
    width:188px;
    height:188px;
    margin:0 auto 32px;
}

.construction-logo-area::before{
    content:'';
    position:absolute;
    inset:-18px;
    border-radius:50%;
    border:1px solid rgba(200,164,77,.16);
    animation:pulseRing 2.8s ease-in-out infinite;
}

.construction-logo-area::after{
    content:'';
    position:absolute;
    inset:-34px;
    border-radius:50%;
    background:rgba(200,164,77,.09);
    filter:blur(30px);
    z-index:-1;
}

.construction-logo{
    width:188px;
    height:188px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:
    radial-gradient(circle at top, rgba(200,164,77,.12), transparent 42%),
    #050607;
    border:1px solid rgba(200,164,77,.58);
    box-shadow:
    0 0 44px rgba(200,164,77,.20),
    inset 0 0 34px rgba(200,164,77,.08);
}

.construction-logo img{
    width:148px;
    max-width:80%;
    filter:drop-shadow(0 0 20px rgba(200,164,77,.28));
}

.construction-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 18px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.22);
    color:#d8bd69;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2.6px;
    margin-bottom:22px;
}

.construction-card h1{
    color:#e7c86c;
    font-size:62px;
    line-height:1.05;
    font-weight:600;
    letter-spacing:12px;
    text-transform:uppercase;
    margin-bottom:24px;
    text-shadow:0 0 34px rgba(200,164,77,.18);
}

.construction-description{
    max-width:650px;
    margin:0 auto;
    color:#c9d1df;
    font-size:15px;
    line-height:1.9;
    letter-spacing:1.4px;
    font-weight:400;
}

.construction-status{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:12px;
    margin:30px auto 4px;
}

.construction-status div{
    display:flex;
    align-items:center;
    gap:8px;
    padding:9px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.035);
    border:1px solid rgba(200,164,77,.13);
    color:#b9c6d8;
    font-size:12px;
    font-weight:600;
}

.construction-status span{
    width:8px;
    height:8px;
    border-radius:50%;
    background:#c8a44d;
    box-shadow:0 0 12px rgba(200,164,77,.65);
}

.construction-divider{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    margin:34px 0 30px;
}

.construction-divider::before,
.construction-divider::after{
    content:'';
    width:125px;
    height:1px;
    background:linear-gradient(90deg,transparent,#c8a44d,transparent);
}

.construction-divider span{
    color:#d8bd69;
    font-size:14px;
    text-shadow:0 0 18px rgba(200,164,77,.35);
}

.construction-info-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-bottom:34px;
}

.construction-info-grid div{
    background:#151a22;
    border:1px solid rgba(200,164,77,.14);
    border-radius:14px;
    padding:14px 12px;
}

.construction-info-grid small{
    display:block;
    color:#8e98aa;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.4px;
    margin-bottom:5px;
}

.construction-info-grid strong{
    color:#f0d37d;
    font-size:13px;
    font-weight:600;
}

.construction-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:auto;
    min-width:210px;
    height:50px;
    padding:0 34px;
    text-decoration:none;
    box-shadow:0 14px 32px rgba(200,164,77,.16);
}

.construction-btn:hover{
    box-shadow:0 18px 42px rgba(200,164,77,.24);
}

.construction-body .footer-sophyx{
    width:100%;
    margin:0;
    padding:0 22px 22px;
}

.construction-body .footer-content{
    width:100%;
    max-width:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    gap:6px;
    padding-top:18px;
    border-top:1px solid rgba(200,164,77,.10);
}

.construction-body .footer-left{
    display:none;
}

.construction-body .footer-copy,
.construction-body .footer-dev{
    width:100%;
    position:static;
    transform:none;
    right:auto;
    top:auto;
    justify-self:unset;
    text-align:center;
}

.construction-body .footer-dev{
    margin-top:2px;
}

.docs-alert{
    padding:14px 16px;
    border-radius:12px;
    margin-bottom:18px;
    line-height:1.5;
    font-size:14px;
}

.docs-alert-success{
    background:rgba(200,164,77,.12);
    border:1px solid rgba(200,164,77,.45);
    color:#E7D49B;
}

.docs-alert-error{
    background:rgba(220,53,69,.12);
    border:1px solid rgba(220,53,69,.45);
    color:#FFB3B9;
}

.documentos-card{
    overflow:hidden;
}

.documentos-table .documento-titulo{
    color:#ECECEC;
    font-size:14px;
}

.documentos-table .muted{
    color:#9FA6B2;
    font-size:12px;
    margin-top:5px;
    line-height:1.4;
}

.documentos-table th{
    white-space:nowrap;
}

.documentos-table td{
    vertical-align:top;
}

.validade-atual{
    margin-bottom:8px;
}

.documentos-validade-form{
    display:flex;
    flex-direction:column;
    gap:7px;
    min-width:190px;
}

.documentos-validade-form input{
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:9px;
    padding:9px;
    font-size:12px;
    width:100%;
}

.documentos-validade-form input:focus{
    outline:none;
    border-color:#C8A44D;
}

.documentos-actions{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:7px;
    min-width:135px;
}

.documentos-actions a,
.documentos-actions button{
    width:100%;
    min-height:34px;
}

.documentos-inline-form{
    width:100%;
    margin:0;
}

.btn-small-danger{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:9px 13px;
    border-radius:10px;
    background:rgba(125,30,30,.22);
    border:1px solid rgba(255,100,100,.28);
    color:#ff8b8b;
    font-size:12px;
    font-weight:600;
    text-decoration:none;
    cursor:pointer;
    transition:.25s ease;
}

.btn-small-danger:hover{
    background:rgba(180,45,45,.32);
    color:#fff;
}

.documentos-card{
    padding:0;
    overflow:hidden;
}

.documentos-table{
    width:100%;
    border-collapse:collapse;
}

.documentos-table th{
    background:#242A34;
    color:var(--gold);
    padding:15px;
    text-align:left;
    font-size:13px;
    white-space:nowrap;
}

.documentos-table td{
    padding:15px;
    border-bottom:1px solid var(--border);
    color:var(--text);
    font-size:13px;
    vertical-align:top;
}

.documentos-table tr:hover{
    background:#20242D;
}

.documentos-actions .btn-small,
.documentos-actions .btn-small-secondary,
.documentos-actions .btn-small-danger{
    width:100%;
    min-height:36px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    margin:0;
}

.documentos-actions .btn-small-secondary{
    background:#151a22;
    border:1px solid rgba(200,164,77,.22);
    border-radius:10px;
    color:#d8bd69 !important;
    font-size:12px;
    font-weight:600;
    padding:9px 13px;
    transition:.25s ease;
}

.documentos-actions .btn-small-secondary:hover{
    background:rgba(200,164,77,.10);
    color:#fff !important;
}

.documentos-validade-form .btn-small{
    width:100%;
    margin:0;
    border:none;
}

.documentos-inline-form{
    display:block;
}

.docs-alert + .docs-alert{
    margin-top:-8px;
}

/* ==========================
   DOCUMENTOS CONTROLADOS - LAYOUT PREMIUM
========================== */

.docs-page-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
}

.docs-page-header h2{
    font-size:26px;
    color:var(--text);
    margin-bottom:6px;
}

.docs-page-header p{
    color:var(--muted);
    font-size:14px;
}

.docs-header-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.docs-main-btn,
.docs-back-btn{
    min-height:46px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 20px;
    border-radius:12px;
    font-size:13px;
    font-weight:700;
    text-decoration:none;
    transition:.25s ease;
}

.docs-main-btn{
    background:linear-gradient(135deg,#c8a44d,#b48a34);
    color:#101010;
    box-shadow:0 12px 28px rgba(200,164,77,.16);
}

.docs-back-btn{
    background:#151a22;
    color:#d8bd69;
    border:1px solid rgba(200,164,77,.22);
}

.docs-main-btn:hover,
.docs-back-btn:hover{
    transform:translateY(-2px);
}

.docs-panel{
    width:100%;
}

.docs-list{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.docs-item{
    display:grid;
    grid-template-columns:2.3fr 1.4fr 1.6fr 1fr 1.25fr;
    gap:18px;
    align-items:start;
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:20px;
    box-shadow:0 14px 38px rgba(0,0,0,.25);
}

.docs-main{
    display:flex;
    gap:14px;
    align-items:flex-start;
}

.docs-id{
    min-width:46px;
    height:34px;
    border-radius:10px;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.24);
    color:#d8bd69;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:12px;
    font-weight:700;
}

.docs-main h3{
    color:#fff;
    font-size:16px;
    margin-bottom:5px;
    line-height:1.3;
}

.docs-main p{
    color:#d5dbe6;
    font-size:13px;
    margin-bottom:8px;
    line-height:1.4;
    word-break:break-word;
}

.docs-meta{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.docs-meta span,
.docs-client span{
    color:#9FA6B2;
    font-size:12px;
    line-height:1.4;
}

.docs-client,
.docs-validity,
.docs-status-box{
    background:#151a22;
    border:1px solid rgba(255,255,255,.04);
    border-radius:14px;
    padding:14px;
}

.docs-client small,
.docs-validity small,
.docs-status-box small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:7px;
}

.docs-client strong,
.docs-validity strong{
    display:block;
    color:#fff;
    font-size:13px;
    line-height:1.4;
    margin-bottom:4px;
}

.docs-validity-form{
    display:flex;
    flex-direction:column;
    gap:8px;
    margin-top:10px;
}

.docs-validity-form input{
    width:100%;
    height:38px;
    background:#0F1115;
    border:1px solid #2B303A;
    border-radius:9px;
    color:#ECECEC;
    padding:0 10px;
    font-size:12px;
}

.docs-validity-form input:focus{
    outline:none;
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.docs-validity-form button{
    height:36px;
    border:none;
    border-radius:9px;
    background:#C8A44D;
    color:#101010;
    font-size:12px;
    font-weight:700;
    cursor:pointer;
}

.docs-status{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    font-size:11px;
    font-weight:800;
    margin-bottom:16px;
}

.docs-status-active{
    background:rgba(40,167,69,.18);
    color:#8BE39F;
}

.docs-status-expired{
    background:rgba(220,53,69,.18);
    color:#FF9BA5;
}

.docs-status-revoked{
    background:rgba(255,193,7,.18);
    color:#FFD666;
}

.docs-views-label{
    margin-top:4px;
}

.docs-views{
    display:block;
    color:#fff;
    font-size:14px;
}

.docs-actions{
    display:flex;
    flex-direction:column;
    gap:8px;
}

.docs-actions form{
    margin:0;
    width:100%;
}

.docs-action-primary,
.docs-action-secondary,
.docs-action-danger{
    width:100%;
    min-height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    border-radius:10px;
    padding:0 12px;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
    cursor:pointer;
    transition:.25s ease;
}

.docs-action-primary{
    background:#C8A44D;
    color:#101010;
    border:1px solid #C8A44D;
}

.docs-action-secondary{
    background:#151a22;
    color:#d8bd69;
    border:1px solid rgba(200,164,77,.24);
}

.docs-action-danger{
    background:rgba(125,30,30,.22);
    color:#ff8b8b;
    border:1px solid rgba(255,100,100,.28);
}

.docs-action-primary:hover,
.docs-action-secondary:hover,
.docs-action-danger:hover{
    transform:translateY(-2px);
}

.docs-action-secondary:hover{
    background:rgba(200,164,77,.10);
    color:#fff;
}

.docs-action-danger:hover{
    background:rgba(180,45,45,.32);
    color:#fff;
}

.docs-page-toolbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    margin-bottom:22px;
}

.docs-page-toolbar p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    margin:0;
}

.docs-admin-kpi-grid{
    display:grid !important;
    grid-template-columns:repeat(6,1fr);
    gap:16px;
    margin:0 0 22px 0;
}

.docs-admin-kpi{
    display:block;
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:18px;
    padding:18px;
    min-height:118px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.docs-admin-kpi span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.8px;
    margin-bottom:10px;
}

.docs-admin-kpi strong{
    display:block;
    color:#F0D37D;
    font-size:28px;
    line-height:1.1;
    margin-bottom:8px;
}

.docs-admin-kpi small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.docs-admin-kpi-success{
    border-color:rgba(40,167,69,.25);
}

.docs-admin-kpi-success strong{
    color:#8BE39F;
}

.docs-admin-kpi-warning{
    border-color:rgba(255,193,7,.25);
}

.docs-admin-kpi-warning strong{
    color:#FFD666;
}

.docs-admin-kpi-danger{
    border-color:rgba(220,53,69,.28);
}

.docs-admin-kpi-danger strong{
    color:#FF9BA5;
}

.docs-admin-kpi-video{
    border-color:rgba(100,181,246,.24);
}

.docs-admin-kpi-video strong{
    color:#90CAF9;
}

/* ==========================
   NOVO DOCUMENTO CONTROLADO
========================== */

.docs-upload-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 320px;
    gap:22px;
    align-items:start;
}

.docs-upload-card{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:24px;
    box-shadow:0 18px 50px rgba(0,0,0,.28);
}

.docs-upload-card-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:22px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.docs-upload-card-header span{
    display:block;
    color:var(--gold);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:2px;
    font-weight:700;
    margin-bottom:6px;
}

.docs-upload-card-header h3{
    color:var(--text);
    font-size:20px;
    margin:0;
}

.docs-upload-card-header strong{
    min-width:58px;
    height:58px;
    border-radius:50%;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.32);
    color:#d8bd69;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:13px;
    letter-spacing:1px;
}

.docs-upload-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}

.docs-full{
    grid-column:1 / -1;
}

.docs-upload-field label{
    display:block;
    color:#d8bd69;
    font-size:13px;
    font-weight:700;
    margin-bottom:8px;
}

.docs-upload-field input{
    width:100%;
    min-height:46px;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:0 14px;
    font-size:14px;
    outline:none;
    transition:.25s ease;
}

.docs-upload-field input[type="file"]{
    padding:12px;
    height:auto;
}

.docs-upload-field input:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.docs-upload-field small{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    line-height:1.5;
    margin-top:7px;
}

.docs-upload-cis{
    background:#151a22;
    border:1px solid rgba(200,164,77,.14);
    border-radius:16px;
    padding:16px;
}

.docs-upload-cis label{
    display:flex;
    align-items:center;
    gap:10px;
    color:#ECECEC;
    font-size:14px;
    font-weight:700;
    cursor:pointer;
}

.docs-upload-cis input{
    width:18px;
    height:18px;
    accent-color:#C8A44D;
    flex:none;
}

.docs-upload-cis p{
    color:#9FA6B2;
    font-size:12px;
    line-height:1.6;
    margin-top:8px;
    padding-left:28px;
}

.docs-upload-actions{
    display:flex;
    justify-content:flex-end;
    gap:12px;
    margin-top:24px;
}

.docs-upload-actions .docs-action-secondary,
.docs-upload-actions .docs-action-primary{
    width:auto;
    min-width:190px;
    height:46px;
    border:none;
}

.docs-upload-side{
    display:flex;
    flex-direction:column;
    gap:14px;
}

.docs-side-card{
    background:#151a22;
    border:1px solid rgba(200,164,77,.14);
    border-radius:18px;
    padding:18px;
    box-shadow:0 12px 32px rgba(0,0,0,.20);
}

.docs-side-card small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.5px;
    margin-bottom:8px;
}

.docs-side-card strong{
    display:block;
    color:#f0d37d;
    font-size:15px;
    margin-bottom:8px;
}

.docs-side-card p{
    color:#c9d1df;
    font-size:13px;
    line-height:1.6;
    margin:0;
}

/* ==========================
   ACESSOS DO DOCUMENTO
========================== */

.docs-access-document{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:20px;
    padding:20px;
    margin-bottom:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.24);
}

.docs-access-document-main small{
    display:block;
    color:var(--gold);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:2px;
    font-weight:700;
    margin-bottom:7px;
}

.docs-access-document-main h3{
    color:#fff;
    font-size:21px;
    margin-bottom:8px;
}

.docs-access-document-main p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.5;
    margin:0;
}

.docs-access-document-main p strong{
    color:#ECECEC;
}

.docs-access-document-main p span{
    display:inline-block;
    margin-left:8px;
    color:#d8bd69;
}

.docs-access-document-status{
    flex:none;
}

.docs-access-summary{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
    margin-bottom:22px;
}

.docs-access-mini-card{
    background:#151a22;
    border:1px solid rgba(200,164,77,.14);
    border-radius:16px;
    padding:16px;
    box-shadow:0 10px 28px rgba(0,0,0,.18);
}

.docs-access-mini-card small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.4px;
    margin-bottom:8px;
}

.docs-access-mini-card strong{
    display:block;
    color:#f0d37d;
    font-size:16px;
    line-height:1.4;
}

.docs-access-card{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 18px 50px rgba(0,0,0,.28);
}

.docs-access-card-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    padding:20px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.docs-access-card-header span{
    display:block;
    color:var(--gold);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:2px;
    font-weight:700;
    margin-bottom:6px;
}

.docs-access-card-header h3{
    color:#fff;
    font-size:18px;
    margin:0;
}

.docs-access-card-header strong{
    color:#d8bd69;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.18);
    border-radius:999px;
    padding:8px 13px;
    font-size:12px;
}

.docs-access-table-wrap{
    width:100%;
    overflow-x:auto;
}

.docs-access-table{
    width:100%;
    border-collapse:collapse;
}

.docs-access-table th{
    background:#242A34;
    color:var(--gold);
    padding:14px;
    text-align:left;
    font-size:12px;
    white-space:nowrap;
}

.docs-access-table td{
    padding:14px;
    border-top:1px solid var(--border);
    color:#ECECEC;
    font-size:12px;
    vertical-align:top;
    line-height:1.45;
}

.docs-access-table tr:hover{
    background:#20242D;
}

.docs-access-muted{
    color:#9FA6B2;
    font-size:11px;
    margin-top:5px;
    line-height:1.4;
}

.docs-access-break{
    max-width:260px;
    word-break:break-word;
}

.docs-access-useragent{
    max-width:320px;
    word-break:break-word;
    color:#c9d1df;
}

.docs-access-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:0 10px;
    border-radius:999px;
    font-size:11px;
    font-weight:800;
}

.docs-access-success{
    background:rgba(40,167,69,.18);
    color:#8BE39F;
}

.docs-access-fail{
    background:rgba(220,53,69,.18);
    color:#FF9BA5;
}

.docs-access-empty{
    padding:26px;
}

/* ==========================
   PREPARAR DOCUMENTO
========================== */

.docs-prepare-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 320px;
    gap:22px;
    align-items:start;
}

.docs-prepare-card{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:24px;
    box-shadow:0 18px 50px rgba(0,0,0,.28);
}

.docs-prepare-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:20px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.docs-prepare-header span{
    display:block;
    color:var(--gold);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:2px;
    font-weight:700;
    margin-bottom:6px;
}

.docs-prepare-header h3{
    color:#fff;
    font-size:22px;
    margin-bottom:6px;
    line-height:1.3;
}

.docs-prepare-header p{
    color:#9FA6B2;
    font-size:13px;
    margin:0;
    word-break:break-word;
}

.docs-prepare-header strong{
    min-width:58px;
    height:58px;
    border-radius:50%;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.32);
    color:#d8bd69;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:13px;
    letter-spacing:1px;
}

.docs-prepare-info-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-bottom:22px;
}

.docs-prepare-info-grid div{
    background:#151a22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:15px;
    padding:15px;
}

.docs-prepare-info-grid small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.3px;
    margin-bottom:7px;
}

.docs-prepare-info-grid strong{
    color:#f0d37d;
    font-size:14px;
}

.docs-prepare-message{
    background:#151a22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:16px;
    padding:16px;
    margin-bottom:18px;
}

.docs-prepare-message h4{
    color:#f0d37d;
    font-size:17px;
    margin-bottom:8px;
}

.docs-prepare-message p{
    color:#c9d1df;
    font-size:14px;
    line-height:1.6;
    margin:0;
}

.docs-prepare-form{
    display:flex;
    flex-direction:column;
    gap:10px;
    max-width:280px;
}

.docs-prepare-form label{
    color:#d8bd69;
    font-size:13px;
    font-weight:700;
}

.docs-prepare-form input{
    width:100%;
    height:46px;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:0 14px;
    font-size:14px;
}

.docs-prepare-form input:focus{
    outline:none;
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.docs-prepare-note{
    margin-top:16px;
    color:#9FA6B2;
    font-size:12px;
    line-height:1.5;
}

.docs-prepare-success,
.docs-prepare-error{
    border-radius:16px;
    padding:16px;
    margin-bottom:18px;
}

.docs-prepare-success{
    background:rgba(200,164,77,.12);
    border:1px solid rgba(200,164,77,.40);
}

.docs-prepare-error{
    background:rgba(220,53,69,.12);
    border:1px solid rgba(220,53,69,.45);
}

.docs-prepare-success h4{
    color:#f0d37d;
    font-size:17px;
    margin-bottom:8px;
}

.docs-prepare-error h4{
    color:#FFB3B9;
    font-size:17px;
    margin-bottom:8px;
}

.docs-prepare-success p,
.docs-prepare-error p{
    color:#ECECEC;
    font-size:14px;
    line-height:1.6;
    margin:0;
}

.docs-prepare-progress{
    width:100%;
    height:18px;
    background:#0F1115;
    border:1px solid #2B303A;
    border-radius:999px;
    overflow:hidden;
    margin:16px 0 10px;
}

.docs-prepare-progress-bar{
    height:100%;
    background:linear-gradient(135deg,#c8a44d,#b48a34);
    border-radius:999px;
    transition:.4s ease;
}

.docs-prepare-percent{
    color:#f0d37d;
    font-size:13px;
    font-weight:700;
    margin-bottom:16px;
}

.docs-prepare-link{
    width:auto;
    min-width:220px;
    min-height:44px;
    margin-top:4px;
}

.docs-prepare-side{
    display:flex;
    flex-direction:column;
    gap:14px;
}

/* ==========================
   GERAR NOVO LINK
========================== */

.docs-link-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 320px;
    gap:22px;
    align-items:start;
}

.docs-link-card{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:24px;
    box-shadow:0 18px 50px rgba(0,0,0,.28);
}

.docs-link-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:20px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.docs-link-header span{
    display:block;
    color:var(--gold);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:2px;
    font-weight:700;
    margin-bottom:7px;
}

.docs-link-header h3{
    color:#fff;
    font-size:22px;
    line-height:1.3;
    margin:0;
}

.docs-link-header strong{
    min-width:58px;
    height:58px;
    border-radius:50%;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.32);
    color:#d8bd69;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:13px;
    letter-spacing:1px;
}

.docs-link-document{
    background:#151a22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:16px;
    padding:16px;
    margin-bottom:18px;
}

.docs-link-document small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.4px;
    margin-bottom:8px;
}

.docs-link-document strong{
    display:block;
    color:#f0d37d;
    font-size:16px;
    line-height:1.4;
}

.docs-link-document p{
    color:#c9d1df;
    font-size:13px;
    margin-top:7px;
    margin-bottom:0;
}

.docs-link-alert{
    border-radius:16px;
    padding:16px;
    margin-bottom:18px;
    font-size:14px;
    line-height:1.6;
}

.docs-link-alert-success{
    background:rgba(200,164,77,.12);
    border:1px solid rgba(200,164,77,.40);
    color:#E7D49B;
}

.docs-link-alert-error{
    background:rgba(220,53,69,.12);
    border:1px solid rgba(220,53,69,.45);
    color:#FFB3B9;
}

.docs-link-box{
    background:#0F1115;
    border:1px dashed #C8A44D;
    border-radius:16px;
    padding:18px;
    color:#f0d37d;
    font-size:14px;
    line-height:1.7;
    word-break:break-all;
    margin-bottom:20px;
}

.docs-link-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.docs-link-actions .docs-action-primary,
.docs-link-actions .docs-action-secondary{
    width:auto;
    min-width:180px;
    min-height:44px;
    border:none;
}

.docs-link-side{
    display:flex;
    flex-direction:column;
    gap:14px;
}

/* ==========================
   DASHBOARD ADMIN + DOCUMENTOS
========================== */

.dashboard-welcome{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    margin-bottom:22px;
}

.dashboard-welcome p{
    margin:0;
    font-size:16px;
    color:var(--text);
}

.dashboard-welcome p strong{
    color:var(--gold);
}

.dashboard-welcome span{
    display:block;
    color:var(--muted);
    font-size:13px;
    margin-top:5px;
}

.dashboard-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.dashboard-doc-card{
    border-color:rgba(200,164,77,.20);
    background:
    radial-gradient(circle at top right, rgba(200,164,77,.08), transparent 38%),
    var(--card);
}

.dashboard-docs-panel{
    display:grid;
    grid-template-columns:1.3fr 1fr;
    gap:20px;
    margin-top:25px;
}

.dashboard-section-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:14px;
    margin-bottom:16px;
}

.dashboard-section-header h3{
    margin:0 0 5px;
}

.dashboard-section-header p{
    color:var(--muted);
    font-size:13px;
    margin:0;
}

.dashboard-doc-list,
.dashboard-access-list{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.dashboard-doc-item,
.dashboard-access-item{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:14px;
    background:#151a22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:14px;
    padding:14px;
}

.dashboard-doc-item strong,
.dashboard-access-item strong{
    display:block;
    color:#fff;
    font-size:14px;
    margin-bottom:5px;
    line-height:1.4;
}

.dashboard-doc-item span,
.dashboard-access-item span{
    display:block;
    color:#c9d1df;
    font-size:12px;
    margin-bottom:4px;
}

.dashboard-doc-item small,
.dashboard-access-item small{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    line-height:1.4;
}

.dashboard-doc-badges{
    display:flex;
    flex-direction:column;
    gap:6px;
    align-items:flex-end;
    min-width:110px;
}

.dashboard-access-item > .badge{
    flex:none;
}

.docs-action-disabled{
    opacity:.62;
    cursor:default;
    pointer-events:none;
}

.docs-share-box{
    background:#0F1115;
    border:1px dashed #C8A44D;
    border-radius:16px;
    padding:18px;
    color:#f0d37d;
    font-size:15px;
    line-height:1.8;
    word-break:break-word;
    white-space:normal;
    margin-bottom:20px;
}

.docs-share-box::selection{
    background:#C8A44D;
    color:#101010;
}

/* ==========================
   UPLOAD COM BARRA DE PROGRESSO
========================== */

.upload-progress-box{
    display:none;
    background:#151a22;
    border:1px solid rgba(200,164,77,.16);
    border-radius:16px;
    padding:16px;
    margin-top:22px;
    margin-bottom:4px;
}

.upload-progress-info{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:14px;
    margin-bottom:10px;
}

.upload-progress-info span{
    color:#ECECEC;
    font-size:13px;
    font-weight:700;
}

.upload-progress-info strong{
    color:#f0d37d;
    font-size:14px;
}

.upload-progress-track{
    width:100%;
    height:18px;
    background:#0F1115;
    border:1px solid #2B303A;
    border-radius:999px;
    overflow:hidden;
}

.upload-progress-bar{
    width:0%;
    height:100%;
    background:linear-gradient(135deg,#c8a44d,#b48a34);
    border-radius:999px;
    transition:width .2s ease;
}

.upload-progress-box small{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    margin-top:9px;
    line-height:1.5;
}

.docs-action-primary:disabled{
    opacity:.65;
    cursor:not-allowed;
}

/* ==========================
   CLIENTES - FUNCIONÁRIO
========================== */

.clientes-page-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
}

.clientes-page-header h2{
    color:var(--text);
    font-size:26px;
    margin-bottom:6px;
}

.clientes-page-header p{
    color:var(--muted);
    font-size:14px;
}

.clientes-header-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.clientes-main-btn,
.clientes-back-btn{
    min-height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 18px;
    border-radius:12px;
    font-size:13px;
    font-weight:800;
    text-decoration:none;
    border:none;
    cursor:pointer;
    transition:.25s ease;
}

.clientes-main-btn{
    background:linear-gradient(135deg,#c8a44d,#b48a34);
    color:#101010;
}

.clientes-back-btn{
    background:#151a22;
    color:#d8bd69;
    border:1px solid rgba(200,164,77,.22);
}

.clientes-main-btn:hover,
.clientes-back-btn:hover{
    transform:translateY(-2px);
}

.clientes-resumo-grid{
    margin-bottom:22px;
}

.clientes-filter-card{
    margin-bottom:22px;
}

.clientes-filter-form{
    display:grid;
    grid-template-columns:2fr 1fr 1fr auto;
    gap:16px;
    align-items:end;
}

.clientes-filter-form .form-group{
    margin:0;
}

.clientes-filter-form label{
    display:block;
    color:#d8bd69;
    font-size:13px;
    font-weight:700;
    margin-bottom:8px;
}

.clientes-filter-form input,
.clientes-filter-form select{
    width:100%;
    min-height:44px;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:0 13px;
    outline:none;
}

.clientes-filter-form input:focus,
.clientes-filter-form select:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.clientes-filter-actions{
    display:flex;
    gap:8px;
}

.clientes-list{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.cliente-item{
    display:grid;
    grid-template-columns:2.2fr 1.2fr 1.2fr 1fr 1fr;
    gap:18px;
    align-items:start;
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:20px;
    box-shadow:0 14px 38px rgba(0,0,0,.25);
}

.cliente-main{
    display:flex;
    gap:14px;
    align-items:flex-start;
}

.cliente-id{
    min-width:46px;
    height:34px;
    border-radius:10px;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.24);
    color:#d8bd69;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:12px;
    font-weight:800;
}

.cliente-main h3{
    color:#fff;
    font-size:16px;
    margin-bottom:5px;
    line-height:1.3;
}

.cliente-main p{
    color:#d5dbe6;
    font-size:13px;
    margin-bottom:8px;
    line-height:1.4;
}

.cliente-meta{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.cliente-meta span{
    color:#9FA6B2;
    font-size:12px;
    line-height:1.4;
}

.cliente-box,
.cliente-status-box{
    background:#151a22;
    border:1px solid rgba(255,255,255,.04);
    border-radius:14px;
    padding:14px;
}

.cliente-box small,
.cliente-status-box small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:7px;
}

.cliente-box strong{
    display:block;
    color:#fff;
    font-size:14px;
    line-height:1.4;
    margin-bottom:5px;
}

.cliente-box span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    line-height:1.4;
}

.cliente-status{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    font-size:11px;
    font-weight:800;
    margin-bottom:10px;
}

.cliente-status-default{
    background:rgba(159,166,178,.16);
    color:#c9d1df;
}

.cliente-status-warning{
    background:rgba(255,193,7,.16);
    color:#FFD666;
}

.cliente-status-success{
    background:rgba(40,167,69,.18);
    color:#8BE39F;
}

.cliente-status-danger{
    background:rgba(220,53,69,.18);
    color:#FF9BA5;
}

.cliente-mini-alert,
.cliente-mini-success{
    display:block;
    font-size:12px;
    margin-top:6px;
    line-height:1.4;
}

.cliente-mini-alert{
    color:#FFD666;
}

.cliente-mini-success{
    color:#8BE39F;
}

.cliente-alert-date{
    color:#ff9ba5 !important;
}

.cliente-actions{
    display:flex;
    flex-direction:column;
    gap:8px;
}

.clientes-action-primary,
.clientes-action-secondary{
    width:100%;
    min-height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    border-radius:10px;
    padding:0 12px;
    font-size:12px;
    font-weight:800;
    text-decoration:none;
    cursor:pointer;
    transition:.25s ease;
}

.clientes-action-primary{
    background:#C8A44D;
    color:#101010;
    border:1px solid #C8A44D;
}

.clientes-action-secondary{
    background:#151a22;
    color:#d8bd69;
    border:1px solid rgba(200,164,77,.24);
}

.clientes-action-primary:hover,
.clientes-action-secondary:hover{
    transform:translateY(-2px);
}

/* ==========================
   CLIENTES - VISUALIZAÇÃO
========================== */

.cliente-view-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 320px;
    gap:22px;
    align-items:start;
}

.cliente-view-main{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.cliente-view-card{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:20px;
    padding:22px;
    box-shadow:0 16px 42px rgba(0,0,0,.25);
}

.cliente-view-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:18px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.cliente-view-header span:first-child{
    display:block;
    color:#C8A44D;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:2px;
    font-weight:700;
    margin-bottom:7px;
}

.cliente-view-header h3{
    color:#fff;
    font-size:23px;
    line-height:1.3;
    margin:0 0 6px;
}

.cliente-view-header p{
    color:#9FA6B2;
    font-size:14px;
    margin:0;
}

.cliente-view-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:14px;
}

.cliente-view-grid div{
    background:#151a22;
    border:1px solid rgba(255,255,255,.04);
    border-radius:14px;
    padding:14px;
}

.cliente-view-grid small,
.cliente-side-card small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:7px;
}

.cliente-view-grid strong,
.cliente-side-card strong{
    display:block;
    color:#f0d37d;
    font-size:14px;
    line-height:1.4;
    word-break:break-word;
}

.cliente-section-title h3{
    color:#fff;
    font-size:17px;
    margin-bottom:12px;
}

.cliente-text-block{
    background:#151a22;
    border:1px solid rgba(255,255,255,.04);
    border-radius:14px;
    padding:15px;
    color:#c9d1df;
    font-size:14px;
    line-height:1.7;
    min-height:64px;
}

.cliente-view-side{
    display:flex;
    flex-direction:column;
    gap:14px;
}

.cliente-side-card{
    background:#151a22;
    border:1px solid rgba(200,164,77,.14);
    border-radius:18px;
    padding:18px;
    box-shadow:0 12px 32px rgba(0,0,0,.20);
}

.cliente-side-card p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.6;
    margin-top:8px;
    margin-bottom:0;
}

/* ==========================
   CLIENTES - EDIÇÃO
========================== */

.cliente-edit-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 320px;
    gap:22px;
    align-items:start;
}

.cliente-edit-card{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:24px;
    box-shadow:0 18px 50px rgba(0,0,0,.28);
}

.cliente-edit-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:22px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.cliente-edit-header span{
    display:block;
    color:#C8A44D;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:2px;
    font-weight:700;
    margin-bottom:7px;
}

.cliente-edit-header h3{
    color:#fff;
    font-size:22px;
    margin:0 0 6px;
    line-height:1.3;
}

.cliente-edit-header p{
    color:#9FA6B2;
    font-size:13px;
    margin:0;
}

.cliente-edit-header strong{
    min-width:58px;
    height:58px;
    border-radius:50%;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.32);
    color:#d8bd69;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:13px;
    letter-spacing:1px;
}

.cliente-edit-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}

.cliente-edit-grid .form-group{
    margin:0;
}

.cliente-edit-grid .full-width{
    grid-column:1 / -1;
}

.cliente-edit-grid label{
    display:block;
    color:#d8bd69;
    font-size:13px;
    font-weight:700;
    margin-bottom:8px;
}

.cliente-edit-grid input,
.cliente-edit-grid select,
.cliente-edit-grid textarea{
    width:100%;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:12px 14px;
    font-size:14px;
    outline:none;
}

.cliente-edit-grid input,
.cliente-edit-grid select{
    min-height:46px;
}

.cliente-edit-grid textarea{
    resize:vertical;
    min-height:110px;
}

.cliente-edit-grid input:focus,
.cliente-edit-grid select:focus,
.cliente-edit-grid textarea:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.cliente-edit-status{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:14px;
    margin-top:24px;
    background:#151a22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
}

.cliente-edit-actions{
    display:flex;
    justify-content:flex-end;
    gap:12px;
    margin-top:24px;
}

.cliente-edit-actions .clientes-main-btn,
.cliente-edit-actions .clientes-back-btn{
    min-width:180px;
}

/* ==========================
   CLIENTES - ADMIN
========================== */

.clientes-filter-form-admin{
    grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr auto;
}

.clientes-admin-info{
    color:#9FA6B2;
    font-size:12px;
    margin:-8px 0 14px;
}

.cliente-item-admin{
    grid-template-columns:2fr 1.05fr 1.05fr 1fr 1fr .9fr;
}

.cliente-meta strong{
    color:#f0d37d;
    font-weight:800;
}

/* ==========================
   CLIENTES - LOGS NA VISUALIZAÇÃO ADMIN
========================== */

.cliente-log-list{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.cliente-log-item{
    background:#151a22;
    border:1px solid rgba(200,164,77,.10);
    border-radius:14px;
    padding:14px;
}

.cliente-log-item strong{
    display:block;
    color:#f0d37d;
    font-size:13px;
    margin-bottom:6px;
}

.cliente-log-item span{
    display:block;
    color:#c9d1df;
    font-size:13px;
    line-height:1.6;
}

.cliente-log-item small{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    margin-top:8px;
}

.cliente-side-alert{
    border-color:rgba(220,53,69,.35);
    background:rgba(220,53,69,.08);
}

.cliente-side-alert strong{
    color:#ff9ba5;
}

/* ==========================
   AUDITORIA - SOPHYX
========================== */

.audit-page-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
}

.audit-page-header h2{
    color:var(--text);
    font-size:26px;
    margin-bottom:6px;
}

.audit-page-header p{
    color:var(--muted);
    font-size:14px;
    line-height:1.5;
}

.audit-header-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.audit-resumo-grid{
    margin-bottom:22px;
}

.audit-filter-card{
    margin-bottom:18px;
}

.audit-filter-form{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1fr 1fr auto;
    gap:16px;
    align-items:end;
}

.audit-filter-form .form-group{
    margin:0;
}

.audit-filter-form label{
    display:block;
    color:#d8bd69;
    font-size:13px;
    font-weight:700;
    margin-bottom:8px;
}

.audit-filter-form input,
.audit-filter-form select{
    width:100%;
    min-height:44px;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:0 13px;
    outline:none;
}

.audit-filter-form input:focus,
.audit-filter-form select:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.audit-filter-actions{
    display:flex;
    gap:8px;
}

.audit-toolbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    margin-bottom:14px;
    color:#9FA6B2;
    font-size:12px;
}

.audit-danger-btn{
    min-height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 16px;
    border-radius:12px;
    background:rgba(220,53,69,.12);
    color:#ff9ba5;
    border:1px solid rgba(220,53,69,.32);
    font-size:12px;
    font-weight:800;
    cursor:pointer;
    transition:.25s ease;
}

.audit-danger-btn:hover{
    transform:translateY(-2px);
    background:rgba(220,53,69,.18);
}

.audit-table-card{
    padding:0;
    overflow:hidden;
}

.audit-table-wrapper{
    width:100%;
    overflow-x:auto;
}

.audit-table{
    min-width:1100px;
}

.audit-table th{
    white-space:nowrap;
}

.audit-date{
    color:#ECECEC;
    font-size:12px;
    white-space:nowrap;
}

.audit-user{
    color:#f0d37d;
    font-size:13px;
    font-weight:700;
    min-width:130px;
}

.audit-ip{
    color:#c9d1df;
    font-size:12px;
    white-space:nowrap;
}

.audit-description{
    color:#d7dde8;
    font-size:13px;
    line-height:1.6;
    min-width:320px;
    max-width:620px;
    white-space:normal;
}

.audit-origin{
    display:flex;
    flex-direction:column;
    gap:5px;
    min-width:230px;
    max-width:320px;
}

.audit-origin span{
    color:#d8bd69;
    font-size:12px;
    line-height:1.4;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.audit-origin small{
    color:#8e98aa;
    font-size:11px;
    line-height:1.4;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

/* Badges */

.audit-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 10px;
    border-radius:999px;
    font-size:11px;
    font-weight:900;
    letter-spacing:.4px;
    white-space:nowrap;
    border:1px solid transparent;
}

.audit-login{
    background:rgba(40,167,69,.16);
    border-color:rgba(40,167,69,.28);
    color:#8BE39F;
}

.audit-logout{
    background:rgba(159,166,178,.14);
    border-color:rgba(159,166,178,.24);
    color:#c9d1df;
}

.audit-cliente{
    background:rgba(200,164,77,.14);
    border-color:rgba(200,164,77,.30);
    color:#f0d37d;
}

.audit-documento{
    background:rgba(80,140,255,.14);
    border-color:rgba(80,140,255,.30);
    color:#9fc0ff;
}

.audit-relatorio{
    background:rgba(168,85,247,.14);
    border-color:rgba(168,85,247,.30);
    color:#d6b4ff;
}

.audit-usuario{
    background:rgba(20,184,166,.14);
    border-color:rgba(20,184,166,.30);
    color:#7de3d7;
}

.audit-default{
    background:rgba(255,255,255,.08);
    border-color:rgba(255,255,255,.12);
    color:#d7dde8;
}

/* ==========================
   DASHBOARD ADMIN - CLIENTES E AUDITORIA
========================== */

.dashboard-clientes-grid{
    margin-top:22px;
    margin-bottom:24px;
}

.dashboard-action-card{
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-height:145px;
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:20px;
    text-decoration:none;
    box-shadow:0 14px 38px rgba(0,0,0,.25);
    transition:.25s ease;
}

.dashboard-action-card:hover{
    transform:translateY(-4px);
    border-color:rgba(200,164,77,.34);
}

.dashboard-action-card span{
    color:#9FA6B2;
    font-size:13px;
    font-weight:700;
}

.dashboard-action-card strong{
    color:#f0d37d;
    font-size:28px;
    line-height:1.2;
    margin:12px 0 6px;
}

.dashboard-action-card small{
    color:#8e98aa;
    font-size:12px;
    line-height:1.4;
}

.dashboard-action-alert{
    border-color:rgba(220,53,69,.30);
}

.dashboard-action-alert strong{
    color:#ff9ba5;
}

.dashboard-action-warning{
    border-color:rgba(255,193,7,.30);
}

.dashboard-action-warning strong{
    color:#FFD666;
}

.dashboard-admin-panels{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
    margin-bottom:22px;
}

.dashboard-admin-panel{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:20px;
    padding:22px;
    box-shadow:0 16px 42px rgba(0,0,0,.25);
}

.dashboard-section-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:16px;
    margin-bottom:16px;
    padding-bottom:14px;
    border-bottom:1px solid rgba(200,164,77,.10);
}

.dashboard-section-header h3{
    color:#fff;
    font-size:17px;
    margin:0 0 5px;
}

.dashboard-section-header p{
    color:#9FA6B2;
    font-size:13px;
    margin:0;
    line-height:1.5;
}

.dashboard-panel-link{
    min-height:34px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 12px;
    border-radius:10px;
    background:#151a22;
    border:1px solid rgba(200,164,77,.22);
    color:#d8bd69;
    text-decoration:none;
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}

.dashboard-empty-mini{
    background:#151a22;
    border:1px solid rgba(255,255,255,.04);
    border-radius:14px;
    padding:16px;
    color:#9FA6B2;
    font-size:13px;
}

.dashboard-client-list,
.dashboard-log-list,
.dashboard-doc-access-list{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.dashboard-client-row,
.dashboard-log-row,
.dashboard-doc-access-row{
    display:grid;
    grid-template-columns:1fr auto;
    gap:14px;
    align-items:center;
    background:#151a22;
    border:1px solid rgba(255,255,255,.04);
    border-radius:14px;
    padding:14px;
    text-decoration:none;
    transition:.25s ease;
}

.dashboard-client-row:hover,
.dashboard-log-row:hover{
    border-color:rgba(200,164,77,.25);
    transform:translateY(-2px);
}

.dashboard-client-row strong,
.dashboard-log-row strong,
.dashboard-doc-access-row strong{
    display:block;
    color:#f0d37d;
    font-size:13px;
    line-height:1.4;
}

.dashboard-client-row span,
.dashboard-log-row span,
.dashboard-doc-access-row span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    line-height:1.5;
    margin-top:4px;
}

.dashboard-client-row > div:last-child,
.dashboard-doc-access-row > div:last-child{
    text-align:right;
}

.dashboard-log-row{
    grid-template-columns:1fr;
}

.dashboard-log-row small{
    display:block;
    color:#8e98aa;
    font-size:12px;
    line-height:1.5;
}

.dashboard-date-danger{
    color:#ff9ba5 !important;
}

.dashboard-doc-panel{
    margin-bottom:22px;
}

.dashboard-access-ok{
    color:#8BE39F !important;
}

.dashboard-access-error{
    color:#ff9ba5 !important;
}

/* ==========================
   DASHBOARD ADMIN VERSÁTIL
========================== */

.sx-dashboard{
    display:flex;
    flex-direction:column;
    gap:22px;
}

.sx-kpi-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:16px;
}

.sx-kpi-card,
.sx-alert-card{
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-height:132px;
    padding:18px;
    border-radius:18px;
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    text-decoration:none;
    box-shadow:0 14px 38px rgba(0,0,0,.24);
    transition:.25s ease;
}

.sx-kpi-card:hover,
.sx-alert-card:hover,
.sx-row:hover{
    transform:translateY(-3px);
    border-color:rgba(200,164,77,.34);
}

.sx-kpi-card span,
.sx-alert-card span,
.sx-money-panel span{
    color:#9FA6B2;
    font-size:13px;
    font-weight:700;
}

.sx-kpi-card strong,
.sx-alert-card strong{
    color:#f0d37d;
    font-size:28px;
    line-height:1.2;
    margin:12px 0 5px;
}

.sx-kpi-card small,
.sx-alert-card small,
.sx-money-panel small{
    color:#8e98aa;
    font-size:12px;
    line-height:1.4;
}

.sx-money-panel{
    display:grid;
    grid-template-columns:1fr 1fr auto;
    gap:18px;
    align-items:center;
    padding:22px;
    border-radius:20px;
    background:linear-gradient(135deg,rgba(200,164,77,.13),rgba(30,35,45,.96));
    border:1px solid rgba(200,164,77,.20);
    box-shadow:0 16px 42px rgba(0,0,0,.25);
}

.sx-money-panel strong{
    display:block;
    color:#f0d37d;
    font-size:24px;
    line-height:1.25;
    margin:7px 0;
}

.sx-money-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

.sx-btn-primary,
.sx-btn-secondary,
.sx-panel-link{
    min-height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 14px;
    border-radius:12px;
    font-size:12px;
    font-weight:900;
    text-decoration:none;
    transition:.25s ease;
    white-space:nowrap;
}

.sx-btn-primary{
    background:linear-gradient(135deg,#c8a44d,#b48a34);
    color:#101010;
}

.sx-btn-secondary,
.sx-panel-link{
    background:#151a22;
    color:#d8bd69;
    border:1px solid rgba(200,164,77,.24);
}

.sx-btn-primary:hover,
.sx-btn-secondary:hover,
.sx-panel-link:hover{
    transform:translateY(-2px);
}

.sx-alert-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}

.sx-alert-card.sx-danger{
    border-color:rgba(220,53,69,.34);
}

.sx-alert-card.sx-danger strong{
    color:#ff9ba5;
}

.sx-alert-card.sx-warning{
    border-color:rgba(255,193,7,.32);
}

.sx-alert-card.sx-warning strong{
    color:#FFD666;
}

.sx-panel-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
    align-items:start;
}

.sx-panel{
    align-self:start;
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:20px;
    padding:22px;
    box-shadow:0 16px 42px rgba(0,0,0,.25);
}

.sx-panel-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:16px;
    padding-bottom:14px;
    margin-bottom:16px;
    border-bottom:1px solid rgba(200,164,77,.10);
}

.sx-panel-header h3{
    color:#fff;
    font-size:17px;
    margin:0 0 5px;
}

.sx-panel-header p{
    color:#9FA6B2;
    font-size:13px;
    margin:0;
    line-height:1.45;
}

.sx-empty{
    background:#151a22;
    border:1px solid rgba(255,255,255,.04);
    border-radius:14px;
    padding:16px;
    color:#9FA6B2;
    font-size:13px;
}

.sx-list{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.sx-scroll-list{
    max-height:430px;
    overflow:auto;
    padding-right:4px;
}

.sx-scroll-list::-webkit-scrollbar{
    width:6px;
}

.sx-scroll-list::-webkit-scrollbar-thumb{
    background:rgba(200,164,77,.25);
    border-radius:999px;
}

.sx-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:14px;
    align-items:center;
    background:#151a22;
    border:1px solid rgba(255,255,255,.04);
    border-radius:14px;
    padding:14px;
    text-decoration:none;
    transition:.25s ease;
}

.sx-row-column{
    grid-template-columns:1fr;
}

.sx-row strong{
    display:block;
    color:#f0d37d;
    font-size:13px;
    line-height:1.4;
}

.sx-row span,
.sx-row small{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    line-height:1.5;
    margin-top:4px;
}

.sx-row-right{
    text-align:right;
}

.sx-text-danger{
    color:#ff9ba5 !important;
}

.sx-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:26px;
    padding:0 10px;
    border-radius:999px;
    font-size:11px;
    font-weight:900;
    white-space:nowrap;
}

.sx-pill-ok{
    background:rgba(40,167,69,.16);
    color:#8BE39F !important;
    border:1px solid rgba(40,167,69,.28);
}

.sx-pill-warn{
    background:rgba(255,193,7,.16);
    color:#FFD666 !important;
    border:1px solid rgba(255,193,7,.28);
}

.sx-pill-danger{
    background:rgba(220,53,69,.16);
    color:#ff9ba5 !important;
    border:1px solid rgba(220,53,69,.28);
}

.sx-stats{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
}

.sx-stats div{
    background:#151a22;
    border:1px solid rgba(255,255,255,.04);
    border-radius:14px;
    padding:16px;
}

.sx-stats span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    margin-bottom:8px;
}

.sx-stats strong{
    color:#f0d37d;
    font-size:22px;
}

.sx-kpi-ok{
    border-color:rgba(40,167,69,.34);
}

.sx-kpi-ok strong{
    color:#8BE39F;
    font-size:24px;
}

.sx-kpi-warning{
    border-color:rgba(255,193,7,.34);
}

.sx-kpi-warning strong{
    color:#FFD666;
    font-size:22px;
}

.sx-money-actions-funcionario{
    grid-column:auto;
}

@media(max-width:1400px){
    .sx-money-actions-funcionario{
        grid-column:1 / -1;
        justify-content:flex-start;
    }
}

.dashboard-admin-panels,
.dashboard-docs-panel{
    align-items:flex-start !important;
}

.dashboard-admin-panel,
.dashboard-docs-panel .card{
    align-self:flex-start !important;
    height:auto !important;
}

@media(max-width:1400px){
    .sx-kpi-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .sx-alert-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .sx-money-panel{
        grid-template-columns:1fr 1fr;
    }

    .sx-money-actions{
        grid-column:1 / -1;
        justify-content:flex-start;
    }
}

@media(max-width:1000px){
    .sx-panel-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:768px){
    .sx-kpi-grid,
    .sx-alert-grid,
    .sx-money-panel,
    .sx-stats{
        grid-template-columns:1fr;
    }

    .sx-money-actions{
        flex-direction:column;
    }

    .sx-btn-primary,
    .sx-btn-secondary,
    .sx-panel-link{
        width:100%;
    }

    .sx-panel-header{
        flex-direction:column;
    }

    .sx-row{
        grid-template-columns:1fr;
    }

    .sx-row-right{
        text-align:left;
    }
}

@media(max-width:1100px){
    .dashboard-admin-panels{
        grid-template-columns:1fr;
    }
}

@media(max-width:768px){
    .dashboard-section-header{
        flex-direction:column;
    }

    .dashboard-panel-link{
        width:100%;
    }

    .dashboard-client-row,
    .dashboard-doc-access-row{
        grid-template-columns:1fr;
    }

    .dashboard-client-row > div:last-child,
    .dashboard-doc-access-row > div:last-child{
        text-align:left;
    }
}

@media(max-width:1300px){

    .audit-filter-form{
        grid-template-columns:1fr 1fr 1fr;
    }

    .audit-search-field{
        grid-column:1 / -1;
    }

    .audit-filter-actions{
        grid-column:1 / -1;
    }
}

@media(max-width:768px){

    .audit-page-header{
        flex-direction:column;
    }

    .audit-header-actions,
    .audit-header-actions a{
        width:100%;
    }

    .audit-filter-form{
        grid-template-columns:1fr;
    }

    .audit-search-field,
    .audit-filter-actions{
        grid-column:auto;
    }

    .audit-filter-actions{
        flex-direction:column;
    }

    .audit-filter-actions button,
    .audit-filter-actions a{
        width:100%;
    }

    .audit-toolbar{
        flex-direction:column;
        align-items:stretch;
    }

    .audit-toolbar form,
    .audit-danger-btn{
        width:100%;
    }
}

@media(max-width:1400px){

    .clientes-filter-form-admin{
        grid-template-columns:1fr 1fr 1fr;
    }

    .cliente-item-admin{
        grid-template-columns:1fr 1fr;
    }

    .cliente-item-admin .cliente-main{
        grid-column:1 / -1;
    }

    .cliente-item-admin .cliente-actions{
        grid-column:1 / -1;
        display:grid;
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:768px){

    .clientes-filter-form-admin{
        grid-template-columns:1fr;
    }

    .cliente-item-admin{
        grid-template-columns:1fr;
    }

    .cliente-item-admin .cliente-actions{
        display:flex;
        flex-direction:column;
    }
}

@media(max-width:1100px){
    .cliente-edit-layout{
        grid-template-columns:1fr;
    }
}

@media(max-width:768px){
    .cliente-edit-card{
        padding:18px;
        border-radius:18px;
    }

    .cliente-edit-header{
        flex-direction:column;
    }

    .cliente-edit-grid{
        grid-template-columns:1fr;
    }

    .cliente-edit-status{
        grid-template-columns:1fr;
    }

    .cliente-edit-actions{
        flex-direction:column;
    }

    .cliente-edit-actions .clientes-main-btn,
    .cliente-edit-actions .clientes-back-btn{
        width:100%;
        min-width:100%;
    }
}

@media(max-width:1100px){
    .cliente-view-layout{
        grid-template-columns:1fr;
    }

    .cliente-view-side{
        display:grid;
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){
    .cliente-view-card{
        padding:18px;
        border-radius:18px;
    }

    .cliente-view-header{
        flex-direction:column;
    }

    .cliente-view-grid{
        grid-template-columns:1fr;
    }

    .cliente-view-side{
        grid-template-columns:1fr;
    }
}

@media(max-width:1200px){

    .cliente-item{
        grid-template-columns:1fr 1fr;
    }

    .cliente-main{
        grid-column:1 / -1;
    }

    .cliente-actions{
        grid-column:1 / -1;
        display:grid;
        grid-template-columns:1fr 1fr;
    }

    .clientes-filter-form{
        grid-template-columns:1fr 1fr;
    }

    .clientes-filter-actions{
        grid-column:1 / -1;
    }
}

@media(max-width:768px){

    .clientes-page-header{
        flex-direction:column;
    }

    .clientes-header-actions{
        width:100%;
        flex-direction:column;
    }

    .clientes-header-actions a{
        width:100%;
    }

    .clientes-filter-form{
        grid-template-columns:1fr;
    }

    .clientes-filter-actions{
        flex-direction:column;
    }

    .clientes-filter-actions a,
    .clientes-filter-actions button{
        width:100%;
    }

    .cliente-item{
        grid-template-columns:1fr;
        padding:16px;
    }

    .cliente-main{
        flex-direction:column;
    }

    .cliente-id{
        width:max-content;
    }

    .cliente-actions{
        grid-column:auto;
        display:flex;
        flex-direction:column;
    }
}

@media(max-width:1100px){

    .dashboard-docs-panel{
        grid-template-columns:1fr;
    }
}

@media(max-width:768px){

    .dashboard-welcome{
        flex-direction:column;
        align-items:flex-start;
    }

    .dashboard-actions{
        width:100%;
        flex-direction:column;
    }

    .dashboard-actions a{
        width:100%;
    }

    .dashboard-doc-item,
    .dashboard-access-item{
        flex-direction:column;
    }

    .dashboard-doc-badges{
        align-items:flex-start;
        flex-direction:row;
        flex-wrap:wrap;
    }
}

@media(max-width:1100px){

    .docs-link-layout{
        grid-template-columns:1fr;
    }

    .docs-link-side{
        display:grid;
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:768px){

    .docs-link-card{
        padding:18px;
        border-radius:18px;
    }

    .docs-link-header{
        flex-direction:column;
    }

    .docs-link-actions{
        flex-direction:column;
    }

    .docs-link-actions .docs-action-primary,
    .docs-link-actions .docs-action-secondary{
        width:100%;
        min-width:100%;
    }

    .docs-link-side{
        grid-template-columns:1fr;
    }
}

@media(max-width:1100px){

    .docs-prepare-layout{
        grid-template-columns:1fr;
    }

    .docs-prepare-side{
        display:grid;
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:768px){

    .docs-prepare-card{
        padding:18px;
        border-radius:18px;
    }

    .docs-prepare-header{
        flex-direction:column;
    }

    .docs-prepare-info-grid{
        grid-template-columns:1fr;
    }

    .docs-prepare-form{
        max-width:100%;
    }

    .docs-prepare-form .docs-action-primary{
        width:100%;
    }

    .docs-prepare-side{
        grid-template-columns:1fr;
    }

    .docs-prepare-link{
        width:100%;
        min-width:100%;
    }
}

@media(max-width:1100px){

    .docs-access-summary{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:900px){

    .docs-access-table,
    .docs-access-table thead,
    .docs-access-table tbody,
    .docs-access-table th,
    .docs-access-table td,
    .docs-access-table tr{
        display:block;
    }

    .docs-access-table thead{
        display:none;
    }

    .docs-access-table tr{
        border-top:1px solid #2B303A;
        padding:14px;
    }

    .docs-access-table tr:first-child{
        border-top:none;
    }

    .docs-access-table td{
        border:none;
        padding:9px 4px;
        word-break:break-word;
    }

    .docs-access-table td::before{
        content:attr(data-label);
        display:block;
        color:#C8A44D;
        font-size:11px;
        margin-bottom:5px;
        font-weight:800;
        text-transform:uppercase;
        letter-spacing:.5px;
    }

    .docs-access-break,
    .docs-access-useragent{
        max-width:100%;
    }
}

@media(max-width:768px){

    .docs-access-document{
        flex-direction:column;
    }

    .docs-access-document-main p span{
        display:block;
        margin-left:0;
        margin-top:4px;
    }

    .docs-access-summary{
        grid-template-columns:1fr;
    }

    .docs-access-card-header{
        flex-direction:column;
        align-items:flex-start;
    }
}

@media(max-width:1100px){

    .docs-upload-layout{
        grid-template-columns:1fr;
    }

    .docs-upload-side{
        display:grid;
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:768px){

    .docs-upload-card{
        padding:18px;
        border-radius:18px;
    }

    .docs-upload-card-header{
        align-items:flex-start;
    }

    .docs-upload-grid{
        grid-template-columns:1fr;
    }

    .docs-upload-actions{
        flex-direction:column;
    }

    .docs-upload-actions .docs-action-secondary,
    .docs-upload-actions .docs-action-primary{
        width:100%;
        min-width:100%;
    }

    .docs-upload-side{
        grid-template-columns:1fr;
    }

    .docs-upload-cis p{
        padding-left:0;
    }
}

@media(max-width:1200px){

    .docs-item{
        grid-template-columns:1fr 1fr;
    }

    .docs-main{
        grid-column:1 / -1;
    }

    .docs-actions{
        grid-column:1 / -1;
        display:grid;
        grid-template-columns:repeat(5,1fr);
    }
}

@media(max-width:768px){

    .docs-page-header{
        flex-direction:column;
    }

    .docs-header-actions{
        width:100%;
        flex-direction:column;
    }

    .docs-main-btn,
    .docs-back-btn{
        width:100%;
    }

    .docs-item{
        grid-template-columns:1fr;
        padding:16px;
    }

    .docs-main{
        flex-direction:column;
    }

    .docs-id{
        width:max-content;
    }

    .docs-actions{
        grid-column:auto;
        display:flex;
        flex-direction:column;
    }
}

@keyframes pulseRing{
    0%,100%{
        transform:scale(1);
        opacity:.7;
    }

    50%{
        transform:scale(1.05);
        opacity:1;
    }
}

@media(max-width:900px){

    .documentos-table,
    .documentos-table thead,
    .documentos-table tbody,
    .documentos-table th,
    .documentos-table td,
    .documentos-table tr{
        display:block;
    }

    .documentos-table thead{
        display:none;
    }

    .documentos-table tr{
        border-top:1px solid #2B303A;
        padding:14px;
    }

    .documentos-table tr:first-child{
        border-top:none;
    }

    .documentos-table td{
        border:none;
        padding:9px 4px;
    }

    .documentos-table td::before{
        content:attr(data-label);
        display:block;
        color:#C8A44D;
        font-size:12px;
        margin-bottom:5px;
        font-weight:700;
    }

    .documentos-validade-form{
        min-width:100%;
    }

    .documentos-actions{
        width:100%;
        align-items:stretch;
    }
    .documentos-card{
        padding:0;
    }

    .documentos-table tr{
        background:#1d2430;
    }

    .documentos-table td{
        white-space:normal;
        word-break:break-word;
    }

    .documentos-table td::before{
        text-transform:uppercase;
        letter-spacing:.5px;
    }

    .documentos-actions .btn-small,
    .documentos-actions .btn-small-secondary,
    .documentos-actions .btn-small-danger{
        width:100%;
    }
}

@media(max-width:768px){

    .construction-wrapper{
        padding:30px 18px 22px;
    }

    .construction-card{
        padding:38px 22px 34px;
        border-radius:24px;
    }

    .construction-card::before{
        border-radius:23px;
    }

    .construction-logo-area,
    .construction-logo{
        width:132px;
        height:132px;
    }

    .construction-logo-area{
        margin-bottom:26px;
    }

    .construction-logo img{
        width:106px;
    }

    .construction-tag{
        font-size:10px;
        letter-spacing:1.8px;
        padding:7px 13px;
    }

    .construction-card h1{
        font-size:36px;
        letter-spacing:6px;
        margin-bottom:20px;
    }

    .construction-description{
        font-size:12px;
        line-height:1.8;
        letter-spacing:1px;
    }

    .construction-status{
        gap:9px;
        margin-top:24px;
    }

    .construction-status div{
        width:100%;
        justify-content:center;
        font-size:11px;
    }

    .construction-divider{
        margin:26px 0;
    }

    .construction-divider::before,
    .construction-divider::after{
        width:70px;
    }

    .construction-info-grid{
        grid-template-columns:1fr;
        gap:10px;
        margin-bottom:26px;
    }

    .construction-btn{
        width:100%;
        height:46px;
    }
}


/* ==========================
   RESPONSIVIDADE
========================== */

@media (max-width:768px){

    .sidebar{
        position:sticky;
        top:0;
        z-index:999;
        width:100%;
        height:auto;
        padding:12px 16px;
        border-right:none;
        border-bottom:1px solid rgba(200,164,77,.18);
    }

    .sidebar-header{
        padding:6px 0;
        border-bottom:none;
        cursor:pointer;
    }

	.sidebar-header img{
		width:82px;
		margin-bottom:4px;
		filter:drop-shadow(0 0 14px rgba(200,164,77,.28))drop-shadow(0 8px 20px rgba(0,0,0,.45));
	}

    .sidebar.open .sidebar-header img{
        transform:scale(.94);
    }

    .sidebar-header h3{
        display:block;
        font-size:15px;
        letter-spacing:4px;
        color:#c8a44d;
        margin-top:6px;
        margin-bottom:2px;
        text-shadow:0 0 14px rgba(200,164,77,.22);
    }

    .sidebar-header span{
        display:block;
        font-size:10px;
        color:#d8c38a;
        letter-spacing:2px;
        opacity:.8;
    }

    .sidebar-links,
    .sidebar ul,
    .sidebar-exit{
        max-height:0;
        overflow:hidden;
        opacity:0;
        transform:translateY(-14px) scale(.98);
        transition:
            max-height .45s ease,
            opacity .28s ease,
            transform .38s cubic-bezier(.2,.8,.2,1);
        padding-top:0;
        padding-bottom:0;
    }

    .sidebar.open .sidebar-links,
    .sidebar.open ul,
    .sidebar.open .sidebar-exit{
        max-height:500px;
        opacity:1;
        transform:translateY(0) scale(1);
    }

    .sidebar ul{
        padding:14px 0 8px;
    }

    .sidebar li{
        margin-bottom:8px;
    }

	.sidebar a{
		height:40px;
		font-size:13px;
	}

    .sidebar a:hover,
    .sidebar a.active{
        transform:none;
    }

    .sidebar-exit{
        padding:10px 0 4px;
    }
	
    .sidebar.open{
        background:radial-gradient(circle at top, rgba(200,164,77,.12), transparent 45%),linear-gradient(180deg,#111722,#080b11);
    }

    .content{
        margin-left:0;
        padding:22px 18px;
    }

body.login-body .login-page{
    min-height:calc(100vh - 140px);
    height:auto;
    padding:14px 16px;
    align-items:center;
}

body.login-body .login-card{
    padding:30px 24px;
    border-radius:18px;
}

body.login-body .login-logo img{
    width:100px;
}

body.login-body .login-title{
    font-size:22px;
}

body.login-body .login-subtitle{
    margin:8px 0 24px;
}

body.login-body .login-card input,
body.login-body .login-card .btn{
    height:46px;
}

body.login-body .footer-sophyx{
    min-height:105px;
    padding:0 16px 16px;
}

body.login-body .footer-content{
    padding-top:10px;
    font-size:11px;
    line-height:1.45;
}

    .dashboard-grid{
        grid-template-columns:1fr;
    }

    .dashboard-bottom{
        grid-template-columns:1fr;
    }

    .topbar{
        flex-direction:column;
        align-items:flex-start;
        gap:10px;
    }

    .card{
        padding:18px;
        border-radius:18px;
    }

    .btn{
        width:100%;
    }

	.btn-small,
	.btn-small-secondary{
		flex:none;
		width:auto;
		min-width:auto;
		display:inline-flex;
		align-items:center;
		justify-content:center;
		padding:10px 14px;
		font-size:13px;
	}

    .table-wrapper{
        overflow-x:auto;
    }

    .usuarios-layout{
        grid-template-columns:1fr;
    }

    .relatorio-filtros{
        flex-direction:column;
    }

    .relatorio-filtros .form-group,
    .relatorio-filtros .btn{
        width:100%;
    }

    .cliente-grid{
        grid-template-columns:1fr;
    }

    .status-grid{
        grid-template-columns:1fr;
    }

    .cliente-view-header{
        flex-direction:column;
    }

	.footer-sophyx{
		width:100%;
		margin-left:0;
		margin-right:0;
	}

	.footer-content{
		width:100%;
		margin:0 auto;
		padding-left:0;
		padding-right:0;
	}

    .acoes-relatorio{
        flex-direction:column;
        gap:10px;
        width:100%;
    }

    .acoes-relatorio .btn,
    .acoes-relatorio .btn-secondary{
        width:100%;
        height:48px;
        display:flex;
        align-items:center;
        justify-content:center;
        text-decoration:none;
        margin:0;
    }

    .cliente-text-block p{
        font-size:15px;
        line-height:1.6;
    }

    .textarea-relatorio{
        font-family:inherit;
        font-size:15px;
        line-height:1.6;
    }

    .empty-state{
        padding:10px 0;
    }

    .empty-state p{
        margin-bottom:16px;
        line-height:1.5;
    }
	
	    .report-summary{
        grid-template-columns:repeat(2, minmax(120px, 1fr));
        gap:22px 18px;
    }

    .report-summary div{
        min-width:0;
        max-width:none;
    }

}

/* =========================================================
   SOPHYX - CAMADA DE PADRONIZAÇÃO GLOBAL
   Adicionar no FINAL do style.css
========================================================= */

:root{
    --sx-bg:#0F1115;
    --sx-sidebar:#171A21;
    --sx-card:#1E232D;
    --sx-card-2:#181D26;
    --sx-inner:#151A22;
    --sx-gold:#C8A44D;
    --sx-gold-light:#F0D37D;
    --sx-text:#ECECEC;
    --sx-muted:#9FA6B2;
    --sx-border:#2B303A;
    --sx-danger:#FF9BA5;
    --sx-success:#8BE39F;
    --sx-warning:#FFD666;
}

/* =========================================================
   SOPHYX - TIPOGRAFIA GLOBAL
========================================================= */

body,
textarea,
input,
select,
button{
    font-family:'Montserrat', 'Segoe UI', Arial, sans-serif !important;
}

/* Corrige o footer antigo que estava empurrando para o lado */
body:not(.login-body) .footer-sophyx{
    margin-right:0 !important;
    width:100%;
}

/* Padroniza conteúdo principal */
.content{
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.035), transparent 30%),
        var(--sx-bg);
}

/* Cabeçalhos de página antigos e novos */
.page-header,
.report-view-header,
.docs-page-header,
.clientes-page-header,
.audit-page-header{
    margin-bottom:24px;
}

.page-header h1,
.page-header h2,
.report-view-header h1,
.report-view-header h2,
.docs-page-header h2,
.clientes-page-header h2,
.audit-page-header h2{
    color:var(--sx-text);
    font-size:26px;
    line-height:1.25;
    margin-bottom:6px;
}

.page-header p,
.report-view-header p,
.docs-page-header p,
.clientes-page-header p,
.audit-page-header p{
    color:var(--sx-muted);
    font-size:14px;
    line-height:1.5;
}

/* Cards antigos passam a seguir o visual premium */
.card{
    background:linear-gradient(180deg,var(--sx-card),var(--sx-card-2));
    border:1px solid rgba(200,164,77,.12);
    border-radius:20px;
    box-shadow:0 16px 42px rgba(0,0,0,.24);
}

.card h3{
    color:var(--sx-muted);
    font-size:13px;
    font-weight:800;
    letter-spacing:.2px;
}

.card h2{
    color:var(--sx-gold-light);
}

/* Inputs globais */
.form-group input,
.form-group select,
.form-group textarea,
input,
select,
textarea{
    background:#0F1115;
    border:1px solid var(--sx-border);
    color:var(--sx-text);
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus,
input:focus,
select:focus,
textarea:focus{
    outline:none;
    border-color:var(--sx-gold);
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

/* Botões antigos usando o novo padrão */
.btn,
.btn-small{
    background:linear-gradient(135deg,#c8a44d,#b48a34);
    color:#101010 !important;
    border:none;
    border-radius:12px;
    font-weight:800;
    text-decoration:none;
    transition:.25s ease;
}

.btn:hover,
.btn-small:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(200,164,77,.16);
}

.btn-small-secondary,
.btn-secondary{
    background:#151a22;
    color:#d8bd69 !important;
    border:1px solid rgba(200,164,77,.24);
    border-radius:12px;
    font-weight:800;
    text-decoration:none;
    transition:.25s ease;
}

.btn-small-secondary:hover,
.btn-secondary:hover{
    background:rgba(200,164,77,.10);
    color:#fff !important;
    transform:translateY(-2px);
}

.btn-danger,
.btn-small-danger{
    background:rgba(125,30,30,.22) !important;
    color:#ff9ba5 !important;
    border:1px solid rgba(255,100,100,.28) !important;
}

/* Tabelas */
.table-sophyx{
    border-collapse:separate;
    border-spacing:0;
    overflow:hidden;
}

.table-sophyx th{
    background:#242A34;
    color:var(--sx-gold);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.6px;
}

.table-sophyx td{
    color:var(--sx-text);
    font-size:13px;
    vertical-align:top;
}

.table-wrapper{
    border-radius:16px;
    overflow-x:auto;
}

/* Badges antigos no padrão novo */
.badge-success{
    background:rgba(40,167,69,.18);
    color:var(--sx-success);
    border:1px solid rgba(40,167,69,.28);
}

.badge-danger{
    background:rgba(220,53,69,.18);
    color:var(--sx-danger);
    border:1px solid rgba(220,53,69,.28);
}

.badge-warning{
    background:rgba(255,193,7,.18);
    color:var(--sx-warning);
    border:1px solid rgba(255,193,7,.28);
}

.badge-info{
    background:rgba(200,164,77,.10);
    color:var(--sx-gold-light);
    border:1px solid rgba(200,164,77,.22);
}

/* Textareas do relatório estavam claros demais */
.textarea-relatorio{
    background:#0F1115 !important;
    border:1px solid var(--sx-border) !important;
    color:var(--sx-text) !important;
}

/* Cartões de cliente antigos recebem acabamento novo */
.cliente-card{
    background:linear-gradient(180deg,var(--sx-card),var(--sx-card-2));
    border:1px solid rgba(200,164,77,.12);
    border-radius:20px;
    box-shadow:0 14px 38px rgba(0,0,0,.24);
}

.add-cliente-card{
    background:rgba(200,164,77,.035);
    border:2px dashed rgba(200,164,77,.50);
    border-radius:18px;
}

/* Evita painéis esticados */
.dashboard-admin-panels,
.dashboard-docs-panel,
.sx-panel-grid{
    align-items:flex-start !important;
}

.dashboard-admin-panel,
.dashboard-docs-panel .card,
.sx-panel{
    align-self:flex-start !important;
    height:auto !important;
}

/* =========================================================
   SOPHYX - TOPBAR PREMIUM
========================================================= */

.sx-topbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:22px;
    margin-bottom:30px;
    padding:0 0 22px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.sx-topbar-main{
    min-width:0;
}

.sx-topbar-label{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 11px;
    margin-bottom:8px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.18);
    color:#d8bd69;
    font-size:12px;
    font-weight:800;
    letter-spacing:.3px;
}

.sx-topbar h2{
    color:#ECECEC;
    font-size:26px;
    line-height:1.25;
    margin:0 0 5px;
}

.sx-topbar small{
    color:#9FA6B2;
    font-size:13px;
}

.sx-topbar-user{
    display:flex;
    align-items:center;
    gap:12px;
    flex:none;
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:18px;
    padding:10px 12px 10px 16px;
    box-shadow:0 10px 30px rgba(0,0,0,.18);
}

.sx-topbar-user-info{
    text-align:right;
}

.sx-topbar-user-info strong{
    display:block;
    color:#f0d37d;
    font-size:13px;
    line-height:1.3;
    max-width:190px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.sx-topbar-user-info span{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    margin-top:3px;
    text-transform:uppercase;
    letter-spacing:.8px;
}

.sx-topbar-avatar{
    width:42px;
    height:42px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg,#c8a44d,#b48a34);
    color:#101010;
    font-size:17px;
    font-weight:900;
    box-shadow:0 10px 24px rgba(200,164,77,.16);
}

/* =========================================================
   SOPHYX - FOOTER PREMIUM
========================================================= */

.sx-footer{
    width:100%;
    margin-top:auto;
    padding:34px 0 8px;
}

.sx-footer-content{
    width:100%;
    display:grid;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    gap:18px;
    padding-top:18px;
    border-top:1px solid rgba(200,164,77,.10);
    color:#8e98aa;
    font-size:12px;
}

.sx-footer-brand{
    display:flex;
    flex-direction:column;
    gap:4px;
    text-align:left;
}

.sx-footer-brand strong{
    color:#f0d37d;
    font-size:13px;
    letter-spacing:.4px;
}

.sx-footer-brand span{
    color:#8e98aa;
    font-size:11px;
}

.sx-footer-center{
    text-align:center;
    color:#9FA6B2;
    font-size:12px;
}

.sx-footer-dev{
    text-align:right;
    color:#9FA6B2;
    font-size:12px;
}

.sx-footer-dev strong{
    color:#d8bd69;
    font-weight:800;
}

/* =========================================================
   SOPHYX - SIDEBAR PREMIUM PADRONIZADA
========================================================= */

.sophyx-sidebar{
    width:240px;
    position:fixed;
    left:0;
    top:0;
    height:100vh;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    background:
        radial-gradient(circle at top, rgba(200,164,77,.08), transparent 34%),
        linear-gradient(180deg,#121722,#0b0f16);
    border-right:1px solid rgba(200,164,77,.16);
    box-shadow:12px 0 35px rgba(0,0,0,.25);
    z-index:50;
}

.content{
    margin-left:240px;
}

.sophyx-sidebar-brand{
    display:flex;
    align-items:center;
    gap:12px;
    padding:22px 18px;
    border-bottom:1px solid rgba(200,164,77,.12);
    cursor:pointer;
}

.sophyx-sidebar-logo{
    width:48px;
    height:48px;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    overflow:hidden;
    flex:none;
}

.sophyx-sidebar-logo img{
    width:38px;
    max-height:38px;
    object-fit:contain;
    filter:drop-shadow(0 0 14px rgba(200,164,77,.20));
}

.sophyx-sidebar-brand-text strong{
    display:block;
    color:#f0d37d;
    font-size:15px;
    font-weight:900;
    letter-spacing:1.2px;
    line-height:1.2;
}

.sophyx-sidebar-brand-text span{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    margin-top:4px;
    text-transform:uppercase;
    letter-spacing:1.4px;
}

.sophyx-sidebar-nav{
    display:flex;
    flex-direction:column;
    gap:7px;
    padding:18px 14px;
    flex:1;
    overflow-y:auto;
}

.sophyx-menu-section{
    color:#6f7888;
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:1.5px;
    font-weight:900;
    margin:14px 8px 5px;
}

.sophyx-sidebar-nav a{
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    padding:0 14px;
    border-radius:13px;
    background:transparent;
    border:1px solid transparent;
    color:#c9d1df;
    text-decoration:none;
    font-size:13px;
    font-weight:800;
    transition:.25s ease;
}

.sophyx-sidebar-nav a:hover{
    background:rgba(200,164,77,.08);
    color:#f0d37d;
    border-color:rgba(200,164,77,.14);
    transform:translateX(3px);
}

.sophyx-sidebar-nav a.active{
    background:linear-gradient(135deg,rgba(200,164,77,.24),rgba(200,164,77,.08));
    border-color:rgba(200,164,77,.34);
    color:#f0d37d;
    box-shadow:0 10px 26px rgba(0,0,0,.22);
}

.sophyx-sidebar-footer{
    padding:16px 14px 22px;
    border-top:1px solid rgba(200,164,77,.10);
}

.sophyx-logout-link{
    min-height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:13px;
    background:rgba(125,30,30,.20);
    color:#ff9ba5;
    border:1px solid rgba(255,100,100,.26);
    text-decoration:none;
    font-size:13px;
    font-weight:900;
    transition:.25s ease;
}

.sophyx-logout-link:hover{
    background:rgba(180,45,45,.30);
    color:#fff;
    transform:translateY(-2px);
}

/* Remove conflito do menu antigo */
.sophyx-sidebar ul,
.sophyx-sidebar li{
    list-style:none;
    margin:0;
    padding:0;
}

.sophyx-sidebar .sidebar-header,
.sophyx-sidebar .sidebar-links,
.sophyx-sidebar .sidebar-exit{
    display:none;
}

/* =========================================================
   SOPHYX - NOVO RELATÓRIO PREMIUM
========================================================= */

.novo-relatorio-shell{
    display:flex;
    flex-direction:column;
    gap:22px;
}

.novo-relatorio-form{
    display:flex;
    flex-direction:column;
    gap:22px;
}

.relatorio-hero{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.10), transparent 38%),
        linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:24px;
    box-shadow:0 18px 50px rgba(0,0,0,.28);
}

.relatorio-hero span{
    display:block;
    color:#C8A44D;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:2px;
    font-weight:900;
    margin-bottom:8px;
}

.relatorio-hero h2{
    color:#ECECEC;
    font-size:25px;
    margin-bottom:8px;
}

.relatorio-hero p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    max-width:780px;
}

.relatorio-hero-badge{
    min-width:118px;
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.25);
    color:#F0D37D;
    font-size:13px;
    font-weight:900;
}

.relatorio-resumo-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:16px;
}

.relatorio-kpi{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.relatorio-kpi span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin-bottom:10px;
}

.relatorio-kpi strong{
    display:block;
    color:#F0D37D;
    font-size:28px;
    line-height:1.1;
    margin-bottom:8px;
}

.relatorio-kpi small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.relatorio-kpi-money{
    border-color:rgba(200,164,77,.24);
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.12), transparent 44%),
        linear-gradient(180deg,#1e232d,#181d26);
}

.relatorio-kpi-money strong{
    font-size:21px;
}

.relatorio-form-panel,
.relatorio-text-card{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:22px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.relatorio-panel-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:20px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.relatorio-panel-header.compact{
    padding-bottom:14px;
    margin-bottom:14px;
}

.relatorio-panel-header h3{
    color:#ECECEC;
    font-size:18px;
    margin-bottom:6px;
}

.relatorio-panel-header p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.relatorio-add-btn{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 18px;
    border:none;
    border-radius:12px;
    background:linear-gradient(135deg,#c8a44d,#b48a34);
    color:#101010;
    font-size:13px;
    font-weight:900;
    cursor:pointer;
    transition:.25s ease;
    white-space:nowrap;
}

.relatorio-add-btn:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(200,164,77,.16);
}

.relatorio-clientes-container{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.relatorio-add-card{
    margin:0;
    margin-top:18px;
    padding:28px;
    background:rgba(200,164,77,.035);
    border:2px dashed rgba(200,164,77,.45);
    border-radius:18px;
}

.relatorio-add-card small{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    margin-top:6px;
}

.relatorio-text-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
}

.relatorio-action-bar{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:12px;
    background:#151a22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:16px;
}

.relatorio-action-bar .docs-action-primary,
.relatorio-action-bar .docs-action-secondary{
    width:auto;
    min-width:170px;
    min-height:44px;
    border:none;
}

/* Cliente dentro do novo relatório */

#formRelatorio .cliente-card{
    margin:0;
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:20px;
    padding:22px;
    box-shadow:0 14px 38px rgba(0,0,0,.24);
}

#formRelatorio .cliente-card > h3{
    color:#F0D37D;
    font-size:18px;
    padding-bottom:14px;
    margin-bottom:18px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

#formRelatorio .numero-cliente{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:32px;
    height:28px;
    margin-left:6px;
    border-radius:999px;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.24);
    color:#F0D37D;
    font-size:12px;
}

#formRelatorio .cliente-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
}

#formRelatorio .form-group{
    margin:0;
}

#formRelatorio .form-group label{
    color:#D8BD69;
    font-size:12px;
    font-weight:800;
    margin-bottom:7px;
}

#formRelatorio .form-group input,
#formRelatorio .form-group select,
#formRelatorio .form-group textarea{
    min-height:44px;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:0 13px;
    font-size:13px;
}

#formRelatorio .form-group textarea{
    min-height:110px;
    padding:13px;
    resize:vertical;
}

#formRelatorio .form-group input:focus,
#formRelatorio .form-group select:focus,
#formRelatorio .form-group textarea:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

#formRelatorio .full-width{
    grid-column:1 / -1;
}

#formRelatorio .status-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-top:20px;
    padding-top:18px;
    border-top:1px solid rgba(200,164,77,.12);
}

#formRelatorio .switch-row{
    background:#151a22;
    border:1px solid rgba(200,164,77,.10);
    border-radius:14px;
    margin:0;
    padding:13px 14px;
}

#formRelatorio .switch-row span{
    color:#ECECEC;
    font-size:13px;
    font-weight:700;
}

#formRelatorio .removerCliente{
    width:100%;
    min-height:42px;
    grid-column:1 / -1;
    border-radius:12px;
    margin-top:4px;
}

/* Textareas finais */

#formRelatorio .textarea-relatorio{
    width:100%;
    min-height:190px;
    background:#0F1115 !important;
    border:1px solid #2B303A !important;
    color:#ECECEC !important;
    border-radius:14px;
    padding:15px;
    font-size:14px;
    line-height:1.7;
    resize:vertical;
}

#formRelatorio .textarea-relatorio:focus{
    border-color:#C8A44D !important;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

/* =========================================================
   SOPHYX - MEUS RELATÓRIOS PREMIUM
========================================================= */

.relatorios-page-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
    margin-bottom:22px;
}

.relatorios-page-header h2{
    color:#ECECEC;
    font-size:26px;
    margin-bottom:6px;
}

.relatorios-page-header p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    max-width:780px;
}

.relatorios-header-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.relatorios-resumo-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:16px;
    margin-bottom:22px;
}

.relatorios-kpi{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.relatorios-kpi span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin-bottom:10px;
}

.relatorios-kpi strong{
    display:block;
    color:#F0D37D;
    font-size:27px;
    line-height:1.1;
    margin-bottom:8px;
}

.relatorios-kpi small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.relatorios-kpi-money{
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.12), transparent 44%),
        linear-gradient(180deg,#1e232d,#181d26);
    border-color:rgba(200,164,77,.24);
}

.relatorios-kpi-money strong{
    font-size:20px;
}

.relatorios-panel{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    overflow:hidden;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.relatorios-panel-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    padding:20px 22px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.relatorios-panel-header h3{
    color:#ECECEC;
    font-size:18px;
    margin-bottom:5px;
}

.relatorios-panel-header p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.relatorios-panel-header > span{
    flex:none;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 13px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
}

.relatorios-table-wrapper{
    border-radius:0;
}

.relatorios-table{
    width:100%;
    border-collapse:collapse;
}

.relatorios-table th{
    padding:15px;
    background:#242A34;
    color:#C8A44D;
    font-size:12px;
    text-align:left;
    text-transform:uppercase;
    letter-spacing:.6px;
    white-space:nowrap;
}

.relatorios-table td{
    padding:15px;
    border-top:1px solid #2B303A;
    color:#ECECEC;
    font-size:13px;
    vertical-align:middle;
    white-space:nowrap;
}

.relatorios-table tr:hover{
    background:#20242D;
}

.relatorios-data{
    display:block;
    color:#ECECEC;
    margin-bottom:4px;
}

.relatorios-table td small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    line-height:1.4;
    margin-top:5px;
}

.relatorios-valor{
    color:#F0D37D;
}

.relatorios-actions{
    display:flex;
    align-items:center;
    gap:8px;
}

.relatorios-actions .docs-action-primary,
.relatorios-actions .docs-action-secondary{
    width:auto;
    min-width:105px;
    min-height:36px;
    padding:0 12px;
    font-size:12px;
}

.relatorios-empty{
    padding:34px 22px;
    text-align:center;
    color:#9FA6B2;
}

.relatorios-empty .docs-main-btn{
    margin-top:16px;
}

/* =========================================================
   SOPHYX - VISUALIZAR RELATÓRIO PREMIUM
========================================================= */

.relatorio-view-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:22px;
    margin-bottom:22px;
}

.relatorio-view-header > div:first-child span{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.4px;
    margin-bottom:10px;
}

.relatorio-view-header h2{
    color:#ECECEC;
    font-size:27px;
    line-height:1.25;
    margin-bottom:8px;
}

.relatorio-view-header p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    max-width:820px;
}

.relatorio-view-header p strong{
    color:#F0D37D;
}

.relatorio-view-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

.relatorio-view-kpi-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:16px;
    margin-bottom:22px;
}

.relatorio-view-kpi{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.relatorio-view-kpi span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin-bottom:10px;
}

.relatorio-view-kpi strong{
    display:block;
    color:#F0D37D;
    font-size:27px;
    line-height:1.1;
    margin-bottom:8px;
}

.relatorio-view-kpi small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.relatorio-view-kpi-money{
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.12), transparent 44%),
        linear-gradient(180deg,#1e232d,#181d26);
    border-color:rgba(200,164,77,.24);
}

.relatorio-view-kpi-money strong{
    font-size:20px;
}

.relatorio-view-panel{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:22px;
    margin-bottom:22px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.relatorio-view-panel-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:20px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.relatorio-view-panel-header h3{
    color:#ECECEC;
    font-size:19px;
    margin-bottom:6px;
}

.relatorio-view-panel-header p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.relatorio-view-count{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 13px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
}

.relatorio-view-info-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-bottom:18px;
}

.relatorio-view-info-grid div{
    background:#151A22;
    border:1px solid rgba(200,164,77,.10);
    border-radius:15px;
    padding:15px;
}

.relatorio-view-info-grid small,
.relatorio-view-text-block small,
.relatorio-cliente-info-grid small,
.relatorio-cliente-text small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.2px;
    margin-bottom:7px;
}

.relatorio-view-info-grid strong{
    color:#ECECEC;
    font-size:14px;
    line-height:1.4;
    word-break:break-word;
}

.relatorio-view-text-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.relatorio-view-text-block{
    background:#151A22;
    border:1px solid rgba(200,164,77,.10);
    border-radius:16px;
    padding:16px;
}

.relatorio-view-text-block p{
    color:#ECECEC;
    font-size:14px;
    line-height:1.7;
    margin:0;
}

.relatorio-clientes-view-list{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.relatorio-cliente-card{
    background:#151A22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:20px;
    padding:20px;
    box-shadow:0 14px 38px rgba(0,0,0,.18);
}

.relatorio-cliente-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:15px;
    margin-bottom:15px;
    border-bottom:1px solid rgba(200,164,77,.10);
}

.relatorio-cliente-header h3{
    color:#ECECEC;
    font-size:19px;
    line-height:1.3;
    margin-bottom:6px;
}

.relatorio-cliente-header span{
    color:#F0D37D;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.2px;
}

.relatorio-cliente-header-actions{
    flex:none;
}

.relatorio-cliente-empresa{
    background:rgba(200,164,77,.06);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    border-radius:14px;
    padding:13px 15px;
    margin-bottom:15px;
    font-weight:800;
    font-size:13px;
}

.relatorio-cliente-info-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin-bottom:15px;
}

.relatorio-cliente-info-grid div{
    background:#0F1115;
    border:1px solid #2B303A;
    border-radius:14px;
    padding:13px;
}

.relatorio-cliente-info-grid strong{
    color:#ECECEC;
    font-size:13px;
    line-height:1.4;
    word-break:break-word;
}

.relatorio-cliente-tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:15px;
}

.relatorio-cliente-tags span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:0 11px;
    border-radius:999px;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.25);
    color:#F0D37D;
    font-size:11px;
    font-weight:900;
}

.relatorio-cliente-text-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.relatorio-cliente-text{
    background:#0F1115;
    border:1px solid #2B303A;
    border-radius:14px;
    padding:14px;
    margin-top:12px;
}

.relatorio-cliente-text p{
    color:#ECECEC;
    font-size:13px;
    line-height:1.7;
    margin:0;
}

.relatorio-view-empty{
    padding:26px;
    text-align:center;
}

/* =========================================================
   SOPHYX - EDITAR RELATÓRIO PREMIUM
========================================================= */

.relatorio-edit-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:22px;
    margin-bottom:22px;
}

.relatorio-edit-header span{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.4px;
    margin-bottom:10px;
}

.relatorio-edit-header h2{
    color:#ECECEC;
    font-size:27px;
    line-height:1.25;
    margin-bottom:8px;
}

.relatorio-edit-header p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    max-width:820px;
}

.relatorio-edit-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.relatorio-edit-status-panel{
    display:grid;
    grid-template-columns:1fr 320px;
    gap:18px;
    align-items:stretch;
    margin-bottom:22px;
}

.relatorio-edit-status-panel > div{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:20px;
    padding:20px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.relatorio-edit-status-panel.is-open > div:first-child{
    border-color:rgba(40,167,69,.25);
}

.relatorio-edit-status-panel.is-locked > div:first-child{
    border-color:rgba(255,193,7,.25);
}

.relatorio-edit-status-panel small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.4px;
    margin-bottom:7px;
}

.relatorio-edit-status-panel strong{
    display:block;
    color:#F0D37D;
    font-size:17px;
    margin-bottom:8px;
}

.relatorio-edit-status-panel p{
    color:#C9D1DF;
    font-size:13px;
    line-height:1.6;
    margin:0;
}

.relatorio-edit-form{
    display:flex;
    flex-direction:column;
    gap:22px;
}

.relatorio-edit-panel{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:22px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.relatorio-edit-panel-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:20px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.relatorio-edit-panel-header.compact{
    padding-bottom:14px;
    margin-bottom:14px;
}

.relatorio-edit-panel-header h3{
    color:#ECECEC;
    font-size:19px;
    margin-bottom:6px;
}

.relatorio-edit-panel-header p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.relatorio-edit-panel-header > span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 13px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
}

.relatorio-edit-clientes-list{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.relatorio-edit-cliente-card{
    margin:0;
    background:#151A22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:20px;
    padding:20px;
    box-shadow:0 14px 38px rgba(0,0,0,.18);
}

.relatorio-edit-cliente-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:16px;
    margin-bottom:18px;
    border-bottom:1px solid rgba(200,164,77,.10);
}

.relatorio-edit-cliente-header span{
    color:#F0D37D;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.2px;
}

.relatorio-edit-cliente-header h3{
    color:#ECECEC;
    font-size:19px;
    line-height:1.3;
    margin:6px 0 4px;
}

.relatorio-edit-cliente-header small{
    color:#9FA6B2;
    font-size:12px;
}

.relatorio-edit-cliente-badges{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
}

.relatorio-edit-alert-danger{
    background:rgba(220,53,69,.12);
    border:1px solid rgba(220,53,69,.35);
    color:#FFB3B9;
    padding:13px 15px;
    border-radius:14px;
    margin-bottom:18px;
    font-size:13px;
    font-weight:700;
}

.relatorio-edit-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
}

.relatorio-edit-grid .form-group{
    margin:0;
}

.relatorio-edit-grid label{
    color:#D8BD69;
    font-size:12px;
    font-weight:800;
    margin-bottom:7px;
}

.relatorio-edit-grid input,
.relatorio-edit-grid select,
.relatorio-edit-grid textarea{
    width:100%;
    min-height:44px;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:0 13px;
    font-size:13px;
}

.relatorio-edit-grid textarea{
    min-height:110px;
    padding:13px;
    resize:vertical;
}

.relatorio-edit-grid input:focus,
.relatorio-edit-grid select:focus,
.relatorio-edit-grid textarea:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.relatorio-edit-grid input[readonly],
.relatorio-edit-grid textarea[readonly],
.relatorio-edit-grid select:disabled{
    opacity:.72;
    cursor:not-allowed;
}

.relatorio-edit-grid .full-width{
    grid-column:1 / -1;
}

.relatorio-edit-status-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-top:20px;
    padding-top:18px;
    border-top:1px solid rgba(200,164,77,.12);
}

.relatorio-edit-status-grid .switch-row{
    background:#0F1115;
    border:1px solid #2B303A;
    border-radius:14px;
    margin:0;
    padding:13px 14px;
}

.relatorio-edit-status-grid .switch-row span{
    color:#ECECEC;
    font-size:13px;
    font-weight:700;
}

.relatorio-edit-text-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
}

.relatorio-edit-text-grid .textarea-relatorio{
    width:100%;
    min-height:190px;
    background:#0F1115 !important;
    border:1px solid #2B303A !important;
    color:#ECECEC !important;
    border-radius:14px;
    padding:15px;
    font-size:14px;
    line-height:1.7;
    resize:vertical;
}

.relatorio-edit-action-bar{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:12px;
    background:#151A22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:16px;
}

.relatorio-edit-action-bar .docs-action-primary,
.relatorio-edit-action-bar .docs-action-secondary{
    width:auto;
    min-width:170px;
    min-height:44px;
    border:none;
}

/* =========================================================
   SOPHYX - CLIENTES FUNCIONÁRIO REFINAMENTO
========================================================= */

.clientes-kpi-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:16px;
    margin-bottom:22px;
}

.clientes-kpi-card{
    display:block;
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
    text-decoration:none;
    transition:.25s ease;
}

.clientes-kpi-card:hover{
    transform:translateY(-2px);
    border-color:rgba(200,164,77,.28);
    box-shadow:0 18px 46px rgba(0,0,0,.30);
}

.clientes-kpi-card span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin-bottom:10px;
}

.clientes-kpi-card strong{
    display:block;
    color:#F0D37D;
    font-size:27px;
    line-height:1.1;
    margin-bottom:8px;
}

.clientes-kpi-card small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.clientes-kpi-money{
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.12), transparent 44%),
        linear-gradient(180deg,#1e232d,#181d26);
    border-color:rgba(200,164,77,.24);
}

.clientes-kpi-money strong{
    font-size:20px;
}

.clientes-kpi-warning{
    border-color:rgba(255,193,7,.24);
}

.clientes-kpi-warning strong{
    color:#FFD666;
}

.clientes-kpi-success{
    border-color:rgba(40,167,69,.24);
}

.clientes-kpi-success strong{
    color:#8BE39F;
}

.clientes-empty-state{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:34px 24px;
    text-align:center;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.clientes-empty-state strong{
    display:block;
    color:#F0D37D;
    font-size:18px;
    margin-bottom:8px;
}

.clientes-empty-state p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    margin-bottom:18px;
}

.clientes-empty-state div{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

/* melhora a lista existente */
.cliente-item{
    transition:.25s ease;
}

.cliente-item:hover{
    transform:translateY(-2px);
    border-color:rgba(200,164,77,.25);
}

.cliente-main h3{
    margin-bottom:6px;
}

.cliente-actions a{
    min-height:40px;
}

/* =========================================================
   SOPHYX - VISUALIZAR CLIENTE PREMIUM
========================================================= */

.cliente-view-hero{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:22px;
    margin-bottom:22px;
}

.cliente-view-hero span{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.4px;
    margin-bottom:10px;
}

.cliente-view-hero h2{
    color:#ECECEC;
    font-size:28px;
    line-height:1.25;
    margin-bottom:8px;
}

.cliente-view-hero p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
}

.cliente-view-hero-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}

.cliente-view-kpi-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin-bottom:22px;
}

.cliente-view-kpi{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.cliente-view-kpi span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin-bottom:10px;
}

.cliente-view-kpi strong{
    display:block;
    color:#F0D37D;
    font-size:22px;
    line-height:1.15;
    margin-bottom:8px;
}

.cliente-view-kpi small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.cliente-view-kpi-money{
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.12), transparent 44%),
        linear-gradient(180deg,#1e232d,#181d26);
    border-color:rgba(200,164,77,.24);
}

.cliente-view-kpi-money strong{
    font-size:20px;
}

.cliente-view-kpi-danger{
    border-color:rgba(220,53,69,.32);
}

.cliente-view-kpi-danger strong,
.cliente-view-kpi-danger small{
    color:#FF9BA5;
}

.cliente-view-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 320px;
    gap:22px;
    align-items:start;
}

.cliente-view-main{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.cliente-view-card.premium{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:22px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.cliente-view-card.premium .cliente-view-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:20px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.cliente-view-card.premium .cliente-view-header span:first-child{
    display:block;
    color:#F0D37D;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.4px;
    font-weight:900;
    margin-bottom:7px;
}

.cliente-view-card.premium .cliente-view-header h3{
    color:#ECECEC;
    font-size:20px;
    margin-bottom:6px;
}

.cliente-view-card.premium .cliente-view-header p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.cliente-view-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
}

.cliente-view-grid div{
    background:#151A22;
    border:1px solid rgba(200,164,77,.10);
    border-radius:15px;
    padding:15px;
}

.cliente-view-grid small,
.cliente-section-title p{
    color:#9FA6B2;
}

.cliente-view-grid small{
    display:block;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.2px;
    margin-bottom:7px;
}

.cliente-view-grid strong{
    color:#ECECEC;
    font-size:14px;
    line-height:1.4;
    word-break:break-word;
}

.cliente-section-title{
    padding-bottom:14px;
    margin-bottom:14px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.cliente-section-title h3{
    color:#ECECEC;
    font-size:18px;
    margin-bottom:5px;
}

.cliente-section-title p{
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.cliente-view-text{
    background:#151A22;
    border:1px solid rgba(200,164,77,.10);
    border-radius:15px;
    padding:16px;
    color:#ECECEC;
    font-size:14px;
    line-height:1.7;
}

.cliente-view-side{
    display:flex;
    flex-direction:column;
    gap:14px;
    position:sticky;
    top:20px;
}

.cliente-side-card{
    background:#151A22;
    border:1px solid rgba(200,164,77,.14);
    border-radius:18px;
    padding:18px;
    box-shadow:0 12px 32px rgba(0,0,0,.20);
}

.cliente-side-card small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.5px;
    margin-bottom:8px;
}

.cliente-side-card strong{
    display:block;
    color:#F0D37D;
    font-size:16px;
    margin-bottom:8px;
}

.cliente-side-card p{
    color:#C9D1DF;
    font-size:13px;
    line-height:1.6;
    margin:0;
}

/* =========================================================
   SOPHYX - EDITAR CLIENTE PREMIUM
========================================================= */

.cliente-edit-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 320px;
    gap:22px;
    align-items:start;
}

.cliente-edit-card{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:22px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.cliente-edit-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:22px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.cliente-edit-header span{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 11px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.2px;
    margin-bottom:9px;
}

.cliente-edit-header h3{
    color:#ECECEC;
    font-size:22px;
    line-height:1.3;
    margin-bottom:6px;
}

.cliente-edit-header p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.cliente-edit-header > strong{
    flex:none;
    min-height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 15px;
    border-radius:999px;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.24);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    letter-spacing:.8px;
}

.cliente-edit-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
}

.cliente-edit-grid .form-group{
    margin:0;
}

.cliente-edit-grid label{
    color:#D8BD69;
    font-size:12px;
    font-weight:800;
    margin-bottom:7px;
}

.cliente-edit-grid input,
.cliente-edit-grid select,
.cliente-edit-grid textarea{
    width:100%;
    min-height:44px;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:0 13px;
    font-size:13px;
    transition:.25s ease;
}

.cliente-edit-grid textarea{
    min-height:120px;
    padding:13px;
    resize:vertical;
    line-height:1.6;
}

.cliente-edit-grid input:focus,
.cliente-edit-grid select:focus,
.cliente-edit-grid textarea:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.cliente-edit-grid .full-width{
    grid-column:1 / -1;
}

.cliente-edit-status{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-top:22px;
    padding-top:20px;
    border-top:1px solid rgba(200,164,77,.12);
}

.cliente-edit-status .switch-row{
    background:#151A22;
    border:1px solid rgba(200,164,77,.10);
    border-radius:14px;
    margin:0;
    padding:13px 14px;
}

.cliente-edit-status .switch-row span{
    color:#ECECEC;
    font-size:13px;
    font-weight:700;
}

.cliente-edit-actions{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:12px;
    margin-top:24px;
    padding-top:18px;
    border-top:1px solid rgba(200,164,77,.12);
}

.cliente-edit-actions .clientes-main-btn,
.cliente-edit-actions .clientes-back-btn{
    min-width:170px;
}

/* Lateral informativa */

.cliente-edit-layout .cliente-view-side{
    display:flex;
    flex-direction:column;
    gap:14px;
    position:sticky;
    top:20px;
}

/* Ajuste visual dos cards laterais nessa tela */

.cliente-edit-layout .cliente-side-card{
    background:#151A22;
    border:1px solid rgba(200,164,77,.14);
    border-radius:18px;
    padding:18px;
    box-shadow:0 12px 32px rgba(0,0,0,.20);
}

.cliente-edit-layout .cliente-side-card small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.5px;
    margin-bottom:8px;
}

.cliente-edit-layout .cliente-side-card strong{
    display:block;
    color:#F0D37D;
    font-size:16px;
    margin-bottom:8px;
}

.cliente-edit-layout .cliente-side-card p{
    color:#C9D1DF;
    font-size:13px;
    line-height:1.6;
    margin:0;
}

/* Alertas da tela */

.cliente-edit-layout + .docs-alert,
.docs-alert.docs-alert-error{
    border-radius:14px;
}

/* =========================================================
   SOPHYX - CLIENTES ADMIN REFINAMENTO
========================================================= */

.clientes-kpi-grid-admin{
    margin-bottom:22px;
}

.clientes-kpi-danger{
    border-color:rgba(220,53,69,.26);
}

.clientes-kpi-danger strong{
    color:#FF9BA5;
}

.clientes-filter-form-admin{
    grid-template-columns:2fr 1.3fr 1fr 1fr 1fr 1fr auto;
}

.clientes-admin-info.premium{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:14px;
    background:#151A22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:16px;
    padding:14px 16px;
    margin-bottom:18px;
    box-shadow:0 10px 28px rgba(0,0,0,.18);
}

.clientes-admin-info.premium strong{
    color:#F0D37D;
    font-size:13px;
    font-weight:900;
}

.clientes-admin-info.premium span{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    text-align:right;
}

.cliente-item-admin{
    grid-template-columns:2.2fr 1.1fr 1.1fr 1fr 1.1fr .85fr;
}

.cliente-item-admin .cliente-meta strong{
    color:#F0D37D;
}

.cliente-item-admin .cliente-box{
    min-height:100%;
}

.cliente-item-admin .cliente-actions{
    justify-content:center;
}

/* =========================================================
   SOPHYX - VISUALIZAR CLIENTE ADMIN
========================================================= */

.cliente-view-hero-admin p strong{
    color:#F0D37D;
}

.cliente-view-kpi-grid-admin{
    grid-template-columns:repeat(4,1fr);
}

.cliente-log-list.premium{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.cliente-log-item.premium{
    background:#151A22;
    border:1px solid rgba(200,164,77,.10);
    border-radius:15px;
    padding:15px;
}

.cliente-log-item.premium div{
    display:flex;
    flex-direction:column;
    gap:6px;
    margin-bottom:10px;
}

.cliente-log-item.premium strong{
    color:#F0D37D;
    font-size:13px;
    font-weight:900;
    letter-spacing:.4px;
}

.cliente-log-item.premium span{
    color:#ECECEC;
    font-size:13px;
    line-height:1.6;
    word-break:break-word;
}

.cliente-log-item.premium small{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    line-height:1.5;
}

.cliente-side-alert{
    border-color:rgba(220,53,69,.35) !important;
    background:rgba(80,20,24,.35) !important;
}

.cliente-side-alert strong{
    color:#FF9BA5 !important;
}

/* =========================================================
   SOPHYX - EDITAR CLIENTE ADMIN COMPLEMENTO
========================================================= */

.cliente-edit-responsavel-admin{
    display:inline !important;
    color:#F0D37D !important;
    background:none !important;
    border:none !important;
    width:auto !important;
    height:auto !important;
    min-width:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    font-size:13px !important;
}

/* =========================================================
   SOPHYX - RELATÓRIOS ADMIN PREMIUM
========================================================= */

.relatorios-admin-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:22px;
    margin-bottom:22px;
}

.relatorios-admin-header span{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.4px;
    margin-bottom:10px;
}

.relatorios-admin-header h2{
    color:#ECECEC;
    font-size:28px;
    line-height:1.25;
    margin-bottom:8px;
}

.relatorios-admin-header p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    max-width:840px;
}

.relatorios-admin-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.relatorios-admin-filter-panel{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:20px;
    margin-bottom:22px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.relatorios-admin-filter-form{
    display:grid;
    grid-template-columns:2fr 1fr 1fr auto;
    gap:16px;
    align-items:end;
}

.relatorios-admin-filter-form .form-group{
    margin:0;
}

.relatorios-admin-filter-form label{
    color:#D8BD69;
    font-size:12px;
    font-weight:800;
    margin-bottom:7px;
}

.relatorios-admin-filter-form input,
.relatorios-admin-filter-form select{
    width:100%;
    min-height:44px;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:0 13px;
    font-size:13px;
}

.relatorios-admin-filter-form input:focus,
.relatorios-admin-filter-form select:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.relatorios-admin-filter-actions{
    display:flex;
    align-items:center;
    gap:10px;
}

.relatorios-admin-filter-actions .docs-action-primary,
.relatorios-admin-filter-actions .docs-action-secondary{
    width:auto;
    min-width:120px;
    min-height:44px;
    border:none;
}

.relatorios-admin-kpi-grid{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:16px;
    margin-bottom:22px;
}

.relatorios-admin-kpi{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.relatorios-admin-kpi span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin-bottom:10px;
}

.relatorios-admin-kpi strong{
    display:block;
    color:#F0D37D;
    font-size:26px;
    line-height:1.1;
    margin-bottom:8px;
}

.relatorios-admin-kpi small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.relatorios-admin-kpi-money{
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.12), transparent 44%),
        linear-gradient(180deg,#1e232d,#181d26);
    border-color:rgba(200,164,77,.24);
}

.relatorios-admin-kpi-money strong{
    font-size:19px;
}

.relatorios-admin-kpi-success{
    border-color:rgba(40,167,69,.25);
}

.relatorios-admin-kpi-success strong{
    color:#8BE39F;
}

.relatorios-admin-kpi-warning{
    border-color:rgba(255,193,7,.25);
}

.relatorios-admin-kpi-warning strong{
    color:#FFD666;
}

.relatorios-admin-panel{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    overflow:hidden;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.relatorios-admin-panel-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    padding:20px 22px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.relatorios-admin-panel-header h3{
    color:#ECECEC;
    font-size:19px;
    margin-bottom:6px;
}

.relatorios-admin-panel-header p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.relatorios-admin-panel-header > span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 13px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
}

.relatorios-admin-table-wrapper{
    border-radius:0;
}

.relatorios-admin-table{
    width:100%;
    border-collapse:collapse;
}

.relatorios-admin-table th{
    padding:15px;
    background:#242A34;
    color:#C8A44D;
    font-size:12px;
    text-align:left;
    text-transform:uppercase;
    letter-spacing:.6px;
    white-space:nowrap;
}

.relatorios-admin-table td{
    padding:15px;
    border-top:1px solid #2B303A;
    color:#ECECEC;
    font-size:13px;
    vertical-align:middle;
    white-space:nowrap;
}

.relatorios-admin-table tr:hover{
    background:#20242D;
}

.relatorios-admin-data{
    color:#ECECEC;
}

.relatorios-admin-valor{
    color:#F0D37D;
}

.relatorios-admin-table-actions{
    display:flex;
    align-items:center;
    gap:8px;
}

.relatorios-admin-table-actions .docs-action-primary,
.relatorios-admin-table-actions .docs-action-secondary{
    width:auto;
    min-width:88px;
    min-height:36px;
    padding:0 12px;
    font-size:12px;
}

.relatorios-admin-empty{
    padding:34px 22px;
    text-align:center;
}

.relatorios-admin-empty strong{
    display:block;
    color:#F0D37D;
    font-size:18px;
    margin-bottom:8px;
}

.relatorios-admin-empty p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    margin-bottom:18px;


/* =========================================================
   SOPHYX - EDITAR RELATÓRIO ADMIN PREMIUM
========================================================= */

.relatorio-admin-edit-header p strong{
    color:#F0D37D;
}

.relatorio-admin-edit-kpi-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:16px;
    margin-bottom:22px;
}

.relatorio-admin-edit-kpi{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.relatorio-admin-edit-kpi span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin-bottom:10px;
}

.relatorio-admin-edit-kpi strong{
    display:block;
    color:#F0D37D;
    font-size:26px;
    line-height:1.1;
    margin-bottom:8px;
}

.relatorio-admin-edit-kpi small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.relatorio-admin-edit-kpi-money{
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.12), transparent 44%),
        linear-gradient(180deg,#1e232d,#181d26);
    border-color:rgba(200,164,77,.24);
}

.relatorio-admin-edit-kpi-money strong{
    font-size:19px;
}

.relatorio-admin-edit-kpi-success{
    border-color:rgba(40,167,69,.25);
}

.relatorio-admin-edit-kpi-success strong{
    color:#8BE39F;
}

.relatorio-admin-edit-kpi-warning{
    border-color:rgba(255,193,7,.25);
}

.relatorio-admin-edit-kpi-warning strong{
    color:#FFD666;
}

.relatorio-admin-edit-kpi-danger{
    border-color:rgba(220,53,69,.28);
}

.relatorio-admin-edit-kpi-danger strong{
    color:#FF9BA5;
}

.relatorio-admin-readonly-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-bottom:16px;
}

.relatorio-admin-readonly-grid > div{
    background:#0F1115;
    border:1px solid #2B303A;
    border-radius:14px;
    padding:14px;
}

.relatorio-admin-readonly-grid small,
.relatorio-admin-text-block small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.2px;
    margin-bottom:7px;
}

.relatorio-admin-readonly-grid strong{
    color:#ECECEC;
    font-size:13px;
    line-height:1.4;
    word-break:break-word;
}

.relatorio-admin-readonly-grid input{
    width:100%;
    min-height:38px;
    background:#151A22;
    border:1px solid rgba(200,164,77,.14);
    color:#ECECEC;
    border-radius:10px;
    padding:0 11px;
    font-size:13px;
}

.relatorio-admin-readonly-grid input:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.relatorio-admin-text-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.relatorio-admin-text-block{
    background:#0F1115;
    border:1px solid #2B303A;
    border-radius:14px;
    padding:14px;
    margin-top:12px;
}

.relatorio-admin-text-block p{
    color:#ECECEC;
    font-size:13px;
    line-height:1.7;
    margin:0;
}

.relatorio-admin-status-grid{
    margin-top:20px;
}

/* =========================================================
   SOPHYX - USUÁRIOS ADMIN PREMIUM
========================================================= */

.usuarios-admin-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:22px;
    margin-bottom:22px;
}

.usuarios-admin-header span{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.4px;
    margin-bottom:10px;
}

.usuarios-admin-header h2{
    color:#ECECEC;
    font-size:28px;
    line-height:1.25;
    margin-bottom:8px;
}

.usuarios-admin-header p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    max-width:840px;
}

.usuarios-admin-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.usuarios-admin-kpi-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:16px;
    margin-bottom:22px;
}

.usuarios-admin-kpi{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.usuarios-admin-kpi span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin-bottom:10px;
}

.usuarios-admin-kpi strong{
    display:block;
    color:#F0D37D;
    font-size:27px;
    line-height:1.1;
    margin-bottom:8px;
}

.usuarios-admin-kpi small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.usuarios-admin-kpi-success{
    border-color:rgba(40,167,69,.25);
}

.usuarios-admin-kpi-success strong{
    color:#8BE39F;
}

.usuarios-admin-kpi-danger{
    border-color:rgba(220,53,69,.28);
}

.usuarios-admin-kpi-danger strong{
    color:#FF9BA5;
}

.usuarios-admin-kpi-admin{
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.12), transparent 44%),
        linear-gradient(180deg,#1e232d,#181d26);
    border-color:rgba(200,164,77,.24);
}

.usuarios-admin-panel{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:22px;
    margin-bottom:22px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.usuarios-admin-panel-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:20px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.usuarios-admin-panel-header h3{
    color:#ECECEC;
    font-size:19px;
    margin-bottom:6px;
}

.usuarios-admin-panel-header p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.usuarios-admin-panel-header > span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 13px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
}

.usuarios-admin-form{
    display:grid;
    grid-template-columns:repeat(4,1fr) auto;
    gap:16px;
    align-items:end;
}

.usuarios-admin-form .form-group{
    margin:0;
}

.usuarios-admin-form label{
    color:#D8BD69;
    font-size:12px;
    font-weight:800;
    margin-bottom:7px;
}

.usuarios-admin-form input{
    width:100%;
    min-height:44px;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:0 13px;
    font-size:13px;
}

.usuarios-admin-form input:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.usuarios-admin-form-actions{
    display:flex;
    align-items:center;
}

.usuarios-admin-form-actions .docs-action-primary{
    width:auto;
    min-width:190px;
    min-height:44px;
    border:none;
}

.usuarios-admin-table-wrapper{
    border-radius:16px;
}

.usuarios-admin-table{
    width:100%;
    border-collapse:collapse;
}

.usuarios-admin-table th{
    padding:15px;
    background:#242A34;
    color:#C8A44D;
    font-size:12px;
    text-align:left;
    text-transform:uppercase;
    letter-spacing:.6px;
    white-space:nowrap;
}

.usuarios-admin-table td{
    padding:15px;
    border-top:1px solid #2B303A;
    color:#ECECEC;
    font-size:13px;
    vertical-align:middle;
    white-space:nowrap;
}

.usuarios-admin-table tr:hover{
    background:#20242D;
}

.usuarios-admin-name{
    display:block;
    color:#ECECEC;
    margin-bottom:4px;
}

.usuarios-admin-table td small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
}

.usuarios-admin-table-actions{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.usuarios-admin-table-actions .docs-action-primary,
.usuarios-admin-table-actions .docs-action-secondary,
.usuarios-admin-table-actions .docs-action-danger,
.usuarios-admin-table-actions .docs-action-success{
    width:auto;
    min-width:86px;
    min-height:36px;
    padding:0 12px;
    font-size:12px;
}

.usuarios-page-toolbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    margin-bottom:22px;
}

.usuarios-page-toolbar p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    margin:0;
}

.usuarios-admin-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

/* KPIs */

.usuarios-admin-kpi-grid{
    display:grid !important;
    grid-template-columns:repeat(5,1fr);
    gap:16px;
    margin:0 0 22px 0;
}

.usuarios-admin-kpi{
    display:block;
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:18px;
    padding:18px;
    min-height:118px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.usuarios-admin-kpi span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.8px;
    margin-bottom:10px;
}

.usuarios-admin-kpi strong{
    display:block;
    color:#F0D37D;
    font-size:28px;
    line-height:1.1;
    margin-bottom:8px;
}

.usuarios-admin-kpi small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.usuarios-admin-kpi-success{
    border-color:rgba(40,167,69,.25);
}

.usuarios-admin-kpi-success strong{
    color:#8BE39F;
}

.usuarios-admin-kpi-danger{
    border-color:rgba(220,53,69,.28);
}

.usuarios-admin-kpi-danger strong{
    color:#FF9BA5;
}

.usuarios-admin-kpi-admin{
    border-color:rgba(156,128,255,.25);
}

.usuarios-admin-kpi-admin strong{
    color:#B7A7FF;
}

/* Painéis */

.usuarios-admin-panel{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:22px;
    margin-bottom:22px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.usuarios-admin-panel-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:20px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.usuarios-admin-panel-header h3{
    color:#ECECEC;
    font-size:19px;
    margin-bottom:6px;
}

.usuarios-admin-panel-header p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.usuarios-admin-panel-header > span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 13px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
}

/* Formulário */

.usuarios-admin-form{
    display:grid;
    grid-template-columns:repeat(4,1fr) auto;
    gap:16px;
    align-items:end;
}

.usuarios-admin-form .form-group{
    margin:0;
}

.usuarios-admin-form label{
    color:#D8BD69;
    font-size:12px;
    font-weight:800;
    margin-bottom:7px;
}

.usuarios-admin-form input{
    width:100%;
    min-height:44px;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:0 13px;
    font-size:13px;
}

.usuarios-admin-form input:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.usuarios-admin-form-actions{
    display:flex;
    align-items:end;
}

.usuarios-admin-form-actions .docs-action-primary{
    width:auto;
    min-width:180px;
    min-height:44px;
    border:none;
}

/* Tabela */

.usuarios-admin-table-wrapper{
    border-radius:16px;
    overflow:auto;
}

.usuarios-admin-table{
    width:100%;
}

.usuarios-admin-table th{
    padding:15px;
    background:#242A34;
    color:#C8A44D;
    font-size:12px;
    text-align:left;
    text-transform:uppercase;
    letter-spacing:.6px;
    white-space:nowrap;
}

.usuarios-admin-table td{
    padding:15px;
    border-top:1px solid #2B303A;
    color:#ECECEC;
    font-size:13px;
    vertical-align:middle;
}

.usuarios-admin-table tr:hover{
    background:#20242D;
}

.usuarios-admin-name{
    display:block;
    color:#ECECEC;
    margin-bottom:4px;
}

.usuarios-admin-table td small{
    display:block;
    color:#F0D37D;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
}

.usuarios-admin-table-actions{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
}

.usuarios-admin-table-actions .docs-action-primary,
.usuarios-admin-table-actions .docs-action-secondary,
.usuarios-admin-table-actions .docs-action-danger,
.usuarios-admin-table-actions .docs-action-success{
    width:auto;
    min-width:92px;
    min-height:34px;
    padding:0 11px;
    font-size:11px;
    border-radius:10px;
}

/* Botão ativar */

.docs-action-success{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    background:rgba(40,167,69,.14);
    border:1px solid rgba(40,167,69,.30);
    color:#8BE39F;
    font-weight:800;
    text-decoration:none;
    cursor:pointer;
    transition:.25s ease;
}

.docs-action-success:hover{
    background:rgba(40,167,69,.22);
    color:#fff;
    transform:translateY(-2px);
}

/* Botões adicionais */

.docs-action-danger{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(125,30,30,.22);
    color:#FF9BA5 !important;
    border:1px solid rgba(255,100,100,.28);
    border-radius:12px;
    font-weight:800;
    text-decoration:none;
    transition:.25s ease;
}

.docs-action-danger:hover{
    background:rgba(180,45,45,.30);
    color:#fff !important;
    transform:translateY(-2px);
}

.docs-action-success{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(40,167,69,.16);
    color:#8BE39F !important;
    border:1px solid rgba(40,167,69,.30);
    border-radius:12px;
    font-weight:800;
    text-decoration:none;
    transition:.25s ease;
}

.docs-action-success:hover{
    background:rgba(40,167,69,.25);
    color:#fff !important;
    transform:translateY(-2px);
}

/* =========================================================
   SOPHYX - VISUALIZAR USUÁRIO PREMIUM
========================================================= */

.usuarios-view-hero{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:22px;
    margin-bottom:22px;
}

.usuarios-view-hero span{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.4px;
    margin-bottom:10px;
}

.usuarios-view-hero h2{
    color:#ECECEC;
    font-size:28px;
    line-height:1.25;
    margin-bottom:8px;
}

.usuarios-view-hero p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
}

.usuarios-view-hero p strong{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 9px;
    margin-left:6px;
    border-radius:999px;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.22);
    color:#F0D37D;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.8px;
}

.usuarios-view-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}

.usuarios-view-kpi-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin-bottom:22px;
}

.usuarios-view-kpi{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.usuarios-view-kpi span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin-bottom:10px;
}

.usuarios-view-kpi strong{
    display:block;
    color:#F0D37D;
    font-size:20px;
    line-height:1.2;
    margin-bottom:8px;
}

.usuarios-view-kpi small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.usuarios-view-kpi-current{
    border-color:rgba(200,164,77,.28);
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.12), transparent 44%),
        linear-gradient(180deg,#1e232d,#181d26);
}

.usuarios-view-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 320px;
    gap:22px;
    align-items:start;
}

.usuarios-view-main{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.usuarios-view-card{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:22px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.usuarios-view-card-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:20px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.usuarios-view-card-header.compact{
    padding-bottom:14px;
    margin-bottom:14px;
}

.usuarios-view-card-header h3{
    color:#ECECEC;
    font-size:19px;
    margin-bottom:6px;
}

.usuarios-view-card-header p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.usuarios-view-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
}

.usuarios-view-grid div{
    background:#151A22;
    border:1px solid rgba(200,164,77,.10);
    border-radius:15px;
    padding:15px;
}

.usuarios-view-grid small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.2px;
    margin-bottom:7px;
}

.usuarios-view-grid strong{
    color:#ECECEC;
    font-size:14px;
    line-height:1.4;
    word-break:break-word;
}

.usuarios-view-text{
    background:#151A22;
    border:1px solid rgba(200,164,77,.10);
    border-radius:15px;
    padding:16px;
    color:#ECECEC;
    font-size:14px;
    line-height:1.7;
}

.usuarios-view-side{
    display:flex;
    flex-direction:column;
    gap:14px;
    position:sticky;
    top:20px;
}

.usuarios-side-card{
    background:#151A22;
    border:1px solid rgba(200,164,77,.14);
    border-radius:18px;
    padding:18px;
    box-shadow:0 12px 32px rgba(0,0,0,.20);
}

.usuarios-side-card small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.5px;
    margin-bottom:8px;
}

.usuarios-side-card strong{
    display:block;
    color:#F0D37D;
    font-size:16px;
    margin-bottom:8px;
}

.usuarios-side-card p{
    color:#C9D1DF;
    font-size:13px;
    line-height:1.6;
    margin:0;
}

/* Responsivo */

@media(max-width:1200px){

    .usuarios-view-layout{
        grid-template-columns:1fr;
    }

    .usuarios-view-side{
        position:static;
        display:grid;
        grid-template-columns:repeat(2,1fr);
    }

    .usuarios-view-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){

    .usuarios-view-hero,
    .usuarios-view-card-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .usuarios-view-kpi-grid,
    .usuarios-view-grid,
    .usuarios-view-side{
        grid-template-columns:1fr;
    }

    .usuarios-view-actions,
    .usuarios-view-actions a{
        width:100%;
    }
}

/* =========================================================
   SOPHYX - EDITAR USUÁRIO PREMIUM
========================================================= */

.usuarios-edit-hero{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:22px;
    margin-bottom:22px;
}

.usuarios-edit-hero span{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.4px;
    margin-bottom:10px;
}

.usuarios-edit-hero h2{
    color:#ECECEC;
    font-size:28px;
    line-height:1.25;
    margin-bottom:8px;
}

.usuarios-edit-hero p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    max-width:840px;
}

.usuarios-edit-hero p strong{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 9px;
    margin-left:6px;
    border-radius:999px;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.22);
    color:#F0D37D;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.8px;
}

.usuarios-edit-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}

.usuarios-edit-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 320px;
    gap:22px;
    align-items:start;
}

.usuarios-edit-main form{
    display:flex;
    flex-direction:column;
    gap:22px;
}

.usuarios-edit-card{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:22px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.usuarios-edit-card-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:20px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.usuarios-edit-card-header h3{
    color:#ECECEC;
    font-size:19px;
    margin-bottom:6px;
}

.usuarios-edit-card-header p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.usuarios-edit-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
}

.usuarios-edit-grid .form-group{
    margin:0;
}

.usuarios-edit-grid label{
    color:#D8BD69;
    font-size:12px;
    font-weight:800;
    margin-bottom:7px;
}

.usuarios-edit-grid input,
.usuarios-edit-grid select{
    width:100%;
    min-height:44px;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:0 13px;
    font-size:13px;
    transition:.25s ease;
}

.usuarios-edit-grid input:focus,
.usuarios-edit-grid select:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.usuarios-edit-grid input:disabled,
.usuarios-edit-grid select:disabled{
    opacity:.7;
    cursor:not-allowed;
}

.usuarios-edit-grid .full-width{
    grid-column:1 / -1;
}

.usuario-edit-status-group{
    display:flex;
    flex-direction:column;
}

.usuario-edit-switch-box{
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    background:#0F1115;
    border:1px solid #2B303A;
    border-radius:12px;
    padding:0 13px;
}

.usuario-edit-switch-box span{
    color:#ECECEC;
    font-size:13px;
    font-weight:700;
}

.usuarios-edit-action-bar{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:12px;
    background:#151A22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:16px;
}

.usuarios-edit-action-bar .docs-action-primary,
.usuarios-edit-action-bar .docs-action-secondary{
    width:auto;
    min-width:170px;
    min-height:44px;
    border:none;
}

.usuarios-edit-side{
    display:flex;
    flex-direction:column;
    gap:14px;
    position:sticky;
    top:20px;
}

/* =========================================================
   SOPHYX - AUDITORIA ADMIN PREMIUM
========================================================= */

.audit-admin-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:22px;
    margin-bottom:22px;
}

.audit-admin-header span{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.4px;
    margin-bottom:10px;
}

.audit-admin-header h2{
    color:#ECECEC;
    font-size:28px;
    line-height:1.25;
    margin-bottom:8px;
}

.audit-admin-header p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    max-width:860px;
}

.audit-admin-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.audit-admin-kpi-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:16px;
    margin-bottom:22px;
}

.audit-admin-kpi{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.audit-admin-kpi span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin-bottom:10px;
}

.audit-admin-kpi strong{
    display:block;
    color:#F0D37D;
    font-size:27px;
    line-height:1.1;
    margin-bottom:8px;
}

.audit-admin-kpi small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.audit-admin-kpi-cliente{
    border-color:rgba(200,164,77,.24);
}

.audit-admin-kpi-doc{
    border-color:rgba(100,181,246,.24);
}

.audit-admin-kpi-doc strong{
    color:#90CAF9;
}

.audit-admin-kpi-login{
    border-color:rgba(40,167,69,.25);
}

.audit-admin-kpi-login strong{
    color:#8BE39F;
}

.audit-admin-kpi-relatorio{
    border-color:rgba(255,193,7,.25);
}

.audit-admin-kpi-relatorio strong{
    color:#FFD666;
}

.audit-admin-kpi-user{
    border-color:rgba(156,128,255,.25);
}

.audit-admin-kpi-user strong{
    color:#B7A7FF;
}

.audit-admin-filter-panel{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:20px;
    margin-bottom:18px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.audit-admin-filter-form{
    display:grid;
    grid-template-columns:2fr 1.2fr 1.2fr 1fr 1fr auto;
    gap:16px;
    align-items:end;
}

.audit-admin-filter-form .form-group{
    margin:0;
}

.audit-admin-filter-form label{
    color:#D8BD69;
    font-size:12px;
    font-weight:800;
    margin-bottom:7px;
}

.audit-admin-filter-form input,
.audit-admin-filter-form select{
    width:100%;
    min-height:44px;
    background:#0F1115;
    border:1px solid #2B303A;
    color:#ECECEC;
    border-radius:12px;
    padding:0 13px;
    font-size:13px;
}

.audit-admin-filter-form input:focus,
.audit-admin-filter-form select:focus{
    border-color:#C8A44D;
    box-shadow:0 0 0 3px rgba(200,164,77,.12);
}

.audit-admin-filter-actions{
    display:flex;
    align-items:center;
    gap:10px;
}

.audit-admin-filter-actions .docs-action-primary,
.audit-admin-filter-actions .docs-action-secondary{
    width:auto;
    min-width:110px;
    min-height:44px;
    border:none;
}

.audit-admin-toolbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    background:#151A22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:16px;
    margin-bottom:18px;
}

.audit-admin-toolbar > div{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.audit-admin-toolbar strong{
    color:#F0D37D;
    font-size:13px;
    font-weight:900;
}

.audit-admin-toolbar span{
    color:#9FA6B2;
    font-size:13px;
}

.audit-admin-toolbar form{
    margin:0;
}

.audit-admin-toolbar .docs-action-danger{
    min-height:42px;
    padding:0 14px;
    border-radius:12px;
}

.audit-admin-panel{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    overflow:hidden;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.audit-admin-panel-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    padding:20px 22px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.audit-admin-panel-header h3{
    color:#ECECEC;
    font-size:19px;
    margin-bottom:6px;
}

.audit-admin-panel-header p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin:0;
}

.audit-admin-panel-header > span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 13px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
}

.audit-admin-table-wrapper{
    border-radius:0;
}

.audit-admin-table{
    width:100%;
    border-collapse:collapse;
}

.audit-admin-table th{
    padding:15px;
    background:#242A34;
    color:#C8A44D;
    font-size:12px;
    text-align:left;
    text-transform:uppercase;
    letter-spacing:.6px;
    white-space:nowrap;
}

.audit-admin-table td{
    padding:15px;
    border-top:1px solid #2B303A;
    color:#ECECEC;
    font-size:13px;
    vertical-align:top;
}

.audit-admin-table tr:hover{
    background:#20242D;
}

.audit-date{
    color:#F0D37D;
    white-space:nowrap;
}

.audit-user{
    color:#ECECEC;
    font-weight:800;
    white-space:nowrap;
}

.audit-ip{
    font-family:Consolas, monospace;
    color:#C9D1DF;
    font-size:12px;
    white-space:nowrap;
}

.audit-description{
    max-width:560px;
    color:#ECECEC;
    line-height:1.6;
    word-break:break-word;
}

.audit-origin{
    max-width:360px;
    display:flex;
    flex-direction:column;
    gap:6px;
}

.audit-origin span,
.audit-origin small{
    display:block;
    color:#9FA6B2;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.audit-origin small{
    font-size:11px;
    opacity:.85;
}

.audit-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:0 10px;
    border-radius:999px;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.7px;
    white-space:nowrap;
}

.audit-login{
    background:rgba(40,167,69,.14);
    border:1px solid rgba(40,167,69,.30);
    color:#8BE39F;
}

.audit-logout{
    background:rgba(159,166,178,.12);
    border:1px solid rgba(159,166,178,.24);
    color:#D6DAE2;
}

.audit-cliente{
    background:rgba(200,164,77,.11);
    border:1px solid rgba(200,164,77,.26);
    color:#F0D37D;
}

.audit-documento{
    background:rgba(100,181,246,.13);
    border:1px solid rgba(100,181,246,.30);
    color:#90CAF9;
}

.audit-relatorio{
    background:rgba(255,193,7,.12);
    border:1px solid rgba(255,193,7,.26);
    color:#FFD666;
}

.audit-usuario{
    background:rgba(156,128,255,.13);
    border:1px solid rgba(156,128,255,.30);
    color:#B7A7FF;
}

.audit-sistema{
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.16);
    color:#ECECEC;
}

.audit-default{
    background:rgba(159,166,178,.12);
    border:1px solid rgba(159,166,178,.24);
    color:#D6DAE2;
}

.audit-admin-empty{
    padding:34px 22px;
    text-align:center;
}

.audit-admin-empty strong{
    display:block;
    color:#F0D37D;
    font-size:18px;
    margin-bottom:8px;
}

.audit-admin-empty p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    margin-bottom:18px;
}

/* =========================================================
   SOPHYX - DOCUMENTOS ADMIN REFINAMENTO
========================================================= */

.docs-admin-kpi-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:16px;
    margin-bottom:22px;
}

.docs-admin-kpi{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.docs-admin-kpi span{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin-bottom:10px;
}

.docs-admin-kpi strong{
    display:block;
    color:#F0D37D;
    font-size:27px;
    line-height:1.1;
    margin-bottom:8px;
}

.docs-admin-kpi small{
    display:block;
    color:#8E98AA;
    font-size:12px;
    line-height:1.4;
}

.docs-admin-kpi-success{
    border-color:rgba(40,167,69,.25);
}

.docs-admin-kpi-success strong{
    color:#8BE39F;
}

.docs-admin-kpi-warning{
    border-color:rgba(255,193,7,.25);
}

.docs-admin-kpi-warning strong{
    color:#FFD666;
}

.docs-admin-kpi-danger{
    border-color:rgba(220,53,69,.28);
}

.docs-admin-kpi-danger strong{
    color:#FF9BA5;
}

.docs-admin-kpi-video{
    border-color:rgba(100,181,246,.24);
}

.docs-admin-kpi-video strong{
    color:#90CAF9;
}

.docs-empty-premium{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:36px 24px;
    text-align:center;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.docs-empty-premium strong{
    display:block;
    color:#F0D37D;
    font-size:20px;
    margin-bottom:10px;
}

.docs-empty-premium p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    max-width:560px;
    margin:0 auto 20px;
}

.docs-empty-premium .docs-main-btn{
    width:auto;
    min-width:170px;
}

/* Melhor alinhamento dos cards de documentos */

.docs-item{
    position:relative;
}

.docs-actions form{
    width:100%;
}

.docs-actions form .docs-action-danger{
    width:100%;
    min-height:38px;
    border-radius:12px;
    cursor:pointer;
}

.docs-action-disabled{
    opacity:.65;
    cursor:not-allowed;
    pointer-events:none;
}

.docs-validity-form input[type="datetime-local"]{
    color-scheme:dark;
}

/* =========================================================
   SOPHYX - NOVO DOCUMENTO REFINAMENTO
========================================================= */

.docs-upload-card{
    position:relative;
    overflow:hidden;
}

.docs-upload-card::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:3px;
    background:linear-gradient(90deg, transparent, #C8A44D, transparent);
    opacity:.9;
}

.docs-upload-field input[type="file"]{
    padding:10px;
    cursor:pointer;
}

.docs-upload-field input[type="file"]::file-selector-button{
    min-height:34px;
    padding:0 14px;
    margin-right:12px;
    border:none;
    border-radius:10px;
    background:linear-gradient(135deg,#C8A44D,#F0D37D);
    color:#111;
    font-weight:900;
    cursor:pointer;
}

.docs-upload-field input[type="datetime-local"]{
    color-scheme:dark;
}

.docs-upload-cis{
    background:rgba(200,164,77,.06);
    border:1px solid rgba(200,164,77,.16);
    border-radius:16px;
    padding:16px;
}

.docs-upload-cis label{
    display:flex;
    align-items:center;
    gap:10px;
    color:#ECECEC;
    font-weight:800;
}

.docs-upload-cis input{
    accent-color:#C8A44D;
}

.docs-upload-cis p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.6;
    margin-top:8px;
}

.upload-progress-box{
    display:none;
    background:#151A22;
    border:1px solid rgba(200,164,77,.16);
    border-radius:16px;
    padding:16px;
    margin-top:20px;
}

.upload-progress-info{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:10px;
}

.upload-progress-info span{
    color:#ECECEC;
    font-size:13px;
    font-weight:800;
}

.upload-progress-info strong{
    color:#F0D37D;
    font-size:14px;
}

.upload-progress-track{
    width:100%;
    height:10px;
    background:#0F1115;
    border:1px solid #2B303A;
    border-radius:999px;
    overflow:hidden;
    margin-bottom:9px;
}

.upload-progress-bar{
    width:0%;
    height:100%;
    background:linear-gradient(90deg,#C8A44D,#F0D37D);
    border-radius:999px;
    transition:width .25s ease;
}

.upload-progress-box small{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    line-height:1.5;
}

.docs-upload-actions{
    margin-top:22px;
    padding-top:18px;
    border-top:1px solid rgba(200,164,77,.12);
}

.docs-side-card{
    transition:.25s ease;
}

.docs-side-card:hover{
    transform:translateY(-2px);
    border-color:rgba(200,164,77,.26);
}

/* =========================================================
   SOPHYX - ACESSOS DO DOCUMENTO REFINAMENTO
========================================================= */

.docs-access-summary{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:16px;
    margin-bottom:22px;
}

.docs-access-document{
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.11), transparent 42%),
        linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:22px;
    margin-bottom:22px;
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.docs-access-document-main small{
    display:inline-flex;
    align-items:center;
    min-height:26px;
    padding:0 10px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.18);
    color:#F0D37D;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.2px;
    margin-bottom:10px;
}

.docs-access-document-main h3{
    color:#ECECEC;
    font-size:22px;
    line-height:1.3;
    margin-bottom:8px;
}

.docs-access-document-main p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    margin:0;
}

.docs-access-document-main p strong{
    color:#F0D37D;
}

.docs-access-document-main p span{
    display:inline-block;
    margin-left:8px;
    color:#C9D1DF;
}

.docs-access-document-status{
    display:flex;
    justify-content:flex-end;
}

.docs-access-mini-card{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.12);
    border-radius:18px;
    padding:18px;
    box-shadow:0 14px 38px rgba(0,0,0,.22);
}

.docs-access-mini-card small{
    display:block;
    color:#9FA6B2;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin-bottom:10px;
}

.docs-access-mini-card strong{
    display:block;
    color:#F0D37D;
    font-size:18px;
    line-height:1.25;
    word-break:break-word;
}

.docs-access-card{
    background:linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    overflow:hidden;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.docs-access-card-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding:20px 22px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.docs-access-card-header span{
    display:inline-flex;
    align-items:center;
    min-height:26px;
    padding:0 10px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.18);
    color:#F0D37D;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.2px;
    margin-bottom:8px;
}

.docs-access-card-header h3{
    color:#ECECEC;
    font-size:19px;
}

.docs-access-card-header > strong{
    color:#F0D37D;
    font-size:13px;
    white-space:nowrap;
}

.docs-access-table-wrap{
    overflow-x:auto;
}

.docs-access-table{
    width:100%;
    border-collapse:collapse;
}

.docs-access-table th{
    padding:15px;
    background:#242A34;
    color:#C8A44D;
    font-size:12px;
    text-align:left;
    text-transform:uppercase;
    letter-spacing:.6px;
    white-space:nowrap;
}

.docs-access-table td{
    padding:15px;
    border-top:1px solid #2B303A;
    color:#ECECEC;
    font-size:13px;
    vertical-align:top;
}

.docs-access-table tr:hover{
    background:#20242D;
}

.docs-access-table td strong{
    color:#ECECEC;
}

.docs-access-muted{
    color:#9FA6B2;
    font-size:12px;
    line-height:1.5;
    margin-top:5px;
}

.docs-access-break{
    max-width:320px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.docs-access-useragent{
    max-width:320px;
    color:#C9D1DF;
    font-size:12px;
    line-height:1.5;
    word-break:break-word;
}

.docs-access-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:0 10px;
    border-radius:999px;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.7px;
    white-space:nowrap;
}

.docs-access-success{
    background:rgba(40,167,69,.14);
    border:1px solid rgba(40,167,69,.30);
    color:#8BE39F;
}

.docs-access-fail{
    background:rgba(220,53,69,.14);
    border:1px solid rgba(220,53,69,.30);
    color:#FF9BA5;
}

.docs-access-map-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:0 10px;
    margin-top:8px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.20);
    color:#F0D37D !important;
    font-size:11px;
    font-weight:900;
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:.7px;
}

.docs-access-map-link:hover{
    background:rgba(200,164,77,.14);
    transform:translateY(-1px);
}

.docs-access-empty-premium{
    padding:36px 24px;
    text-align:center;
}

.docs-access-empty-premium strong{
    display:block;
    color:#F0D37D;
    font-size:20px;
    margin-bottom:10px;
}

.docs-access-empty-premium p{
    color:#9FA6B2;
    font-size:14px;
    line-height:1.6;
    max-width:560px;
    margin:0 auto 20px;
}

.docs-access-empty-premium .docs-main-btn{
    width:auto;
    min-width:170px;
}

/* =========================================================
   SOPHYX - GERAR NOVO LINK REFINAMENTO
========================================================= */

.docs-link-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 320px;
    gap:22px;
    align-items:start;
}

.docs-link-card{
    background:
        radial-gradient(circle at top right, rgba(200,164,77,.10), transparent 42%),
        linear-gradient(180deg,#1e232d,#181d26);
    border:1px solid rgba(200,164,77,.14);
    border-radius:22px;
    padding:22px;
    box-shadow:0 18px 50px rgba(0,0,0,.26);
}

.docs-link-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:18px;
    margin-bottom:18px;
    border-bottom:1px solid rgba(200,164,77,.12);
}

.docs-link-header span{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 11px;
    border-radius:999px;
    background:rgba(200,164,77,.08);
    border:1px solid rgba(200,164,77,.18);
    color:#F0D37D;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1.2px;
    margin-bottom:9px;
}

.docs-link-header h3{
    color:#ECECEC;
    font-size:22px;
    line-height:1.3;
}

.docs-link-header > strong{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(200,164,77,.10);
    border:1px solid rgba(200,164,77,.22);
    color:#F0D37D;
    font-size:12px;
    font-weight:900;
}

.docs-link-document{
    background:#151A22;
    border:1px solid rgba(200,164,77,.12);
    border-radius:16px;
    padding:16px;
    margin-bottom:16px;
}

.docs-link-document small{
    display:block;
    color:#9FA6B2;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.2px;
    margin-bottom:8px;
}

.docs-link-document strong{
    display:block;
    color:#ECECEC;
    font-size:17px;
    line-height:1.4;
}

.docs-link-document p{
    color:#9FA6B2;
    font-size:13px;
    line-height:1.5;
    margin-top:8px;
}

.docs-link-alert{
    border-radius:15px;
    padding:14px 16px;
    font-size:14px;
    line-height:1.6;
    margin-bottom:16px;
}

.docs-link-alert-success{
    background:rgba(40,167,69,.12);
    border:1px solid rgba(40,167,69,.26);
    color:#8BE39F;
}

.docs-link-alert-error{
    background:rgba(220,53,69,.12);
    border:1px solid rgba(220,53,69,.28);
    color:#FF9BA5;
}

.docs-share-box{
    background:#0F1115;
    border:1px solid rgba(200,164,77,.18);
    border-radius:16px;
    padding:18px;
    color:#ECECEC;
    font-size:14px;
    line-height:1.8;
    white-space:normal;
    word-break:break-word;
    margin-bottom:18px;
}

.docs-link-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    justify-content:flex-end;
    padding-top:16px;
    border-top:1px solid rgba(200,164,77,.12);
}

.docs-link-actions .docs-action-primary,
.docs-link-actions .docs-action-secondary{
    width:auto;
    min-width:150px;
    min-height:42px;
    border:none;
}

.docs-link-side{
    display:flex;
    flex-direction:column;
    gap:14px;
    position:sticky;
    top:20px;
}

/* Responsivo */

@media(max-width:1100px){

    .docs-link-layout{
        grid-template-columns:1fr;
    }

    .docs-link-side{
        position:static;
        display:grid;
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:760px){

    .docs-link-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .docs-link-side{
        grid-template-columns:1fr;
    }

    .docs-link-actions,
    .docs-link-actions .docs-action-primary,
    .docs-link-actions .docs-action-secondary{
        width:100%;
    }
}

@media(max-width:1400px){

    .docs-access-summary{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:900px){

    .docs-access-document,
    .docs-access-card-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .docs-access-summary{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:560px){

    .docs-access-summary{
        grid-template-columns:1fr;
    }
}

@media(max-width:1500px){
    .docs-admin-kpi-grid{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:900px){
    .docs-page-toolbar{
        flex-direction:column;
        align-items:flex-start;
    }

    .docs-header-actions{
        width:100%;
    }

    .docs-header-actions a{
        flex:1;
    }

    .docs-admin-kpi-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:560px){
    .docs-admin-kpi-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:1500px){

    .docs-admin-kpi-grid{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:900px){

    .docs-admin-kpi-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:560px){

    .docs-admin-kpi-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:1500px){

    .audit-admin-kpi-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .audit-admin-filter-form{
        grid-template-columns:2fr 1fr 1fr;
    }

    .audit-admin-filter-actions{
        grid-column:1 / -1;
        justify-content:flex-end;
    }
}

@media(max-width:900px){

    .audit-admin-header,
    .audit-admin-panel-header,
    .audit-admin-toolbar{
        flex-direction:column;
        align-items:flex-start;
    }

    .audit-admin-filter-form,
    .audit-admin-kpi-grid{
        grid-template-columns:1fr;
    }

    .audit-admin-filter-actions,
    .audit-admin-filter-actions a,
    .audit-admin-filter-actions button,
    .audit-admin-toolbar form,
    .audit-admin-toolbar .docs-action-danger{
        width:100%;
    }
}

@media(max-width:1200px){

    .usuarios-edit-layout{
        grid-template-columns:1fr;
    }

    .usuarios-edit-side{
        position:static;
        display:grid;
        grid-template-columns:repeat(2,1fr);
    }

    .usuarios-edit-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){

    .usuarios-edit-hero,
    .usuarios-edit-card-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .usuarios-edit-grid,
    .usuarios-edit-side{
        grid-template-columns:1fr;
    }

    .usuarios-edit-actions,
    .usuarios-edit-actions a{
        width:100%;
    }

    .usuarios-edit-action-bar{
        flex-direction:column-reverse;
    }

    .usuarios-edit-action-bar .docs-action-primary,
    .usuarios-edit-action-bar .docs-action-secondary{
        width:100%;
    }
}

@media(max-width:1400px){

    .usuarios-admin-kpi-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .usuarios-admin-form{
        grid-template-columns:repeat(2,1fr);
    }

    .usuarios-admin-form-actions{
        grid-column:1 / -1;
        justify-content:flex-end;
    }
}

@media(max-width:900px){

    .usuarios-admin-header,
    .usuarios-admin-panel-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .usuarios-admin-kpi-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:620px){

    .usuarios-admin-kpi-grid,
    .usuarios-admin-form{
        grid-template-columns:1fr;
    }

    .usuarios-admin-form-actions,
    .usuarios-admin-form-actions .docs-action-primary{
        width:100%;
    }
}

@media(max-width:1400px){

    .usuarios-admin-kpi-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .usuarios-admin-form{
        grid-template-columns:repeat(2,1fr);
    }

    .usuarios-admin-form-actions{
        grid-column:1 / -1;
        justify-content:flex-end;
    }
}

@media(max-width:800px){

    .usuarios-page-toolbar,
    .usuarios-admin-panel-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .usuarios-admin-actions,
    .usuarios-admin-actions a{
        width:100%;
    }

    .usuarios-admin-kpi-grid,
    .usuarios-admin-form{
        grid-template-columns:1fr;
    }

    .usuarios-admin-form-actions,
    .usuarios-admin-form-actions .docs-action-primary{
        width:100%;
    }
}

@media(max-width:1400px){

    .relatorio-admin-edit-kpi-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .relatorio-admin-readonly-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:900px){

    .relatorio-admin-edit-kpi-grid,
    .relatorio-admin-readonly-grid,
    .relatorio-admin-text-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:1500px){

    .relatorios-admin-kpi-grid{
        grid-template-columns:repeat(4,1fr);
    }
}

@media(max-width:1200px){

    .relatorios-admin-filter-form{
        grid-template-columns:1fr 1fr;
    }

    .relatorios-admin-filter-actions{
        grid-column:1 / -1;
        justify-content:flex-end;
    }

    .relatorios-admin-kpi-grid{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:768px){

    .relatorios-admin-header,
    .relatorios-admin-panel-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .relatorios-admin-filter-form,
    .relatorios-admin-kpi-grid{
        grid-template-columns:1fr;
    }

    .relatorios-admin-filter-actions{
        flex-direction:column;
        align-items:stretch;
    }

    .relatorios-admin-filter-actions .docs-action-primary,
    .relatorios-admin-filter-actions .docs-action-secondary{
        width:100%;
    }
}

@media(max-width:900px){

    .cliente-view-kpi-grid-admin{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:620px){

    .cliente-view-kpi-grid-admin{
        grid-template-columns:1fr;
    }
}

@media(max-width:1500px){

    .clientes-filter-form-admin{
        grid-template-columns:2fr 1fr 1fr;
    }

    .clientes-filter-form-admin .clientes-filter-actions{
        grid-column:1 / -1;
        justify-content:flex-end;
    }

    .cliente-item-admin{
        grid-template-columns:1.8fr 1fr 1fr;
    }

    .cliente-item-admin .cliente-actions{
        flex-direction:row;
        grid-column:1 / -1;
    }
}

@media(max-width:900px){

    .clientes-filter-form-admin{
        grid-template-columns:1fr 1fr;
    }

    .clientes-admin-info.premium{
        flex-direction:column;
        align-items:flex-start;
    }

    .clientes-admin-info.premium span{
        text-align:left;
    }

    .cliente-item-admin{
        grid-template-columns:1fr;
    }

    .cliente-item-admin .cliente-actions{
        grid-column:auto;
    }
}

@media(max-width:560px){

    .clientes-filter-form-admin{
        grid-template-columns:1fr;
    }

    .clientes-filter-form-admin .clientes-filter-actions,
    .clientes-filter-form-admin .clientes-filter-actions a,
    .clientes-filter-form-admin .clientes-filter-actions button{
        width:100%;
    }
}

@media(max-width:1200px){

    .cliente-edit-layout{
        grid-template-columns:1fr;
    }

    .cliente-edit-layout .cliente-view-side{
        position:static;
        display:grid;
        grid-template-columns:repeat(3,1fr);
    }

    .cliente-edit-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .cliente-edit-status{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){

    .cliente-edit-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .cliente-edit-grid,
    .cliente-edit-status,
    .cliente-edit-layout .cliente-view-side{
        grid-template-columns:1fr;
    }

    .cliente-edit-actions{
        flex-direction:column-reverse;
    }

    .cliente-edit-actions .clientes-main-btn,
    .cliente-edit-actions .clientes-back-btn{
        width:100%;
    }
}

@media(max-width:1200px){

    .cliente-view-layout{
        grid-template-columns:1fr;
    }

    .cliente-view-side{
        position:static;
        display:grid;
        grid-template-columns:repeat(2,1fr);
    }

    .cliente-view-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){

    .cliente-view-hero,
    .cliente-view-card.premium .cliente-view-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .cliente-view-hero-actions{
        justify-content:flex-start;
    }

    .cliente-view-kpi-grid,
    .cliente-view-side,
    .cliente-view-grid{
        grid-template-columns:1fr;
    }

    .cliente-view-hero-actions,
    .cliente-view-hero-actions a{
        width:100%;
    }
}

@media(max-width:1400px){

    .clientes-kpi-grid{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:900px){

    .clientes-kpi-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .cliente-item{
        grid-template-columns:1fr;
    }

    .cliente-actions{
        flex-direction:row;
    }
}

@media(max-width:560px){

    .clientes-kpi-grid{
        grid-template-columns:1fr;
    }

    .clientes-empty-state div,
    .clientes-empty-state a,
    .cliente-actions,
    .cliente-actions a{
        width:100%;
    }
}

@media(max-width:1200px){

    .relatorio-edit-status-panel{
        grid-template-columns:1fr;
    }

    .relatorio-edit-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .relatorio-edit-status-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .relatorio-edit-text-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:768px){

    .relatorio-edit-header,
    .relatorio-edit-panel-header,
    .relatorio-edit-cliente-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .relatorio-edit-grid,
    .relatorio-edit-status-grid{
        grid-template-columns:1fr;
    }

    .relatorio-edit-action-bar{
        flex-direction:column-reverse;
    }

    .relatorio-edit-action-bar .docs-action-primary,
    .relatorio-edit-action-bar .docs-action-secondary{
        width:100%;
    }
}

@media(max-width:1400px){

    .relatorio-view-kpi-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .relatorio-cliente-info-grid,
    .relatorio-view-info-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:900px){

    .relatorio-view-header,
    .relatorio-view-panel-header,
    .relatorio-cliente-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .relatorio-view-actions{
        justify-content:flex-start;
    }

    .relatorio-view-text-grid,
    .relatorio-cliente-text-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:620px){

    .relatorio-view-kpi-grid,
    .relatorio-cliente-info-grid,
    .relatorio-view-info-grid{
        grid-template-columns:1fr;
    }

    .relatorio-view-actions,
    .relatorio-view-actions a{
        width:100%;
    }
}

@media(max-width:1400px){

    .relatorios-resumo-grid{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:900px){

    .relatorios-page-header,
    .relatorios-panel-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .relatorios-resumo-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .relatorios-table td,
    .relatorios-table th{
        padding:13px;
    }
}

@media(max-width:560px){

    .relatorios-resumo-grid{
        grid-template-columns:1fr;
    }

    .relatorios-header-actions{
        width:100%;
    }

    .relatorios-header-actions a{
        width:100%;
    }
}

@media(max-width:768px){

    .sx-topbar{
        flex-direction:column;
        align-items:flex-start;
        gap:14px;
        margin-bottom:24px;
    }

    .sx-topbar h2{
        font-size:22px;
    }

    .sx-topbar-user{
        width:100%;
        justify-content:space-between;
    }

    .sx-topbar-user-info{
        text-align:left;
    }

    .sx-topbar-user-info strong{
        max-width:230px;
    }
}

@media(max-width:768px){

    .content{
        padding:22px 18px;
    }

    .page-header h1,
    .page-header h2,
    .report-view-header h1,
    .report-view-header h2,
    .docs-page-header h2,
    .clientes-page-header h2,
    .audit-page-header h2{
        font-size:22px;
    }

    .card{
        border-radius:18px;
    }

    .table-sophyx th,
    .table-sophyx td{
        padding:13px;
    }
}

@media(max-width:768px){

    .sophyx-sidebar{
        width:280px;
        transform:translateX(-100%);
        transition:.28s ease;
    }

    .sophyx-sidebar.open{
        transform:translateX(0);
    }

    .content{
        margin-left:0;
    }

    .sophyx-sidebar-brand{
        padding:18px;
    }

    .sophyx-sidebar-nav{
        padding:14px;
    }

    .sophyx-sidebar-nav a{
        min-height:46px;
    }
}

@media(max-width:900px){

    .sx-footer-content{
        grid-template-columns:1fr;
        text-align:center;
        gap:8px;
    }

    .sx-footer-brand,
    .sx-footer-center,
    .sx-footer-dev{
        text-align:center;
    }
}

@media(max-width:1400px){

    .relatorio-resumo-grid{
        grid-template-columns:repeat(3,1fr);
    }

    #formRelatorio .cliente-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:1000px){

    .relatorio-text-grid{
        grid-template-columns:1fr;
    }

    #formRelatorio .status-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){

    .relatorio-hero,
    .relatorio-panel-header{
        flex-direction:column;
    }

    .relatorio-resumo-grid{
        grid-template-columns:1fr 1fr;
    }

    #formRelatorio .cliente-grid,
    #formRelatorio .status-grid{
        grid-template-columns:1fr;
    }

    .relatorio-action-bar{
        flex-direction:column-reverse;
    }

    .relatorio-action-bar .docs-action-primary,
    .relatorio-action-bar .docs-action-secondary{
        width:100%;
    }
}

@media(max-width:520px){

    .relatorio-resumo-grid{
        grid-template-columns:1fr;
    }
}

