[hidden]{display:none!important}
:root{--green:#c65518;--green-dark:#a74612;--soft:#fff0e4;--ink:#352e28;--bg:#f7f6f3;--accent-tint:#fff0e4;--accent-border:#f4d8c1;--accent-soft:#fff8f1}
:root[data-activity=residence]{--green:#426e9c;--green-dark:#315980;--accent-tint:#eaf0f8;--accent-border:#cbdced;--accent-soft:#f4f7fc}
:root[data-activity=elicriso]{--green:#946037;--green-dark:#784d2b;--accent-tint:#f8efdf;--accent-border:#e8d9c0;--accent-soft:#fcf8f0}
.nav-item.active,.segmented button.active{background:var(--accent-tint);color:var(--green)}.nav-item .count{border-color:var(--accent-border);color:var(--green)}.btn.primary{box-shadow:0 3px 8px #71320e12}.employee-banner{background:var(--green)}.time-hero,.project-intro{background:var(--accent-soft);border-color:var(--accent-border)}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px #d35b1612}.brandmark{background:var(--green)}.check-icon{background:var(--accent-tint)!important;color:var(--green)!important}.sidebar{overflow-y:auto}.side-bottom{padding-top:18px}.project-note{padding:12px}.nav-item{padding-top:10px;padding-bottom:10px}.nav-divider{margin-top:15px;margin-bottom:15px}.employee-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin-bottom:25px;overflow:auto;padding-bottom:12px}.employee-tabs button{padding:10px 17px;border-radius:8px;font-size:12px;font-weight:550;white-space:nowrap;display:flex;align-items:center;gap:7px}.employee-tabs button.active{background:var(--accent-tint);color:var(--green)}.feature-intro{display:flex;align-items:center;gap:17px;background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:12px;padding:17px 20px;margin-bottom:22px}.feature-intro>.icon{color:var(--green);height:28px;width:28px}.feature-intro h3{font-size:13px;margin-bottom:4px}.feature-intro p{font-size:11px;color:var(--muted)}.feature-intro .btn{margin-left:auto}.docs-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:17px}.docs-tabs button{font-size:10px;border:1px solid var(--line);padding:8px 11px;border-radius:6px;background:white;color:var(--muted)}.docs-tabs button.active{background:var(--accent-tint);border-color:var(--accent-border);color:var(--green)}.doc-name{display:flex;gap:11px;align-items:center;max-width:330px;white-space:normal}.doc-name>.doc-symbol{height:36px;width:32px;flex-shrink:0;border-radius:6px;display:grid;place-items:center;color:var(--green);background:var(--accent-soft);border:1px solid var(--accent-border)}.doc-name strong{display:block;font-size:11px;line-height:1.5}.doc-name small{display:block;margin-top:4px;font-size:9px;color:var(--muted)}.file-drop{border:1px dashed #dbccb9;border-radius:10px;background:#fffcf7;padding:18px;text-align:center}.file-drop input{border:0;background:none;padding:12px 0;font-size:11px}.file-drop .icon{color:var(--green);height:25px;width:25px}.doc-preview{max-height:300px;overflow:auto;background:#f8f8f5;border:1px solid var(--line);padding:17px;border-radius:8px;font-family:inherit;white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.8}.doc-preview-frame{width:100%;height:330px;border:1px solid var(--line);border-radius:8px}.doc-preview-image{max-width:100%;max-height:330px;display:block;margin:auto}.doc-metadata{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:18px 0}.doc-metadata dt{font-size:10px;color:var(--muted);margin-bottom:4px}.doc-metadata dd{font-size:11px;margin:0;line-height:1.5}.receipt-list{border-top:1px solid var(--line);padding:12px 0;font-size:11px}.receipt-list span{display:block;font-size:10px;color:var(--muted);margin-top:5px}.chat-layout{display:grid;grid-template-columns:270px 1fr;min-height:560px;max-height:720px}.chat-threads{border-right:1px solid var(--line);background:#fbfcf9;overflow:auto;padding:15px 10px}.chat-thread{width:100%;padding:12px 10px;display:flex;gap:10px;align-items:center;text-align:left;border-radius:8px;margin:2px 0}.chat-thread.active{background:var(--accent-tint)}.chat-thread:hover{background:var(--accent-soft)}.thread-icon{width:32px;height:32px;flex-shrink:0;display:grid;place-items:center;background:#f0f1eb;border-radius:9px;color:#89917f}.chat-thread.active .thread-icon{background:white;color:var(--green)}.thread-text{min-width:0;flex:1}.thread-text strong{font-size:11px;display:block;font-weight:600;line-height:1.5}.thread-text small{font-size:9px;color:var(--muted);display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:170px}.thread-unread{background:var(--green);color:white;padding:2px 5px;border-radius:5px;font-size:9px}.thread-section{padding:13px 11px 6px;font-size:9px;color:#9a9c8b;letter-spacing:1.2px}.chat-main{display:flex;flex-direction:column;min-width:0;height:620px;max-height:75vh}.chat-header{padding:17px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:76px}.chat-header h3{font-size:14px}.chat-header p{font-size:10px;color:var(--muted);margin-top:5px}.chat-context{padding:9px 20px;background:var(--accent-soft);font-size:10px;color:var(--green);display:flex;align-items:center;gap:7px;border-bottom:1px solid var(--accent-border)}.chat-messages{overflow:auto;padding:22px;flex:1;min-height:150px;display:flex;flex-direction:column;gap:20px;background:#fff}.message{display:flex;align-items:flex-start;gap:9px;max-width:87%}.message.mine{align-self:flex-end;flex-direction:row-reverse}.message .avatar{width:28px;height:28px;font-size:9px}.message-body{max-width:100%;min-width:0}.message-author{font-size:9px;color:#8d9686;margin-bottom:6px}.message.mine .message-author{text-align:right}.message-text{font-size:12px;line-height:1.65;padding:12px 15px;background:#f3f5ef;border-radius:0 12px 12px 12px;overflow-wrap:anywhere;white-space:pre-wrap}.message.mine .message-text{background:var(--accent-tint);color:#744021;border-radius:12px 0 12px 12px}.message-time{font-size:9px;color:#a0a592;margin-top:5px}.message.mine .message-time{text-align:right}.message-form{padding:15px 20px;border-top:1px solid var(--line);background:#fbfcf8}.message-compose{display:flex;gap:9px;align-items:flex-end}.message-compose textarea{min-height:46px;max-height:150px;font-size:12px}.message-form .form-hint{margin-top:8px;font-size:9px}.chat-empty{flex:1;display:grid;place-items:center;padding:20px}.chat-empty .empty{padding:20px}.site-card{border:1px solid var(--line);border-radius:10px;padding:18px;margin-bottom:13px}.site-card h3{margin-bottom:8px}.site-card p{font-size:11px;color:var(--muted);margin-bottom:15px}.geo-steps{display:flex;gap:12px;align-items:center;margin-bottom:20px;border-bottom:1px solid var(--line);padding-bottom:16px;color:var(--muted);font-size:10px}.geo-steps span{display:flex;gap:7px;align-items:center}.geo-steps b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--accent-tint);color:var(--green);font-size:10px}.geo-result{border-radius:8px;padding:12px 14px;margin:14px 0;background:#f3f5ef;font-size:11px;line-height:1.6}.geo-result.good{background:#edf6ec;color:#4b8053}.geo-result.warn{background:#fff4e4;color:#a37739}.geo-result.bad{background:#fdf0ed;color:#a56550}.signature-wrap{margin:17px 0}.signature-canvas{width:100%;height:145px;display:block;border:1px dashed #d5c6b5;border-radius:9px;background:linear-gradient(transparent 111px,#eee6da 112px,transparent 113px),#fffdfa;touch-action:none;cursor:crosshair}.signature-caption{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:7px;font-size:9px;color:var(--muted)}.signature-caption button{font-size:10px;color:var(--green);text-decoration:underline}.signed-presence{display:inline-flex;align-items:center;gap:4px}.signature-image{width:100%;height:145px;object-fit:contain;border:1px solid var(--line);border-radius:8px;background:#fffcf7}.geo-attestation{font-size:11px;line-height:1.7;display:flex;gap:9px;align-items:flex-start}.geo-attestation input{margin-top:4px}.attendance-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.attendance-summary .metric{min-height:100px}.attendance-summary .metric-value{font-size:21px}.feature-note{padding:12px 0;font-size:10px;color:var(--muted);line-height:1.7}.urgent-note{background:#fff3e4;border:1px solid #efddbc;border-radius:8px;padding:11px 14px;font-size:10px;color:#987748;margin:15px 0}.context-chip{padding:8px 10px;background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:6px;font-size:10px;color:var(--green)}
@media(max-width:1100px){.chat-layout{grid-template-columns:220px 1fr}.chat-threads{padding:10px 7px}.chat-header{padding:15px}.chat-messages{padding:17px}.thread-text small{max-width:125px}.message{max-width:95%}.message-text{padding:10px 12px}.feature-intro{align-items:flex-start}.feature-intro .btn{white-space:normal}}
@media(max-width:760px){.chat-layout{grid-template-columns:1fr;max-height:none}.chat-threads{border-right:0;border-bottom:1px solid var(--line);max-height:210px;display:flex;flex-wrap:nowrap;overflow:auto;padding:10px;gap:7px}.chat-thread{min-width:180px;max-width:200px;align-self:flex-start;margin:0;padding:10px}.thread-section{display:none}.chat-main{height:570px;max-height:76vh}.chat-header{padding:13px 15px}.chat-header h3{font-size:12px}.chat-messages{padding:16px}.message-compose .btn{padding:10px}.message-form{padding:12px}.feature-intro{padding:15px;gap:11px;flex-wrap:wrap}.feature-intro>.icon{height:22px;width:22px}.feature-intro>div{flex:1;min-width:200px}.feature-intro .btn{margin-left:33px}.employee-tabs{gap:3px}.employee-tabs button{padding:10px 12px;font-size:11px}.doc-metadata{gap:13px}.attendance-summary{grid-template-columns:1fr}.doc-name{min-width:180px}.signature-canvas{height:155px}.geo-steps{gap:8px;font-size:9px}.site-card{padding:15px}.side-bottom .project-note{display:none}}
.chat-context:has(.chat-participants){align-items:flex-start}.chat-participants{flex:1;min-width:0}.chat-participants summary{cursor:pointer;font-size:11px;font-weight:600}.chat-participants>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px;padding-bottom:4px}.chat-participants>div>span{font-size:11px;padding:5px 9px;background:white;border:1px solid var(--accent-border);border-radius:6px}
