.client-portal button{cursor:pointer;transition:background 120ms ease-out,border-color 120ms ease-out,box-shadow 120ms ease-out,transform 80ms ease-out}.client-portal button:focus-visible{outline:2px solid #207cc5;outline-offset:3px}.client-portal button:active{transform:scale(.98)}.client-portal .primary-button{box-shadow:0 3px 0 #a94b14,0 8px 15px rgba(169,75,20,.18)}.client-portal .primary-button:hover{background:#db5d10}.client-portal .primary-button:active{box-shadow:0 1px 0 #a94b14}.client-portal .review-button,.client-portal .open-link,.client-portal .card-heading button{border:1px solid #c9d7d3;border-radius:4px;background:#fff;color:#2d535a;padding:8px 10px;box-shadow:0 1px 2px rgba(13,41,49,.08);font:700 9px var(--mono)}.client-portal .review-button:hover,.client-portal .open-link:hover,.client-portal .card-heading button:hover{background:#f0f5f3;border-color:#8aa8a6}.client-portal .review-button:active,.client-portal .open-link:active,.client-portal .card-heading button:active{background:#e3ece8}.client-portal .approve-button{box-shadow:0 3px 0 #12644d,0 5px 10px rgba(18,100,77,.16)}.client-portal .approve-button:hover{background:#167b5e}.client-portal .approve-button:active{box-shadow:0 1px 0 #12644d}.client-portal .request-button{box-shadow:0 2px 0 #d7a46d}.client-portal .request-button:hover{background:#fff5e8}.client-portal .client-tab{position:relative}.client-portal .client-tab:hover{color:#17353c;background:#e3ebe8}.client-portal .client-tab.active{background:#fff;border:1px solid #d7e1de;border-bottom-color:var(--orange);border-radius:5px 5px 0 0}.tab-count{display:inline-grid;place-items:center;min-width:15px;height:15px;margin-left:5px;padding:0 4px;border-radius:10px;background:#d94343;color:#fff;font:8px var(--mono)}.message-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0 4px;padding:10px 0;border-top:1px solid #e5ebe8;border-bottom:1px solid #e5ebe8}.message-filter-group{display:flex;gap:6px;flex-wrap:wrap}.message-filter{border:1px solid #d3dfdb;background:#f7faf8;color:#527076;padding:6px 8px;border-radius:20px;font:700 9px var(--mono)}.message-filter.active{background:#1f5860;color:#fff;border-color:#1f5860}.mark-read{border:0;background:transparent;color:#55747a;padding:6px;font:700 9px var(--mono);text-decoration:underline}.message{position:relative;padding:16px 13px 16px 17px!important;border-left:3px solid transparent}.message.unread{background:#fff6f4;border-left-color:#df4b4b}.message.needs-reply{background:#fff9e9;border-left-color:#e6a52f}.message.read{border-left-color:#cfdad7}.message-avatar{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:8px;border-radius:50%;background:#e0ece9;color:#2a5960;font:700 9px var(--mono);vertical-align:middle}.message.unread .message-avatar{background:#f9d9d5;color:#aa3737}.message.needs-reply .message-avatar{background:#faebc6;color:#91600b}.message-head{display:flex;align-items:center;gap:6px}.message-head b{flex:1}.message-state{padding:3px 5px;border-radius:3px;font:700 8px var(--mono);letter-spacing:.3px}.message-state.new{background:#d94343;color:#fff}.message-state.reply{background:#f7d77d;color:#765009}.message-state.read{background:#e6eeeb;color:#56706e}.message-action{border:1px solid #d4dfdc;background:#fff;color:#45666d;padding:5px 7px;border-radius:3px;font:700 8px var(--mono);box-shadow:0 1px 1px rgba(13,41,49,.06)}.message-action:hover{background:#edf4f1}.message.hidden-message{display:none}.notification-dot{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:#d94343;box-shadow:0 0 0 3px rgba(217,67,67,.12)}.client-portal .project-state{padding:4px 6px;border-radius:3px;background:#e4f3ed}.client-portal .project-state.review{background:#fff1d4}.client-portal .project-state:not(.review){color:#1d7b60}@media(max-width:650px){.message-toolbar{align-items:flex-start;flex-direction:column}.message-filter-group{width:100%}}
