/* Readable text on pastel surfaces; preserve the established brand colors. */
:root{--workspace-ink:#343149;--workspace-muted:#665d75;--workspace-accent:#70538f}
body{color:var(--workspace-ink)}
.muted,.meta,.access-note,.task p,.project-body p,.section-heading p,.welcome-banner p{color:var(--workspace-muted)}
.eyebrow,.topbar small,.topbar .date,.footer,.side-note,.brand small,.root-role small,.side .nav-label,.nav-branch a,.side .nav-branch button{color:#6b6078}
.side .nav-branch button,.nav-branch a{font-size:12px!important;line-height:1.9}
.summary-card span,.metric p,.metric small,.quick-card small,.notice-item small,.ticket-row small,.project-body small,.project-category,.weekday,.day>b{color:#665c74}
.project-body h3{line-height:1.9}.project-body p{font-size:13px}.project-body small{font-size:11px}
.btn{font-size:13px;min-height:38px}.btn.small{font-size:12px;min-height:34px}
label{line-height:1.8}.check{line-height:1.9}input,textarea,select{font-size:14px}
input::placeholder,textarea::placeholder{color:#73677f;opacity:1}
.task p{line-height:1.95}.task .meta{line-height:1.9}.task b{line-height:1.85}
.notice-item b,.ticket-row b{font-size:13px}.notice-item small,.ticket-row small{font-size:11px}
.task-state{color:#7a5c2b;background:#f7ecd9}.task-state.done{color:#35694b;background:#e3f0e8}
.tag{color:#67546f}.tag.progress{color:#335b82}.tag.review{color:#775b29}.tag.done{color:#35694b}.tag.blocked,.tag.high{color:#92413f}
.role-badge{color:#65437d}.form-error,.inline-error{color:#963e4a}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #8663a8;outline-offset:3px}
.room-list>.muted,.room-row small,.room-kinds a,#room-kind,.conversation-head .muted,.room-stats,.sender-line,.sender-line time,.task-card-header small,.task-details small,.task-details b,.task-checks small,.task-checks .between b,.task-checks .check,.task-bottom>span,.member-choice-list small,.conversation #send .access-note{color:#6c5c7c}
.room-row b{font-size:13px}.room-row small{font-size:11px}.room-kinds a{font-size:12px;padding:5px 0}
.conversation-head .muted{font-size:12px}.room-stats{font-size:12px}.sender-line,.sender-line time{font-size:11px}
.task-card-header h3{font-size:15px}.task-card-header small,.task-details small,.task-checks small,.task-bottom>span{font-size:11px}
.task-description{font-size:13px;color:#665572;line-height:2}.task-details b,.assignee-chips>span,.task-checks .check{font-size:12px;color:#665572}.assignee-chips>span{background:#f0eaf6}
.text-message{color:#51415f}.mine .text-message{color:#3e634f}.conversation #send textarea{font-size:14px}
.conversation #send .access-note{font-size:11px}.composer-toolbar .btn,.task-bottom .btn{font-size:12px}
.room-row:disabled,.btn:disabled{cursor:wait}.empty{color:#6e627d}
/* Desktop chat uses one scrolling history area; composer stays visible. */
@media(min-width:1251px){body.team-page{overflow:hidden}.team-page .layout{height:100dvh}.team-page .team-layout{height:100dvh;grid-template-rows:minmax(0,1fr)}.team-page .conversation{height:100%;min-height:0;display:flex;flex-direction:column}.team-page .conversation-head,.team-page .room-stats,.team-page .sub-tabs,.team-page #send{flex-shrink:0}.team-page .conversation #messages,.team-page .conversation #tasks{height:auto;min-height:0;flex:1;overscroll-behavior:contain}.team-page .room-list{height:100%;overflow:auto}.team-page #rooms{max-height:calc(100dvh - 340px)}.team-page #send textarea{max-height:18dvh}.team-page #send{max-height:45dvh;overflow:auto}}
/* More room for messages on laptop widths: move the room chooser above chat. */
@media(min-width:761px) and (max-width:1250px){.team-page .team-layout{grid-template-columns:1fr}.team-page .room-list{padding:16px}.team-page .room-list>.muted,.team-page .room-kinds{display:none}.team-page .room-list>input{margin-top:12px}.team-page #rooms{display:flex;max-height:100px;overflow:auto;margin:12px 0 0}.team-page .room-row{min-width:200px;max-width:260px}.team-page .room-list>a{display:none}.team-page .conversation{display:flex;flex-direction:column;height:calc(100dvh - 70px);min-height:560px}.team-page .conversation #messages,.team-page .conversation #tasks{flex:1;height:auto;min-height:0}.team-page .conversation-head,.team-page .room-stats,.team-page .sub-tabs,.team-page #send{flex-shrink:0}}
@media(max-width:760px){.btn,.btn.small{min-height:42px}.side .nav-branch button,.nav-branch a{font-size:12px!important;min-height:40px}.tree-nav summary{min-height:43px}.day{min-height:90px}.weekday{font-size:10px}.calendar-task{font-size:10px}.summary-card span{font-size:12px}.task-card-header h3{font-size:14px}.task-description{font-size:13px}.conversation #messages,.conversation #tasks{height:55dvh;min-height:300px}.member-choice-list .check{min-height:46px}.room-row{min-height:65px}.org-node .btn{font-size:11px}.login-form-side h1{line-height:1.7}}

.date-hint{display:block;font-size:11px;color:#665d75;margin-top:5px;line-height:1.8}

.header-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.conversation-head{padding:18px 22px}.conversation-head h2{margin:3px 0 6px}.conversation-head .muted{max-width:560px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}.room-stats{padding:11px 22px}.conversation>.sub-tabs{padding-top:11px}.conversation #send textarea{min-height:58px}.conversation #send{padding:14px 20px;gap:9px}.conversation #send .access-note{font-size:10px}.team-page .conversation #tasks .task-message{width:100%}
@media(max-width:600px){.header-actions{flex-wrap:wrap}.conversation-head .muted{white-space:normal;max-width:100%}}
