
/* v1.14.0 — follow-up, activity and document controls */
.portal-toolbar{display:flex;flex-wrap:wrap;gap:14px;align-items:end;margin:24px 0}
.portal-toolbar label{flex:1;min-width:150px;margin:0;font-size:12px}
.portal-toolbar input,.portal-toolbar select{width:100%;margin-top:7px}
.portal-toolbar .check-label{display:flex;align-items:center;gap:9px;flex-basis:100%;font-weight:400}
.check-label input{width:auto;margin:0}
.insight-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:14px;margin:16px 0 24px}
.insight-card{padding:20px;border:1px solid #d6d3c9;display:flex;flex-direction:column;gap:7px}
.insight-card strong{font-size:32px;font-weight:400}.insight-card span{font-size:12px;color:#68665f}
.new-badge,.due-badge{display:inline-flex;align-self:flex-start;max-width:100%;padding:5px 9px;background:#e5eadd;color:#344932;font-size:11px;line-height:1.4;letter-spacing:.03em}
.due-badge{background:#f4e6dc;color:#84451e;margin-top:6px}
.project-meta{font-size:12px;color:#68665f;margin:15px 0}
.pending-list{margin:22px 0;border:1px solid #d6d3c9;padding:20px}
.pending-list h2,.followup-panel h2{font-size:22px;font-weight:400;margin:0 0 18px}
.pending-item{border:0;border-bottom:1px solid #dedbd2;background:transparent;width:100%;padding:14px 0;display:flex;justify-content:space-between;text-align:left;gap:16px}
.pending-item:last-child{border:0}.pending-item strong,.pending-item small{display:block}.pending-item strong{font-weight:500}.pending-item small{color:#68665f;font-size:12px;margin-top:6px;line-height:1.5}
.followup-panel{border:1px solid #d6d3c9;padding:26px;margin:22px 0}
.followup-panel[hidden]{display:none}.project-stages{list-style:none;padding:0;display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}
.project-stages li{padding:8px 12px;border-bottom:2px solid #d6d3c9;font-size:12px;color:#888}
.project-stages .reached{border-color:#536048;color:#344932}.project-stages [aria-current]{font-weight:600;background:#edf0e8}
.next-step{line-height:1.6}.next-step p{margin:6px 0 12px;white-space:pre-wrap}.next-step small{color:#68665f}
.followup-panel details{border-top:1px solid #d6d3c9;margin-top:20px;padding-top:18px}.followup-panel summary{cursor:pointer;font-size:13px}
.plan-form{display:grid;gap:14px;margin-top:20px}.plan-form label{margin:0}.plan-form button{justify-self:start}
.task-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid #e0ddd5}
.task-row>div{min-width:0}.task-row strong,.task-row small{display:block}.task-row strong{font-weight:500;overflow-wrap:anywhere}.task-row small{font-size:12px;color:#68665f;margin-top:6px}
.task-done strong{text-decoration:line-through;color:#777}.task-done{opacity:1}
.file-toolbar{padding:18px;background:#f3f1eb}.file-row{flex-wrap:wrap}.file-info{flex:1;min-width:160px}.file-info strong{overflow-wrap:anywhere}.file-info .new-badge{margin-top:7px}
.file-thumbnail{display:block;width:88px;height:66px;object-fit:cover}.thumbnail-button{padding:0;border:0;background:transparent;flex-shrink:0}
.file-actions{flex-wrap:wrap;gap:8px}.file-actions button{font-size:12px}.previous-version{background:#f1efe8;opacity:.85}
.portal-detail-dialog{width:min(920px,calc(100vw - 32px));max-width:920px;max-height:88svh;overflow:auto;padding:26px}
.portal-detail-dialog .file-row{padding:16px 0}.portal-detail-dialog .dialog-heading{gap:16px}.portal-detail-dialog h2{font-size:21px;overflow-wrap:anywhere}
.file-comment-form{margin-top:20px}.file-comment-form button{margin-top:12px}.reply-hint{padding:12px;background:#eeece5;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;margin-bottom:12px}
.note-meta{gap:10px;flex-wrap:wrap}.upload-progress{width:100%;padding:15px;background:#eeece5;margin:12px 0}.upload-progress p{font-size:12px;overflow-wrap:anywhere}.upload-progress progress{display:block;width:100%;accent-color:#536048;height:10px}
button:focus-visible,summary:focus-visible{outline:2px solid #536048;outline-offset:-2px}
@media(max-width:640px){.portal-toolbar{gap:12px}.portal-toolbar label{flex-basis:100%;min-width:0}.portal-toolbar button{width:100%}.insight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.insight-card{padding:15px}.insight-card strong{font-size:27px}.followup-panel{padding:18px}.project-stages{gap:4px}.project-stages li{font-size:10px;padding:7px}.task-row{align-items:flex-start;flex-wrap:wrap}.task-row>div{flex-basis:100%}.file-actions{width:100%;justify-content:flex-start}.portal-detail-dialog{padding:17px}.reply-hint{flex-wrap:wrap}}

.reply-context{display:block;border-left:2px solid #b8bdac;padding:6px 10px;margin-top:10px;font-size:12px;color:#73746b;line-height:1.5}

.task-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;flex-shrink:0}
.task-status{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border:1px solid;font-size:11px;line-height:1.4;letter-spacing:.04em;white-space:nowrap}
.task-status-done{border-color:#347448;background:#dcebdc;color:#285c38}
.task-status-pending{border-color:#b18b28;background:#fff2c7;color:#745707}
@media(max-width:640px){.task-row>.task-actions{flex-basis:auto;justify-content:flex-start;width:100%}}

/* v1.15.4: alinhar as ações dos clientes à direita em mobile. */
@media(max-width:640px){.client-row>.file-actions{width:auto;margin-left:auto;justify-content:flex-end}.client-row>.file-actions button{white-space:nowrap;text-align:right}}

/* v1.15.6: toda a superfície do cartão abre o projeto. */
:is(#projects-grid,#admin-home-projects) .project-card{cursor:pointer}

:is(#projects-grid,#admin-home-projects)>.project-group-title{grid-column:1/-1;font-size:28px;line-height:1.3;margin:28px 0 0;padding-top:26px;border-top:1px solid #d6d3c9}:is(#projects-grid,#admin-home-projects)>.project-group-title:first-child{margin-top:0;padding-top:0;border-top:0}

.project-view-switch{display:flex;justify-content:flex-end;gap:0;margin:20px 0 0}.project-view-switch button{border:1px solid #c9c6bb;justify-content:center;min-width:94px}.project-view-switch button+button{border-left:0}.project-view-switch button[aria-pressed=true]{background:#30362d;color:#fff}:is(#projects-grid,#admin-home-projects).projects-list{grid-template-columns:minmax(0,1fr);gap:14px}:is(#projects-grid,#admin-home-projects).projects-list .project-card{display:grid;grid-template-columns:36px minmax(0,1fr) minmax(120px,.7fr) auto auto;gap:12px 20px;align-items:center;min-height:0;padding:22px 24px}:is(#projects-grid,#admin-home-projects).projects-list .card-top{display:contents}:is(#projects-grid,#admin-home-projects).projects-list .number{grid-column:1;grid-row:1/4;font-size:24px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-title{grid-column:2;grid-row:1;font-size:21px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-client{grid-column:3;grid-row:1}:is(#projects-grid,#admin-home-projects).projects-list .card-status{grid-column:4;grid-row:1;justify-self:end}:is(#projects-grid,#admin-home-projects).projects-list .card-bottom{grid-column:5;grid-row:1/4;margin:0;justify-content:flex-end}:is(#projects-grid,#admin-home-projects).projects-list .project-meta{grid-column:2/4;grid-row:2;margin:0}:is(#projects-grid,#admin-home-projects).projects-list .project-type-label{grid-column:2;grid-row:3;justify-self:start}:is(#projects-grid,#admin-home-projects).projects-list .new-badge{grid-column:3;grid-row:3;justify-self:start}:is(#projects-grid,#admin-home-projects).projects-list .project-card-pending{grid-column:4;grid-row:2;font-size:12px}:is(#projects-grid,#admin-home-projects).projects-list .empty{grid-column:1/-1}
@media(max-width:1100px){:is(#projects-grid,#admin-home-projects).projects-list .project-card{grid-template-columns:30px minmax(0,1fr) auto;gap:12px 16px}:is(#projects-grid,#admin-home-projects).projects-list .number{grid-row:1/5}:is(#projects-grid,#admin-home-projects).projects-list .project-card-title{grid-column:2;grid-row:1}:is(#projects-grid,#admin-home-projects).projects-list .project-card-client{grid-column:2;grid-row:2}:is(#projects-grid,#admin-home-projects).projects-list .card-status{grid-column:3;grid-row:1}:is(#projects-grid,#admin-home-projects).projects-list .card-bottom{grid-column:3;grid-row:3/6}:is(#projects-grid,#admin-home-projects).projects-list .project-meta{grid-column:2;grid-row:3}:is(#projects-grid,#admin-home-projects).projects-list .project-type-label{grid-column:2;grid-row:4}:is(#projects-grid,#admin-home-projects).projects-list .new-badge{grid-column:2;grid-row:5}:is(#projects-grid,#admin-home-projects).projects-list .project-card-pending{grid-column:3;grid-row:2}}
@media(max-width:640px){.project-view-switch{justify-content:flex-start}:is(#projects-grid,#admin-home-projects).projects-list .project-card{display:flex;flex-direction:row;flex-wrap:wrap;gap:12px;padding:18px}:is(#projects-grid,#admin-home-projects).projects-list .card-top{display:flex;width:100%;justify-content:space-between}:is(#projects-grid,#admin-home-projects).projects-list .project-card-title,:is(#projects-grid,#admin-home-projects).projects-list .project-card-client,:is(#projects-grid,#admin-home-projects).projects-list .project-meta{width:100%}:is(#projects-grid,#admin-home-projects).projects-list .project-card-title{font-size:21px}:is(#projects-grid,#admin-home-projects).projects-list .card-bottom{margin-left:auto}:is(#projects-grid,#admin-home-projects).projects-list .number{font-size:20px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-pending{width:100%}}

:is(#projects-grid,#admin-home-projects).projects-list .card-status,:is(#projects-grid,#admin-home-projects).projects-list .card-bottom{width:156px;max-width:100%;justify-self:end}:is(#projects-grid,#admin-home-projects).projects-list .card-status{display:flex;justify-content:center;text-align:center}:is(#projects-grid,#admin-home-projects).projects-list .card-bottom .card-open{width:100%;justify-content:center}
@media(min-width:1101px){:is(#projects-grid,#admin-home-projects).projects-list .project-card{grid-template-columns:36px minmax(0,1fr) minmax(120px,.7fr) 156px}:is(#projects-grid,#admin-home-projects).projects-list .card-status{grid-column:4;grid-row:1}:is(#projects-grid,#admin-home-projects).projects-list .card-bottom{grid-column:4;grid-row:3;align-self:end}:is(#projects-grid,#admin-home-projects).projects-list .project-card-pending{grid-column:4;grid-row:2;text-align:right}}
@media(min-width:641px) and (max-width:1100px){:is(#projects-grid,#admin-home-projects).projects-list .project-card{grid-template-columns:30px minmax(0,1fr) 156px}:is(#projects-grid,#admin-home-projects).projects-list .card-bottom{grid-row:3/6;align-self:end}:is(#projects-grid,#admin-home-projects).projects-list .project-card-pending{text-align:right}}

/* Lista compacta: número junto ao nome; estado e acesso agrupados. */
:is(#projects-grid,#admin-home-projects).projects-list{gap:8px}:is(#projects-grid,#admin-home-projects).projects-list .project-card{display:grid;grid-template-columns:minmax(0,1fr) 156px;gap:12px 20px;align-items:center;min-height:0;padding:14px 18px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-main{display:flex;flex-direction:column;gap:5px;min-width:0}:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading{display:flex;align-items:baseline;gap:10px;min-width:0}:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading .number{flex:none;font-size:20px;line-height:1.3}:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading .project-card-title{width:auto;min-width:0;font-size:20px;line-height:1.3;overflow-wrap:anywhere}:is(#projects-grid,#admin-home-projects).projects-list .project-card-client,:is(#projects-grid,#admin-home-projects).projects-list .project-meta{width:auto;margin:0;font-size:11px;line-height:1.5}:is(#projects-grid,#admin-home-projects).projects-list .project-card-details{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-details .project-card-pending{width:auto;margin:0;font-size:11px;text-align:left}:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions{display:flex;flex-direction:column;align-items:stretch;gap:6px;min-width:0}:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-status,:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-bottom{width:100%;margin:0;align-self:auto}:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-status{min-height:30px;padding:7px 10px;line-height:1.3}:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-open{padding:9px 10px;font-size:11px;line-height:1.3}:is(#projects-grid,#admin-home-projects).projects-list>.project-group-title{margin-top:18px;padding-top:18px;font-size:25px}@media(max-width:640px){:is(#projects-grid,#admin-home-projects).projects-list .project-card{grid-template-columns:minmax(0,1fr) 122px;padding:12px;gap:10px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading{gap:7px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading .number{font-size:17px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading .project-card-title{font-size:18px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-status{font-size:9px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-open{font-size:10px;padding:9px 7px}}@media(max-width:370px){:is(#projects-grid,#admin-home-projects).projects-list .project-card{grid-template-columns:minmax(0,1fr)}:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions{width:100%;max-width:156px;align-self:start}}

/* v1.24.4 — ações da lista mais pequenas e alinhadas. */
:is(#projects-grid,#admin-home-projects).projects-list .project-card{grid-template-columns:minmax(0,1fr) 112px}
:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions{gap:5px}
:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-status,:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-open{width:100%;min-height:28px;padding:6px 8px;font-size:10px;line-height:14px;letter-spacing:.35px;display:flex;align-items:center;justify-content:center}
.project-view-switch button{min-width:76px;padding:8px 12px;font-size:11px;min-height:32px}
@media(max-width:640px){:is(#projects-grid,#admin-home-projects).projects-list .project-card{grid-template-columns:minmax(0,1fr) 104px}.project-view-switch button{min-height:38px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-open{min-height:38px}}
@media(max-width:370px){:is(#projects-grid,#admin-home-projects).projects-list .project-card{grid-template-columns:minmax(0,1fr)}:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions{max-width:112px;justify-self:end}}
:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-status,:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-bottom,:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-open{min-width:0;max-width:100%}

/* v1.24.5 — acesso ao projeto com a tipografia e dimensões do estado. */
:is(#projects-grid,#admin-home-projects) .project-card .card-open{background:#e7e7e3;color:#000;border:2px solid #b7b8b3;border-radius:0;text-transform:uppercase;font-weight:600;letter-spacing:.35px;box-sizing:border-box;justify-content:center}
:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-open,:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-status{height:30px;min-height:30px;padding:6px 8px;font-size:10px;line-height:14px;font-weight:600;letter-spacing:.35px}
:is(#projects-grid,#admin-home-projects) .project-card .card-open:hover{background:#dadbd5;border-color:#92968c}
@media(max-width:640px){:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-open,:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-status{height:32px;min-height:32px}}

/* v1.24.6 — ocultar o cliente apenas na lista de projetos. */
:is(#projects-grid,#admin-home-projects).projects-list .project-card-client{display:none}

/* Lista: numeração maior e títulos ligeiramente mais pequenos. */
:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading .number{font-size:26px}
:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading .project-card-title{font-size:19px}
@media(max-width:640px){:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading .number{font-size:24px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading .project-card-title{font-size:17px}}


/* Lista: data sob o título e numeração destacada. */
:is(#projects-grid,#admin-home-projects).projects-list .project-card-main{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:10px;row-gap:4px;align-items:baseline}
:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading{display:contents}
:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading .number{grid-column:1;grid-row:1/4;font-size:30px;line-height:1.15;align-self:start}
:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading .project-card-title{grid-column:2;grid-row:1}
:is(#projects-grid,#admin-home-projects).projects-list .project-card-main>.project-meta{grid-column:2;grid-row:2}
:is(#projects-grid,#admin-home-projects).projects-list .project-card-details{grid-column:2;grid-row:3}
@media(max-width:640px){:is(#projects-grid,#admin-home-projects).projects-list .project-card-main{column-gap:8px}:is(#projects-grid,#admin-home-projects).projects-list .project-card-heading .number{font-size:28px}}

/* Billing documents: stronger section hierarchy and clear document actions. */
#billing-content>.section-heading{margin:28px 0 0;padding:24px 26px;background:#30382f;color:#fff;border-left:5px solid #a9b397;gap:18px}
#billing-content>.section-heading h3{font-family:Georgia,serif;font-size:29px;line-height:1.2}
#billing-content>.section-heading #billing-count{flex-shrink:0;color:#fff;background:#ffffff18;border:1px solid #ffffff30;padding:7px 12px;font-size:12px}
#billing-content>.section-heading+.muted{padding:16px 26px;margin:0 0 24px;background:#e9ede3;color:#48513f;border-left:5px solid #a9b397;line-height:1.6}
#billing-content>.file-toolbar{border:1px solid #d8dacf;background:#eeeee7;padding:20px;margin-bottom:24px}
#billing-list{display:grid;gap:14px}
#billing-list>.file-row{padding:24px;border:1px solid #d5d9cd;border-left:4px solid #82916e;background:#fff;box-shadow:0 3px 12px #30382f09;gap:18px}
#billing-list .file-info strong{font-size:16px;font-weight:600;line-height:1.5;color:#30382f}
#billing-list .file-info small{font-size:12px;line-height:1.6}
#billing-list .new-badge{align-self:flex-start;background:#e5eddb;color:#3d542b;padding:5px 10px;font-weight:600}
#billing-list .file-actions button{padding:10px 12px;border:1px solid #d9ddcf;background:#f3f4ef;color:#35402e;min-height:40px}
#billing-list .file-actions button:first-child{background:#30382f;color:#fff;border-color:#30382f}
#billing-list .file-actions button:hover{background:#e4e9dc}
#billing-list .file-actions button:first-child:hover{background:#47533e}
#billing-list>.previous-version{background:#f1f2ec;border-left-color:#b5bcaa}
@media(max-width:640px){#billing-content>.section-heading{padding:20px 18px;align-items:center}#billing-content>.section-heading h3{font-size:25px}#billing-content>.section-heading+.muted{padding:14px 18px}#billing-content>.file-toolbar{padding:16px}#billing-list>.file-row{padding:18px}#billing-list .file-actions{gap:8px}#billing-list .file-actions button{flex:1 1 auto}}

/* Mobile: smaller project status and black project action. */
@media(max-width:640px){
:is(#projects-grid,#admin-home-projects) .project-card .card-status{font-size:9px}
:is(#projects-grid,#admin-home-projects).projects-list .project-card-actions .card-status{font-size:9px}
:is(#projects-grid,#admin-home-projects) .project-card .card-open{background:#000;color:#fff;border-color:#000}
:is(#projects-grid,#admin-home-projects) .project-card .card-open:hover,:is(#projects-grid,#admin-home-projects) .project-card .card-open:active{background:#202020;color:#fff;border-color:#202020}
}
