/* GCADVS — área logada (login e portal) */
[hidden]{display:none!important}

/* login */
.l-form{display:grid;gap:24px}
.l-form[hidden]{display:none}
.l-form .btn{justify-self:start;height:52px;padding:0 30px}
.l-form .btn:disabled{opacity:.5;cursor:default}
.f-msg{margin:-8px 0 0;min-height:0;color:#9A3B26;font-size:14px;font-weight:400}
.f-msg:empty{display:none}
.f-hint{margin:-14px 0 0;color:var(--ink-3);font-size:13px;font-weight:300}
.f-note{margin:0;color:var(--ink-3);font-size:13.5px;font-weight:300}
.f-note a{color:var(--ink-2);border-bottom:1px solid var(--hair);transition:color .35s var(--ease),border-color .35s var(--ease)}
.f-note a:hover{color:var(--copper);border-bottom-color:var(--copper)}
.f-intro{margin:0;color:var(--ink-2);font-weight:300;font-size:16px;line-height:1.6}

/* cabeçalho do portal */
.p-user{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);max-width:22ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.menu button.btn{height:46px}
.menu .sm{display:none}
.p-main .btn{white-space:nowrap}

/* corpo */
.p-main{padding-bottom:64px}
.p-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;padding:clamp(40px,7vh,80px) 0 32px;border-bottom:1px solid var(--hair)}
.p-head .h2{margin-top:18px}
.p-sync{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;font-size:12.5px;font-weight:300;color:var(--ink-3)}
.p-link{background:none;border:0;padding:0 0 3px;cursor:pointer;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-2);border-bottom:1px solid var(--hair);transition:color .35s var(--ease),border-color .35s var(--ease)}
.p-link:hover{color:var(--copper);border-bottom-color:var(--copper)}

.p-tools{display:flex;flex-wrap:wrap;align-items:flex-end;gap:20px 32px;padding:28px 0 8px}
.p-tools .field{min-width:180px}
.p-tools .field.grow{flex:1;min-width:220px}
.p-tools .btn{height:46px;margin-left:auto}
.p-tools .field input,.p-tools .field select{height:46px;padding-top:0;padding-bottom:0;font-size:16px}
.p-tools input[type=search]{-webkit-appearance:none;appearance:none}
.field select{font-family:inherit;font-weight:300;font-size:16px;padding:11px 0;border:0;border-bottom:1px solid var(--hair);border-radius:0;background:transparent;color:var(--ink);width:100%;-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-3) 50%),linear-gradient(135deg,var(--ink-3) 50%,transparent 50%);background-position:calc(100% - 9px) 52%,calc(100% - 4px) 52%;background-size:5px 5px;background-repeat:no-repeat;padding-right:24px;cursor:pointer}
.field select:focus{outline:none;border-bottom-color:var(--copper)}

/* tabela */
.p-table{width:100%;border-collapse:collapse;margin-top:16px}
.p-table th{text-align:left;font-weight:400;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-3);padding:14px 16px 14px 0;border-bottom:1px solid var(--hair)}
.p-table td{padding:20px 16px 20px 0;border-bottom:1px solid var(--hair-2);vertical-align:top;font-size:14.5px;font-weight:300;line-height:1.55;color:var(--ink)}
.p-table tbody tr{cursor:pointer;transition:background .25s var(--ease)}
.p-table tbody tr:hover{background:#F7F7F5}
.p-table tbody tr:focus-visible{outline:1px solid var(--copper);outline-offset:-1px}
.p-table td.t-proc{font-weight:400;min-width:180px}
.p-table td.t-proc small{display:block;font-weight:300;font-size:12.5px;color:var(--ink-3);margin-top:4px}
.p-table td .t-sub{display:block;font-size:12.5px;color:var(--ink-3);margin-top:4px}
.p-table td.t-long{color:var(--ink-2);max-width:38ch}
.p-table td.t-long span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.p-table td.t-data{white-space:nowrap;color:var(--ink-2)}
.p-table td a{color:var(--ink-2);border-bottom:1px solid var(--hair)}
.p-table td a:hover{color:var(--copper);border-bottom-color:var(--copper)}
.tag{display:inline-block;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);border:1px solid var(--hair);padding:4px 9px;white-space:nowrap}
.tag.s-em-andamento{border-color:#C9A27E;color:#8A5A2E}
.tag.s-encerrado{color:var(--ink-3)}
.tag.off{color:#9A3B26;border-color:#E3C2B8}
.p-empty{padding:56px 0;color:var(--ink-2);font-weight:300;font-size:19px;line-height:1.5;max-width:44ch}
.p-loading{padding:56px 0;color:var(--ink-3);font-size:12px;letter-spacing:.24em;text-transform:uppercase}

/* UCs */
.p-btns{display:flex;flex-wrap:wrap;gap:12px;margin-left:auto}
.p-tools .p-btns .btn{margin-left:0}
.p-sync .btn{height:44px;margin-left:8px}
.p-back{display:inline-flex;align-items:center;gap:12px;margin-top:36px;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-3);transition:color .35s var(--ease)}
.p-back::before{content:"";width:18px;height:1px;background:currentColor}
.p-back:hover{color:var(--copper)}
#v-uc .p-head{padding-top:22px}
.p-ficha{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 48px;margin:0;padding:36px 0 8px}
.p-ficha .wide{grid-column:1/-1}
.p-ficha dt{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-3);margin-bottom:10px}
.p-ficha dd{margin:0;font-size:19px;font-weight:300;line-height:1.45;white-space:pre-wrap;word-break:break-word}
.p-inline{display:grid;gap:20px;padding:22px;background:#F7F7F5;border:1px solid var(--hair-2)}
.p-inline .btn{justify-self:start;height:44px}
.p-drawer .field .p-link{justify-self:start;margin-top:8px}

/* painel master */
.p-sec{margin-top:56px}
.p-sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:4px}
.p-sec-head h3{margin:0;font-weight:300;font-size:26px;letter-spacing:-.008em}
.p-sec-head .btn{height:44px}

/* gaveta lateral */
.p-veil{position:fixed;inset:0;background:rgba(20,20,20,.38);opacity:0;pointer-events:none;transition:opacity .35s var(--ease);z-index:20}
.p-drawer{position:fixed;top:0;right:0;bottom:0;width:min(560px,100%);background:var(--paper);z-index:21;transform:translateX(100%);visibility:hidden;transition:transform .45s var(--ease),visibility 0s linear .45s;display:flex;flex-direction:column;box-shadow:-24px 0 60px rgba(0,0,0,.08)}
.p-open .p-veil{opacity:1;pointer-events:auto}
.p-open .p-drawer{transform:none;visibility:visible;transition:transform .45s var(--ease),visibility 0s}
.p-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:36px 40px 24px;border-bottom:1px solid var(--hair-2)}
.p-drawer-head h3{margin:14px 0 0;font-weight:300;font-size:26px;line-height:1.2;letter-spacing:-.008em;word-break:break-word}
.p-x{background:none;border:0;cursor:pointer;width:36px;height:36px;margin:-6px -8px 0 0;color:var(--ink-2);flex:none}
.p-x svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.2;fill:none}
.p-x:hover{color:var(--copper)}
.p-drawer-body{flex:1;overflow:auto;padding:28px 40px 40px;display:grid;gap:26px;align-content:start}
.p-drawer-foot{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;padding:20px 40px;border-top:1px solid var(--hair-2)}
.p-drawer-foot .btn{height:48px}
.p-drawer-foot .btn:disabled{opacity:.5;cursor:default}
.p-drawer-foot .f-msg{margin:0;flex-basis:100%}
.p-drawer .field textarea{min-height:96px}
.p-two{display:grid;grid-template-columns:1fr 1fr;gap:26px}

.p-read{display:grid;gap:6px}
.p-read b{font-weight:400;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-3)}
.p-read div{font-size:16px;font-weight:300;line-height:1.65;white-space:pre-wrap;word-break:break-word}
.p-read a{border-bottom:1px solid var(--hair);transition:color .35s var(--ease),border-color .35s var(--ease)}
.p-read a:hover{color:var(--copper);border-bottom-color:var(--copper)}

.p-checks{display:flex;flex-wrap:wrap;gap:10px 22px;padding-top:6px}
.p-checks label{display:inline-flex;align-items:center;gap:9px;font-size:15px;font-weight:300;letter-spacing:0;text-transform:none;color:var(--ink);cursor:pointer}
.p-checks input{accent-color:var(--ink);width:15px;height:15px;margin:0}
.p-checks.col{flex-direction:column;max-height:180px;overflow:auto}

.p-invite{display:grid;gap:12px;padding:20px;background:#F7F7F5;border:1px solid var(--hair-2)}
.p-invite p{margin:0;font-size:14px;font-weight:300;color:var(--ink-2);line-height:1.6}
.p-invite input{font:inherit;font-size:13px;font-weight:300;padding:10px 12px;border:1px solid var(--hair);background:#fff;width:100%;color:var(--ink)}

.p-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:var(--ink);color:#fff;font-size:13px;font-weight:300;padding:12px 20px;opacity:0;pointer-events:none;transition:opacity .3s var(--ease),transform .3s var(--ease);z-index:30}
.p-toast.on{opacity:1;transform:translate(-50%,0)}

@media (max-width:900px){
  .p-head{flex-direction:column;align-items:flex-start}
  .p-tools .btn{margin-left:0}
  .p-btns{margin-left:0}
  .p-ficha{grid-template-columns:1fr;gap:22px}
  .p-table thead{display:none}
  .p-table,.p-table tbody,.p-table tr,.p-table td{display:block;width:100%}
  .p-table tr{padding:18px 0;border-bottom:1px solid var(--hair-2)}
  .p-table td{border:0;padding:4px 0}
  .p-table td[data-k]::before{content:attr(data-k);display:block;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-3);margin-top:8px}
  .p-table td.t-long{max-width:none}
  .p-user{display:none}
}
@media (max-width:600px){
  .p-drawer-head,.p-drawer-body,.p-drawer-foot{padding-left:22px;padding-right:22px}
  .p-two{grid-template-columns:1fr}
  .p-tools .field,.p-tools .field.grow{min-width:100%}
  .p-btns{width:100%}
  .p-btns .btn{flex:1}
  .menu button.btn{height:34px;padding:0 12px}
  .menu .lg{display:none}
  .menu .sm{display:inline}
  .p-sec-head h3{font-size:22px}
}
