body,
html body {
	color: #222
}

body #portal-footer-wrapper {
   /* The aqua was a solid band, which made the most saturated block on
      every page a copyright line - louder than the table somebody came to
      read. As a rule it still says whose product this is, and the weight
      goes back to the content. */
   background: #F7F6F4;
   border-top: 3px solid #47a3b6;
   padding: 0.55rem;
   font-size: 85%;
}

body #portal-footer-wrapper,
body #portal-footer-wrapper a {
   color: #6c757d;
}

body #portal-footer-wrapper a:hover {
   color: #343a40;
}

#project_name {max-width: 160px; ;}

body.template-login #portal-anontools {
	display: none !important;
}

input[type=checkbox],
input[type=radio] {
	opacity: 1;
}

.userrole-anonymous #content-header {
	max-width: 1300px;
	margin: auto
}

.userrole-anonymous #portal-top {
	color: white;
}

#portal-anontools {
	margin: auto;
	width: 100%;
	display: block
}

#portal-anontools ul {
	margin: auto !important;
	max-width: 1380px;
	width: 100%;
	text-align: right;
	display: block;
}

#portal-anontools li a {
	text-decoration: none;
	color: #05386B;
	transition: 0.4s;
	font-family: "Roboto", sans-serif;
	padding: 12px 25px;
	border-radius: 30px;
	font-weight: 500;
	font-size: 15px;
	min-width: 150px;
	border: 1px solid;
	background: #F24C3D;
	color: white;
}

#portal-anontools li a:hover {
	text-decoration: underline;
	color: white !important;
}

.profile-setup a {
	font-weight: bolder;
}

.profile-setup a:hover {
	text-decoration: underline
}

.managePortlets-row {
	display: none !important
}

body.template-manage-portlets #portal-column-two {
	display: block !important
}

thead,
.dataTable th {
	font-weight: bold;
	margin-bottom: 3px;
	color: black
}

.mention,
.mentions {
	background: #D2B48C
}

#mainnavigation-wrapper {
	display: none !important
}

#header a {
	color: black;
}

.hidden {
	display: none !important
}

#viewlet-below-content-title {
	display: none
}

/* Comments used to be styled from three separate places in this file - here,
   again around .pat-discussion below, and again in a block by the portlet
   rules. They are all one block now, at the foot of the file: search for
   "Comments (plone.app.discussion". */

h1.priority-1 {
	color: #F24C3D
}

h1.priority-3 {
	color: #22A699
}

h1.priority-2 {
	color: #F2BE22
}

h1.priority-x3 {
	color: #F29727
}

h1.priority-xx1 {
	color: #F24C3D
}

h1.priority-x1 {
	color: red
}

.black {
	color: black
}

.autotoc-nav {
	xbackground: whitesmoke
}

.autotoc-nav .active {
	xbackground: white
}

.white-background {
	xbackground: white
}

body {
	xbackground: whitesmoke
}

.xpat-autotoc.autotabs {
	background: white
}

fieldset {
	xbackground: white;
	padding-left: 2rem;
	padding-right: 2rem;
}

td {
	padding: 3px 12px;
	xbackground: rgba(254, 255, 255, 0.5913176);
	margin: 1px;
}

.calendarsheet {
	max-width: 120px;
	min-width: 90px;
	float: right;
	display: block;
}

.calendarsheet.left {
	float: left;
	opacity: 0.6
}

.redborder.calendarsheet time {
	background: red;
}

.calendarsheet time,
.calendarsheet p,
.calendarsheet date {
	display: block;
	text-align: center;
}

.colorborder {
	border: 5px solid;
}

.redborder {
	border: 5px solid red;
}

.urgent_red {
	border-color: red
}

.soon_yellow {
	border-color: orange
}

.future_green {
	border-color: green
}

.long_grey {
	border-color: #123456
}

.redborder p.theading,
.urgent_red p.theading {
	background: red
}

.soon_yellow p.theading {
	background: orange
}

.future_green p.theading {
	background: green
}

.long_grey p.theading {
	background: #123456
}

.calendarsheet time,
.calendarsheet p.theading {
	color: white !important;
	margin: 0
}

.calendarsheet .days,
.calendarsheet date {
	background: white;
	color: black;
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: -3px;
	margin: 0;
}

.larger {
	font-size: 120%
}

@media (min-width:100px) {

	div.soon_yellow.colorborder.calendarsheet {
		position: relative;
		top: -2.5rem;
		;
	}

}

.pri-box.flex {
	display: flex
}

.priority-1 span {
	color: red;
	padding: 1px 5px
}

.priority-2 span {
	color: orange;
	padding: 1px 5px
}

.priority-3 span {
	color: green;
	padding: 1px 5px
}

span.previousdue-True {
	color: silver;
}

#traffic-light {
	background: #444;
	border-radius: 3px;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;
	width: 17px;
	height: 35px;
}

#traffic-light>span {
	border-radius: 50%;
	width: 6px;
	height: 6px;
	padding: 0;
	display: block;
	opacity: 0.33
}

#traffic-light .active-True {
	opacity: 1 !important;
	width: 10px;
	height: 10px
}

.late14-True {
	color: red
}

span.late14-True {}

.soon14-True {
	color: orange
}

span.later-True {
	color: green
}

#toolbar select {
	background: none !important
}

/* Hide the red required-asterisk on the comment form; the box is obviously
   required. .formControls used to be hidden here too, which took the Comment
   and Cancel buttons with it - the block at the foot of the file now shows
   them when the composer has focus. */
.pat-discussion span.required {
	display: none
}

.section-notes.template-full_view .item h1,
.section-notes.template-full_view p.lead,
.template-note-view.template-full_view h1,
.template-note-view.template-full_view p.lead,
.section-postit_notes.template-full_view .item h1,
.section-postit_notes.template-full_view p.lead,
.template-post-it-note-view.template-full_view h1,
.template-post-it-note-view.template-full_view p.lead,
.section-notes #content-core header {
	display: none
}

.section-notes.template-full_view #content-core,
.template-note-view.template-full_view #content-core,
.section-postit_notes.template-full_view #content-core,
.template-post-it-note-view.template-full_view #content-core {
	display: grid;
	grid-template-columns: 1fr;
	/* default to 1 column */
	gap: 1rem;
	/* optional spacing between items */
}

.subsection-postit-collection #main-container {
	display: flex;
	flex-direction: column-reverse;
	width: 100%;
}

#portal-column-two.overlay {
	display: flex !important;
	max-width: calc(100% + 1rem) !important;
	width: calc(100% + 1rem) !important;
	margin: 1rem 0 1rem 1rem;
	height: auto;
	background: whitesmoke !important;
}

#portal-column-two.overlay .portletWrapper {
	background: none !important;
	padding: 0;
	margin: 1rem 0 0
}

@media (min-width: 768px) {

	.section-notes.template-full_view #content-core,
	.template-note-view.template-full_view #content-core,
	.section-postit_notes.template-full_view #content-core,
	.template-post-it-note-view.template-full_view #content-core {
		xgrid-template-columns: 1fr 1fr;
		/* two 

columns on large screens */
	}

}

.card-big-shadow {
	max-width: 620px;
	position: relative;
}

.coloured-cards .card {
	margin-top: 30px;
}

.card[data-radius="none"] {
	border-radius: 0px;
}

.card {
	border-radius: 8px;
	box-shadow: 0 2px 2px rgba(204, 197, 185, 0.5);
	background-color: #FFFFFF;
	color: #252422;
	margin-bottom: 20px;
	position: relative;
	z-index: 1;
}

.card[data-background="image"] .title,
.card[data-background="image"] .stats,
.card[data-background="image"] .category,
.card[data-background="image"] .description,
.card[data-background="image"] .content,
.card[data-background="image"] .card-footer,
.card[data-background="image"] small,
.card[data-background="image"] .content a,
.card[data-background="color"] .title,
.card[data-background="color"] .stats,
.card[data-background="color"] .category,
.card[data-background="color"] .description,
.card[data-background="color"] .content,
.card[data-background="color"] .card-footer,
.card[data-background="color"] small,
.card[data-background="color"] .content a {
	color: #444;
}

.card.card-just-text .content {
	padding: 50px 65px;
	text-align: xcenter;
}

.card .content {
	padding: 10px 10px 10px 10px;
}

.card[data-color="blue"] .category {
	color: #7a9e9f;
}

.card .category,
.card .label {
	font-size: 14px;
	margin-bottom: 0px;
}

.card-big-shadow:before {
	/* This was a PNG from static.tumblr.com over plain http. On an https
	   site browsers block it as mixed content, so the shadow has not
	   actually been drawn in a long time. A gradient does the same job
	   with no third-party request and nothing to ship. */
	background-image: radial-gradient(ellipse at center,
		rgba(0, 0, 0, 0.28) 0%,
		rgba(0, 0, 0, 0.16) 40%,
		rgba(0, 0, 0, 0) 70%);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	bottom: -12%;
	content: "";
	display: block;
	left: -12%;
	position: absolute;
	right: 0;
	top: -1px;
	z-index: 0;
}

h4,
.h4 {
	font-size: 1.5em;
	font-weight: 600;
	line-height: 1.2em;
}

h6,
.h6 {
	font-size: 0.9em;
	font-weight: 600;
	text-transform: uppercase;
}

.card .description {
	font-size: 16px;
	color: #66615b;
}

.content-card {
	margin-top: 30px;
}

a:hover,
a:focus {
	text-decoration: none;
}

/*======== COLORS ===========*/

.card[data-color="blue"] {
	background: #b8d8d8;
}

.card[data-color="blue"] .description {
	color: #506568;
}

.card[data-color="green"] {
	background: #d5e5a3;
}

.card[data-color="green"] .description {
	color: #60773d;
}

.card[data-color="green"] .category {
	color: #92ac56;
}

.card[data-color="yellow"] {
	background: #ffe28c;
}

.card[data-color="yellow"] .description {
	color: #b25825;
}

.card[data-color="yellow"] .category {
	color: #d88715;
}

.card[data-color="brown"] {
	background: #d6c1ab;
}

.card[data-color="brown"] .description {
	color: #75442e;
}

.card[data-color="brown"] .category {
	color: #a47e65;
}

.card[data-color="purple"] {
	background: #baa9ba;
}

.card[data-color="purple"] .description {
	color: #3a283d;
}

.card[data-color="purple"] .category {
	color: #5a283d;
}

.card[data-color="orange"] {
	background: #ff8f5e;
}

.card[data-color="orange"] .description {
	color: #772510;
}

.card[data-color="orange"] .category {
	color: #e95e37;
}

.greyed {
	opacity: 0.25
}

a {
	opacity: 1
}

.flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.flex-start {
	justify-content: flex-start !important;
}

#toolbar {
	padding: 0;
	max-width: 1680px;
	margin: auto;
	min-height: 122px;
}

#toolbar .flex {
	justify-content: space-between;
	margin: 0
}

#toolbar img {
	width: 2rem;
}

#document_manager img,
#meeting_select img {
	width: 1.3rem;
}

#toolbar {
	background: #F5F1E8; /* warm paper — cream tint of the brand brown */
	font-size: 10pt;
	width: 100%;
}

#toolbar .not-toggle img:active {
	transform: rotate(15deg);
  }


#toolbar .border {
	border-right: 1px solid #E3DCC9;
	width: 1px;
}

#pmtoolbargroup {
	border-left: 1px solid #E3DCC9;
}
 
#pmtoolbargroup .toolbargroup  {
	border-right: 0 none;
	border-left: 0 none;
} 

.toolbargroup {
	border-left: 1px solid silver;
	padding-left: 1rem;
	padding-right: 1rem;
}

#teamtoolbargroup {
	border-right: 1px solid silver;
}

#toolbar>div {
	padding: 0.4rem 1rem 1.5rem;
	flex-grow: 1;
	position: relative
}

.toolbar_label {
	text-align: center;
	font-weight: 600 !important;
	position: absolute;
	bottom: -7px;
	left: 0;
	right: 0;
	xbackground: black;
	line-height: 125%;
	color: #555555 !important
}

.toolbar_label a {
	font-weight: 600 !important;
}

#toolbar {
	text-align: center;
	font-size: 10pt;
	text-transform: none !important
}

#toolbar * {
	text-transform: none !important;
	font-size: 10pt;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	font-weight: normal;
	color: #3E4A4E !important /* warm slate captions */
}

/* Group labels (My Hub, Project Hub, Help Center...) in deep aqua.
   More specific than the '#toolbar *' rule above, so it wins. */
#toolbar .toolbar_label,
#toolbar .toolbar_label a {
	color: #2F7A8A !important;
}

#toolbar .messagetype,
#toolbar .stoplight {
	font-size: 90%;
	margin: 4px 0 8px;
	padding-left: 1px;
	padding-right: 0;
	width: 15pt;
	height: 15pt;
	padding: 3px;
	border-radius: 50%;
	background-color: gray
}

#toolbar .red {
	background: red;
	color: white
}

#toolbar .yellow {
	background: yellow
}

#toolbar .green {
	background: green;
	color: white
}

#toolbar .info {
	background: #40E0D0
}

#toolbar select {
	border-color: black;
	border-width: 1px;
	padding: 0 3px;
	margin-bottom: 9px;
	border-radius: 4px;
}

#toolbar input,
#toolbar select {
	height: auto
}

#toolbar a {
	color: black;
	text-decoration: none;
	text-transform: none !important;
	border-bottom: 0 dotted #E2E2E2 !important
}

#toolbar p {
	padding: 0;
	margin: 0;
	line-height: 120%
}

#toolbar #help_div {
	border-right: 0 none
}

#document_type_select {
	text-align: center
}

#toolbar #site_logo img {
	width: 3rem;
	height: 3rem;
	margin-bottom: 4px
}

#xmeeting_create img {
	margin-bottom: 10px;
}

p.align-left {
	text-align: left
}

#xcreate_meeting {
	border: 0 none !important;
	background: none
}

#create_meeting {
	background-image: none
}

/* Fake toolbar dropdown */

#toolbar .custom-select {
	position: relative;
	display: inline-block;
	text-align: left;
}

#toolbar .selected {
	border: 1px solid;
	border-radius: 3px;
}

#toolbar .selected img {
	width: 20px;
	height: 20px;
	margin-right: 8px;
}

#toolbar .options {
	display: none;
	position: absolute;
	background: #EEE;
	width: 150px;
	top: 0;
	border: 1px solid #ccc;
	z-index: 10;
	border-radius: 6px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}


#customSelect div {
	padding: 0 3px;
}

#toolbar .option {
	padding: 3px;
	display: flex;
	align-items: center;
	cursor: pointer;
}

#toolbar .option img {
	width: 16px;
	height: 16px;
	margin-right: 4px;
}

#show-toobar button {
	border: 0 none;
	padding: 0 10px 0 0;
	padding-inline: 0;
	background: white;
	line-height: 120%;
}

#show-toobar img {
	margin: 0 5px 0 0;
	padding: 0
}

body #portal-column-two {
	background: white !important;
	border: 1px solid;
	border-radius: 5px;
	background: white !important;
	padding-bottom: 2rem
}

.portletWrapper {
	background: white !important
}

.pat-collectionfilter .card-body,
.pat-collectionfilter,
.collectionFilter .card-body,
.collectionFilter,
.pat-collectionfilter,
.card-header.portletHeader {
	background: none !important;
	padding: 0 7px;
	font-weight: bold;
	border: 0 none !important;
	margin: 0;
}

.margin-auto {
	margin: auto;
}

body {
	/* The page's ground. #FAFAF9 was so close to white that nothing on the
	   page had an edge: the ribbon, the breadcrumbs, the heading and the
	   table all sat on one sheet and the only thing separating furniture
	   from content was a 2px rule. A few percent darker is enough for a
	   white card to read as a card - and warm, to sit with the cream
	   heading band rather than against it. */
	 background: #EFEDE9 !important;

	/* background: #FAF9F6 !important; */
}

.frontend fieldset {
	background: white
}

.frontend fieldset.autotoc-section {
	padding: 1rem;
}

.frontend .pat-autotoc.autotabs .autotoc-nav {
	margin-bottom: 0;
}

.frontend .autotoc-level-1.active {
	background: white;
	color: black !important;
}

#toggle-filters,
#toggle-filters img {
	background: white;
	border-radius: 5px;
}

#toggle-filters {
	padding: 3px 5px 0;
}

#portal-breadcrumbs {
	background: none !important;
}

h1.priority-1 {
	color: #F24C3D
}

h1.priority-3 {
	color: #22A699
}

h1.priority-2 {
	color: #F2BE22
}

h1.priority-x3 {
	color: #F29727
}

h1.priority-xx1 {
	color: #F24C3D
}

h1.priority-x1 {
	color: red
}

.black {
	color: black
}

.autotoc-nav {
	xbackground: whitesmoke
}

.autotoc-nav .active {
	xbackground: white
}

.white-background {
	xbackground: white
}

body {
	xbackground: whitesmoke
}

.xpat-autotoc.autotabs {
	background: white
}

fieldset {
	padding-left: 2rem;
	padding-right: 2rem;
}

td {
	padding: 3px 12px;
	margin: 1px;
}

.calendarsheet {
	max-width: 120px;
	min-width: 90px;
	float: right;
	display: block;
}

.calendarsheet.left {
	float: left;
	opacity: 0.6
}

.redborder.calendarsheet time {
	background: red;
}

.calendarsheet time,
.calendarsheet p,
.calendarsheet date {
	display: block;
	text-align: center;
}

.colorborder {
	border: 5px solid;
}

.redborder {
	border: 5px solid red;
}

.urgent_red {
	border-color: red
}

.soon_yellow {
	border-color: orange
}

.future_green {
	border-color: green
}

.long_grey {
	border-color: #123456
}

.redborder p.theading,
.urgent_red p.theading {
	background: red
}

.soon_yellow p.theading {
	background: orange
}

.future_green p.theading {
	background: green
}

.long_grey p.theading {
	background: #123456
}

/* Crit. Path. Deliberately NOT a fourth traffic-light colour - it is not a
   rung on the same ladder, it is the schedule. Docent maroon, the colour
   this product already uses for its own actions. */
#tl-0 {
	background: #64041F
}

#tl-1 {
	background: #FF0000
}

#tl-2 {
	background: #FFFF00
}

#tl-3 {
	background: #00FF00
}

.calendarsheet time,
.calendarsheet p.theading {
	color: white !important;
	margin: 0
}

.calendarsheet .days,
.calendarsheet date {
	background: white;
	color: black;
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: -3px;
	margin: 0;
}

.larger {
	font-size: 120%
}

@media (min-width:100px) {

	div.soon_yellow.colorborder.calendarsheet {
		position: relative;
		top: -2.5rem;
	}

}

#portal-column-two.overlay {
	display: flex !important;
	max-width: calc(100% + 1rem) !important;
	width: calc(100% + 1rem) !important;
	margin: 1rem 0 1rem 1rem;
	height: auto;
	background: whitesmoke !important;
}

#portal-column-two.overlay .portletWrapper {
	background: none !important;
	padding: 0;
	margin: 1rem 0 0
}

/* The pre-redesign comment styling stood here: a drop-shadow card per
   comment, .comment-body as a flex row (which is what put the action buttons
   beside the comment text instead of under it), a "↳" glyph on every reply,
   and a 150% bold author name. All of it is replaced by the block at the foot
   of the file. */

form .hidden-widget {
	display: none
}

#formfield-form-widgets-in_reply_to,
#formfield-form-widgets-author_name {
	margin-bottom: 0
}



.table,
table.invisible-grid,
table.listing,
table.listing-compact,
table.plain {
	--bs-table-color-type: initial;
	--bs-table-bg-type: initial;
	--bs-table-color-state: initial;
	--bs-table-bg-state: initial;
	--bs-table-color: var(--bs-emphasis-color);
	--bs-table-bg: var(--bs-body-bg);
	--bs-table-border-color: var(--bs-border-color);
	--bs-table-accent-bg: transparent;
	--bs-table-striped-color: red;
	--bs-table-striped-bg: rgba(var(--bs-emphasis-color-rgb), 0.05);
	--bs-table-active-color: var(--bs-emphasis-color);
	--bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);
	--bs-table-hover-color: var(--bs-emphasis-color);
	--bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), 0.075);
	width: 100%;
	margin-bottom: 1rem;
	vertical-align: top;
	border-color: var(--bs-table-border-color);
}

.table>:not(caption)>*>*,
table.invisible-grid>:not(caption)>*>*,
table.listing-compact>:not(caption)>*>*,
table.listing>:not(caption)>*>*,
table.plain>:not(caption)>*>* {
	padding: .5rem .5rem;
	color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));
	background-color: var(--bs-table-bg);
	border-bottom-width: var(--bs-border-width);
	box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)))
}

.table>tbody,
table.invisible-grid>tbody,
table.listing-compact>tbody,
table.listing>tbody,
table.plain>tbody {
	vertical-align: inherit
}

.table>thead,
table.invisible-grid>thead,
table.listing-compact>thead,
table.listing>thead,
table.plain>thead {
	vertical-align: bottom
}

.table-group-divider {
	border-top: calc(var(--bs-border-width) * 2) solid currentcolor
}

.caption-top {
	caption-side: top
}

.table-sm>:not(caption)>*>*,
table.listing-compact>:not(caption)>*>* {
	padding: .25rem .25rem
}

.table-bordered>:not(caption)>*,
table.plain>:not(caption)>* {
	border-width: var(--bs-border-width) 0
}

.table-bordered>:not(caption)>*>*,
table.plain>:not(caption)>*>* {
	border-width: 0 var(--bs-border-width)
}

.table-borderless>:not(caption)>*>*,
table.invisible-grid>:not(caption)>*>* {
	border-bottom-width: 0
}

.table-borderless>:not(:first-child),
table.invisible-grid>:not(:first-child) {
	border-top-width: 0
}

.table-striped>tbody>tr:nth-of-type(odd)>* {
	--bs-table-color-type: var(--bs-table-striped-color);
	--bs-table-bg-type: var(--bs-table-striped-bg)
}

.table-striped-columns>:not(caption)>tr>:nth-child(2n) {
	--bs-table-color-type: var(--bs-table-striped-color);
	--bs-table-bg-type: var(--bs-table-striped-bg)
}

.table-active {
	--bs-table-color-state: var(--bs-table-active-color);
	--bs-table-bg-state: var(--bs-table-active-bg)
}

.table-hover>tbody>tr:hover>* {
	--bs-table-color-state: var(--bs-table-hover-color);
	--bs-table-bg-state: var(--bs-table-hover-bg)
}

.table-primary {
	--bs-table-color: #000;
	--bs-table-bg: #cce5ef;
	--bs-table-border-color: #a3b7bf;
	--bs-table-striped-bg: #c2dae3;
	--bs-table-striped-color: #000;
	--bs-table-active-bg: #b8ced7;
	--bs-table-active-color: #000;
	--bs-table-hover-bg: #bdd4dd;
	--bs-table-hover-color: #000;
	color: var(--bs-table-color);
	border-color: var(--bs-table-border-color)
}

.table-secondary {
	--bs-table-color: #000;
	--bs-table-bg: #e2e3e5;
	--bs-table-border-color: #b5b6b7;
	--bs-table-striped-bg: #d7d8da;
	--bs-table-striped-color: #000;
	--bs-table-active-bg: #cbccce;
	--bs-table-active-color: #000;
	--bs-table-hover-bg: #d1d2d4;
	--bs-table-hover-color: #000;
	color: var(--bs-table-color);
	border-color: var(--bs-table-border-color)
}

.table-success {
	--bs-table-color: #000;
	--bs-table-bg: #d1e7dd;
	--bs-table-border-color: #a7b9b1;
	--bs-table-striped-bg: #c7dbd2;
	--bs-table-striped-color: #000;
	--bs-table-active-bg: #bcd0c7;
	--bs-table-active-color: #000;
	--bs-table-hover-bg: #c1d6cc;
	--bs-table-hover-color: #000;
	color: var(--bs-table-color);
	border-color: var(--bs-table-border-color)
}

.table-info {
	--bs-table-color: #000;
	--bs-table-bg: #cff4fc;
	--bs-table-border-color: #a6c3ca;
	--bs-table-striped-bg: #c5e8ef;
	--bs-table-striped-color: #000;
	--bs-table-active-bg: #badce3;
	--bs-table-active-color: #000;
	--bs-table-hover-bg: #bfe2e9;
	--bs-table-hover-color: #000;
	color: var(--bs-table-color);
	border-color: var(--bs-table-border-color)
}

.table-warning {
	--bs-table-color: #000;
	--bs-table-bg: #fff3cd;
	--bs-table-border-color: #ccc2a4;
	--bs-table-striped-bg: #f2e7c3;
	--bs-table-striped-color: #000;
	--bs-table-active-bg: #e6dbb9;
	--bs-table-active-color: #000;
	--bs-table-hover-bg: #ece1be;
	--bs-table-hover-color: #000;
	color: var(--bs-table-color);
	border-color: var(--bs-table-border-color)
}

.table-danger {
	--bs-table-color: #000;
	--bs-table-bg: #f8d7da;
	--bs-table-border-color: #c6acae;
	--bs-table-striped-bg: #eccccf;
	--bs-table-striped-color: #000;
	--bs-table-active-bg: #dfc2c4;
	--bs-table-active-color: #000;
	--bs-table-hover-bg: #e5c7ca;
	--bs-table-hover-color: #000;
	color: var(--bs-table-color);
	border-color: var(--bs-table-border-color)
}

.table-light {
	--bs-table-color: #000;
	--bs-table-bg: #f8f9fa;
	--bs-table-border-color: #c6c7c8;
	--bs-table-striped-bg: #ecedee;
	--bs-table-striped-color: #000;
	--bs-table-active-bg: #dfe0e1;
	--bs-table-active-color: #000;
	--bs-table-hover-bg: #e5e6e7;
	--bs-table-hover-color: #000;
	color: var(--bs-table-color);
	border-color: var(--bs-table-border-color)
}

.table-dark {
	--bs-table-color: #fff;
	--bs-table-bg: #212529;
	--bs-table-border-color: #4d5154;
	--bs-table-striped-bg: #2c3034;
	--bs-table-striped-color: #fff;
	--bs-table-active-bg: #373b3e;
	--bs-table-active-color: #fff;
	--bs-table-hover-bg: #323539;
	--bs-table-hover-color: #fff;
	color: var(--bs-table-color);
	border-color: var(--bs-table-border-color)
}

.table-responsive {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch
}


.fc-day,
.fc-scrollgrid,
.fc-theme-standard td,
.fc-theme-standard th {
	border-style: solid !important;
	border-color: #E6E3DD !important;
}

.fc-scrollgrid {
	border: 1px solid #E6E3DD !important;
}

a.fc-daygrid-day-number {
	border-bottom: 0px solid green;
}

/* ---- Calendar (collective.fullcalendar) restyle ---------------------------
   Match the site's look: brand-maroon header across all views, subtle toolbar
   buttons, black text, and the site font. Scoped to #content and overriding the
   FullCalendar --fc-* variables so it beats collective.fullcalendar's own
   (brand-colored) rules. */

#content .fc, #content .fc * {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}

/* FullCalendar reads these custom properties; set them here so the buttons are
   subtle (collective.fullcalendar sets them to the brand color otherwise). */
#content .fc {
	--fc-button-bg-color: #f4f6fa;
	--fc-button-border-color: #DFD9D1;
	--fc-button-text-color: #3a4252;
	--fc-button-hover-bg-color: #e9edf4;
	--fc-button-hover-border-color: #b9c2d4;
	--fc-button-active-bg-color: #E6E3DD;
	--fc-button-active-border-color: #b9c2d4;
	--fc-today-bg-color: #fbf7ea;
}

/* All calendar text black (was red/maroon) — title, day numbers, events. */
#content .fc,
#content .fc a,
#content .fc .fc-toolbar-title,
#content .fc .fc-daygrid-day-number,
#content .fc .fc-daygrid-event,
#content .fc .fc-event-title,
#content .fc .fc-event-time,
#content .fc .fc-list-event-title a {
	color: #212529 !important;
}
#content .fc .fc-toolbar-title { font-size: 20px !important; font-weight: 700 !important; }

/* Toolbar buttons (‹ ›, Year / Month / Week / List): subtle light chips. */
#content .fc .fc-button,
#content .fc .fc-button-primary {
	background: #f4f6fa !important;
	border: 1px solid #DFD9D1 !important;
	color: #3a4252 !important;
	box-shadow: none !important;
	text-transform: none !important;
	font-weight: 600 !important;
	font-size: 13px !important;
	text-shadow: none !important;
}
#content .fc .fc-button:hover { background: #e9edf4 !important; }
#content .fc .fc-button-primary:not(:disabled).fc-button-active,
#content .fc .fc-button-primary:not(:disabled):active {
	background: #E6E3DD !important;
	border-color: #b9c2d4 !important;
	color: #1a2231 !important;
}
#content .fc .fc-button-primary:disabled {
	background: #FAF8F5 !important; border-color: #e6eaf1 !important; color: #B5AEA6 !important;
}
#content .fc .fc-button:focus { box-shadow: 0 0 0 3px rgba(45, 99, 196, .12) !important; }

/* Nav-style B: the view switcher (Year / Month / Week / List) renders as
   underlined tabs — i.e. every toolbar button that isn't prev / next / today.
   The active view gets a maroon label + maroon underline. */
#content .fc .fc-button:not(.fc-prev-button):not(.fc-next-button):not(.fc-today-button) {
	background: transparent !important;
	background-color: transparent !important;
	border: 0 none !important;
	border-bottom: 2px solid transparent !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #8a837c !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	padding: 6px 2px !important;
	margin: 0 11px !important;
}
#content .fc .fc-button:not(.fc-prev-button):not(.fc-next-button):not(.fc-today-button):hover {
	background: transparent !important;
	color: #64041f !important;
}
#content .fc .fc-button:not(.fc-prev-button):not(.fc-next-button):not(.fc-today-button).fc-button-active {
	background: transparent !important;
	background-color: transparent !important;
	color: #64041f !important;
	border-bottom-color: #64041f !important;
}

/* "today" reads as a plain text tab like Year / Month / … (not a greyed chip).
   FullCalendar disables it while today is already in view — keep it looking
   like a normal tab rather than a washed-out disabled button. */
#content .fc .fc-today-button,
#content .fc .fc-today-button:disabled,
#content .fc .fc-today-button.fc-button-primary:disabled {
	background: transparent !important;
	background-color: transparent !important;
	border: 0 none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #8a837c !important;
	opacity: 1 !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	text-transform: none !important;
	padding: 6px 2px !important;
	margin: 0 11px !important;
}
#content .fc .fc-today-button:hover:not(:disabled) {
	background: transparent !important;
	color: #64041f !important;
}

/* Same heading across EVERY view: month/week day-of-week row, year mini-grid
   headers, and list-view day rows — the toolbar's warm-paper colour (#F5F1E8)
   with dark text. High specificity + background-color to beat FC's own rule. */
#content .fc .fc-col-header-cell,
#content .fc .fc-scrollgrid-section-header th,
#content .fc thead .fc-col-header-cell,
#content .fc .fc-list-day-cushion,
#content .fc .fc-list-day th {
	background: #F5F1E8 !important;
	background-color: #F5F1E8 !important;
	/* No per-cell borders — the day names read as one continuous bar, not
	   individual boxes. Just a bottom divider from the day grid. */
	border: 0 none !important;
	border-bottom: 1px solid #e6ded0 !important;
}
#content .fc .fc-col-header-cell a,
#content .fc .fc-col-header-cell-cushion,
#content .fc .fc-list-day-cushion,
#content .fc .fc-list-day-text,
#content .fc .fc-list-day-side-text {
	color: #212529 !important;
	font-weight: 600 !important;
	text-transform: none !important;
	text-decoration: none !important;
	padding: 8px 6px !important;
}

/* prev / next render as plain arrows that flank the centred title (the toolbar
   JS moves them there); the title gets a little breathing room. */
#content .fc .fc-prev-button,
#content .fc .fc-next-button {
	background: transparent !important;
	background-color: transparent !important;
	border: 0 none !important;
	box-shadow: none !important;
	color: #3a4252 !important;
	padding: 2px 8px !important;
	font-size: 18px !important;
}
#content .fc .fc-prev-button:hover,
#content .fc .fc-next-button:hover {
	background: transparent !important;
	color: #64041f !important;
}
#content .fc .fc-toolbar-title { margin: 0 8px !important; }
/* Lay each toolbar chunk out inline so the arrows sit left/right of the title
   (the title is a block <h2>, which otherwise stacks them above/below). */
#content .fc .fc-toolbar-chunk { display: flex !important; align-items: center !important; }
/* Guarantee clear ‹ › arrows: hide FullCalendar's own chevron glyph (which was
   rendering tiny/blank) and draw explicit chevrons on the buttons. */
#content .fc .fc-prev-button .fc-icon,
#content .fc .fc-next-button .fc-icon { display: none !important; }
#content .fc .fc-prev-button::before { content: "\2039"; }
#content .fc .fc-next-button::before { content: "\203A"; }
#content .fc .fc-prev-button::before,
#content .fc .fc-next-button::before {
	font-size: 26px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	color: #3a4252 !important;
}

.dropdown-container {
	display: flex;
	xgap: 20px;
}

.dropdown-item {
	position: relative;
	max-width: 120px;;
}

.not-dropdown,
.not-toggle,
.not-dropdown a,
.dropdown-toggle a {
	background: none;
	border: none;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px; 
}

.dropdown-toggle {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px; 
	background: none;
	border: none;
}

.dropdown-toggle span,
.dropdown-toggle span:hover,
.dropdown-toggle::after {
	 cursor: default !important; 
}

.main-icon {
	width: 48px;
	height: 48px;
}

.dropdown-content {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	background: white;
	border: 1px solid #ccc;
	min-width: 200px;
	padding: 8px 0;
	z-index: 1000;
}

.dropdown-item.open .dropdown-content {
	display: block;
}

.dropdown-line {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 12px;
	text-decoration: none;
	color: black;
}

.dropdown-line:hover {
	background: #f0f0f0;
}

.prjdocsblock, 
#myteambargroup { height: 85px}

.prjdocsblock {
	border-left: 1px solid  silver !important;
	margin-left: 1rem;
}

#toolbar img.main-icon,
#toolbargroup img, 
#toolbar img.small-icon,
img.small-icon {
	width: auto !important;
	height: 28px !important;
}

 

.dropdown-toggle.not-toggle::after {
	display: none !important
}

.modal-content .pat-structure .navbar,
.modal-content .pat-structure.navbar  { font-size: 70%}

/* --- Transition note popup ---------------------------------------------- */
.transition-note-overlay {
  position: fixed; inset: 0; z-index: 10000;
  background: rgba(20, 30, 50, 0.55);
  display: flex; align-items: center; justify-content: center;
}
.transition-note-dialog {
  background: #fff; border-radius: 10px; padding: 24px 26px;
  width: min(440px, 92vw); box-shadow: 0 12px 40px rgba(0,0,0,0.3);
}
.transition-note-dialog .transition-note-title { margin: 0 0 14px; font-size: 1.2rem; }
.transition-note-dialog .transition-note-label { display: block; margin-bottom: 6px; font-weight: 600; }
.transition-note-dialog .transition-note-required { font-weight: 400; color: #a4620f; }
.transition-note-dialog textarea { width: 100%; box-sizing: border-box; margin-bottom: 16px; }
.transition-note-dialog .transition-note-buttons { display: flex; justify-content: flex-end; gap: 10px; }

/* Standalone (no-JS) fallback page: keep the form compact */
.transition-note-wrapper .transition-note-form { max-width: 480px; }
.transition-note-wrapper textarea { width: 100%; box-sizing: border-box; margin-bottom: 16px; }
.transition-note-wrapper .transition-note-buttons { display: flex; gap: 10px; }

/* --- Assign popup ---------------------------------------------------------
   Reuses the transition-note dialog shell; only the extra furniture the
   Assign step needs is new. The rejection banner takes the amber the
   required-marker already uses, so no colour is introduced. */
.assign-form-sub { margin: -6px 0 14px; font-size: .82rem; color: #7a736c; line-height: 1.45; }
.assign-form-hint { display: block; font-size: .76rem; color: #8a837c; margin: -2px 0 6px; line-height: 1.4; }
.assign-form select { width: 100%; box-sizing: border-box; margin-bottom: 14px; }
.assign-form select[multiple] { min-height: 108px; }

/* The "other people" picker (enhanceMultiSelect in action_items.js). The
   <select multiple> it replaces is hidden, not removed - it is still what the
   browser submits - so these rules dress our own control instead. The list
   renders inside the form rather than on <body>, which is why the popup can
   use <dialog> and needs no z-index games. */
.docent-picker { position: relative; margin-bottom: 14px; }
.docent-picker-box {
  display: flex; flex-wrap: wrap; gap: 5px; align-items: center;
  min-height: 38px; padding: 5px 8px; box-sizing: border-box;
  background: #fff; border: 1px solid #b9b2aa; border-radius: 5px;
  cursor: text;
}
.docent-picker-box:focus-within { border-color: #a4620f; outline: 2px solid #FCF3E4; }
.docent-picker-chips { display: contents; }
.docent-picker-chip {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 2px 6px 2px 9px; border-radius: 12px;
  background: #F1ECE6; border: 1px solid #d8d0c6;
  font-size: .8rem; line-height: 1.5; white-space: nowrap;
}
.docent-picker-chip-remove {
  border: 0; background: none; padding: 0; cursor: pointer;
  font-size: 1rem; line-height: 1; color: #7a736c;
}
.docent-picker-chip-remove:hover { color: #a4620f; }
.docent-picker-search {
  flex: 1 1 7em; min-width: 7em;
  border: 0; outline: 0; padding: 3px 2px; font-size: .85rem; background: none;
}
.docent-picker-list {
  position: absolute; left: 0; right: 0; top: calc(100% + 3px); z-index: 5;
  max-height: 190px; overflow-y: auto;
  background: #fff; border: 1px solid #b9b2aa; border-radius: 5px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, .13);
}
.docent-picker-list.is-empty::after {
  content: "No one matches that name.";
  display: block; padding: 9px 11px; font-size: .8rem; color: #8a837c;
}
.docent-picker-option {
  display: block; width: 100%; text-align: left;
  padding: 7px 11px; border: 0; background: none; cursor: pointer;
  font-size: .85rem; line-height: 1.4; color: inherit;
}
.docent-picker-option:hover { background: #F1ECE6; }
/* Already chosen: still listed, so clicking it again takes it back off. */
.docent-picker-option.is-chosen { color: #7a736c; }
.docent-picker-option.is-chosen::before { content: "\2713\00a0"; color: #a4620f; }
.assign-form textarea { width: 100%; box-sizing: border-box; margin-bottom: 16px; }
.assign-rejection {
  background: #FCF3E4; border: 1px solid #a4620f; border-radius: 7px;
  padding: 9px 12px; margin: 0 0 14px; font-size: .82rem; line-height: 1.5; color: #5c5751;
}
.assign-rejection strong { color: #a4620f; }
body.docent-dark .assign-rejection { background: #2b2318; color: #b5ada4; }

/* Native <dialog> variant of the transition note popup */
dialog.transition-note-dialog { border: none; }
dialog.transition-note-dialog::backdrop { background: rgba(20, 30, 50, 0.55); }

/* =====================================================================
   Signal table — status atoms for the Action Items overview.
   These style KNOWN field types (review_state / state, priority,
   stoplight) wherever they appear as a configured column, plus a
   column-independent stoplight stripe on the row's first cell. The set
   of columns itself stays admin-configurable (table_columns registry).
   ===================================================================== */

/* (Row stoplight stripe removed — the dedicated status-dot column now carries
   the stoplight color; see .ai-col-dot below.) */

/* Workflow state pill */
.ai-state {
  display: inline-block;
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1.4;
  padding: 2px 9px;
  border-radius: 999px;
  white-space: nowrap;
  border: 1px solid transparent;
  background: #F4F1EC;
  color: #6b635c;
  border-color: #DFD9D1;
}
/* The state ramp. It reads left to right through the workflow: warm grey
   while nothing has happened, then a deepening teal for the three states
   where the task is in somebody's hands, then green for done, then back to
   grey once it is filed. Red is the one exception, because a rejection is
   the one thing you want to spot without reading.

   These are the same colours the workflow diagram in
   note_required_transitions.pt paints its boxes with, so a state looks the
   same wherever it is drawn. Change one, change both. */
.ai-state-created   { background: #F4F1EC; color: #6b635c; border-color: #DFD9D1; }
.ai-state-submitted { background: #F1F7F9; color: #2F7A8A; border-color: #CFE3E8; }
.ai-state-assigned  { background: #EAF4F6; color: #1F5F6E; border-color: #BAD8DE; }
.ai-state-accepted  { background: #E7F1F3; color: #17505d; border-color: #B3D2D9; }
.ai-state-completed { background: #e5f5ec; color: #2f9e57; border-color: #bfe6cd; }
.ai-state-rejected  { background: #fde8e8; color: #d23b3b; border-color: #f4cccc; }
.ai-state-closed    { background: #F0EDE8; color: #6b635c; border-color: #DFD9D1; }
.ai-state-archived  { background: #EAE6E0; color: #7a736c; border-color: #DFD9D1; }
.ai-state-published { background: #EAF4F6; color: #1F5F6E; border-color: #BAD8DE; }

/* Priority chip */
.ai-prio {
  font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  font-size: 11px;
  font-weight: 700;
  padding: 1px 6px;
  border-radius: 5px;
  border: 1px solid;
  white-space: nowrap;
}
.ai-prio-1 { color: #d23b3b; border-color: #d23b3b; background: #fde8e8; }
.ai-prio-2 { color: #c98a12; border-color: #c98a12; background: #fdf3dc; }
.ai-prio-3 { color: #2f9e57; border-color: #2f9e57; background: #e5f5ec; }

/* Stoplight dot (only when a 'stoplight' column is configured) */
.ai-dot { width: 10px; height: 10px; border-radius: 50%; display: inline-block;
  vertical-align: middle; margin-right: 6px; }
.ai-dot-red    { background: #d23b3b; }
.ai-dot-yellow { background: #c98a12; }
.ai-dot-green  { background: #2f9e57; }
.ai-sl-label { font-size: 12.5px; color: #6b635c; vertical-align: middle; }

/* =====================================================================
   Tasks list — toolbar + relocated DataTables controls (signal table).
   The search box is moved into .ai-tt-right; the length menu drops to
   the bottom beside the info text; pagination is hidden on a single page.
   ===================================================================== */

.ai-tasks-toolbar {
  display: flex; align-items: center; justify-content: space-between;
  gap: 14px; flex-wrap: wrap;
  padding: 6px 2px 14px; margin-bottom: 10px;
  border-bottom: 1px solid #E6E3DD;
}
.ai-tasks-toolbar .ai-tt-title { font-size: 16px; font-weight: 700; color: #1a2231; letter-spacing: -.01em; }
.ai-tasks-toolbar .ai-tt-right { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }

/* The teal, not the maroon, and light rather than solid.

   Two problems were fixed here in sequence. It was a mid blue matching no
   palette; then a solid #64041f, which fixed the colour and made a filled
   dark block the heaviest thing on a page whose whole point is restraint.
   Then a maroon tint, which was quiet enough but left maroon doing five
   jobs at once - the eyebrow, the accent bar, the column titles, the
   active chip AND the button. A colour that means everything means
   nothing.

   So maroon keeps the structure and the action takes the teal, which is
   already drawn on the footer rule. Nothing new is introduced; the two
   brand colours simply divide the work. Still the only control in the
   toolbar with a fill, so it still reads as primary - it just no longer
   competes with the page's own identity. */
.ai-tt-create {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 13px; font-weight: 600; color: #1F5F6E !important;
  background: #EAF4F6; border: 1px solid #BAD8DE; border-radius: 999px;
  padding: 8px 16px; text-decoration: none; white-space: nowrap;
  box-shadow: none !important;
}
.ai-tt-create:hover {
  background: #DCEDF1; border-color: #3A9FB5; color: #17505D !important;
  text-decoration: none;
}
body.docent-dark .ai-tt-create {
  color: #9fd0da !important; background: #16262b; border-color: #34565f;
}
body.docent-dark .ai-tt-create:hover {
  background: #1c3038; border-color: #4d7f8c; color: #c2e3ea !important;
}
.ai-tt-create .ai-tt-plus { font-size: 15px; line-height: 1; font-weight: 700; }

/* The toolbar's secondary actions - Team's Notify and Send Email - beside
   .ai-tt-create rather than inside one template, so a new page that wants
   them only has to use the class. Outlined, not filled: the maroon fill
   is the Create button's, and these are not the primary action on a page
   - they mean nothing until a row is ticked.

   The !important flags are not decoration. The theme paints every button
   inside #content-core a bright coral, rings it in a 2px coral inset
   box-shadow and shouts the label in capitals, so the buttons read as
   alarms. The box-shadow is the one worth knowing: it looks exactly like
   a red border and survives setting border-color, because it is not the
   border. */
#content-core .ai-tt-action,
#content .ai-tt-action,
.ai-tt-action {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 13px; font-weight: 600;
  color: #64041f !important; background: #fff;
  border: 1px solid #d9c2c8; border-radius: 8px;
  padding: 0 14px; white-space: nowrap; cursor: pointer;
  text-transform: none !important; letter-spacing: normal;
  box-shadow: none !important;
  /* The Create button next to these is 39px tall, and a toolbar whose
     buttons disagree makes the whole table sit lower on this page than
     on every other listing. Left to itself this one came out 46: the
     theme inflates a button's line box in a way that survives setting
     line-height, and the icon is a flex item of its own on top of that.
     Stating the height settles it by construction - the padding is
     horizontal only, because align-items does the centring. */
  height: 39px; box-sizing: border-box;
}
#content-core .ai-tt-action:hover:not(:disabled),
#content .ai-tt-action:hover:not(:disabled) {
  background: #fbf4f6; border-color: #64041f;
}
#content-core .ai-tt-action:disabled,
#content .ai-tt-action:disabled {
  color: #9aa3b2 !important; border-color: #E6E3DD;
  cursor: not-allowed; opacity: .8;
}
#content-core .ai-tt-action .image22,
#content .ai-tt-action .image22 { height: 18px !important; width: auto; }

body.docent-dark #content-core .ai-tt-action,
body.docent-dark #content .ai-tt-action {
  color: #e8c4ce !important; background: #1c2029; border-color: #4a3239;
}
body.docent-dark #content-core .ai-tt-action:disabled,
body.docent-dark #content .ai-tt-action:disabled {
  color: #6d7683 !important; border-color: #2c313c;
}

/* Relocated search box (now inside the toolbar) */
.ai-tt-right .dt-search, .ai-tt-right .dataTables_filter { margin: 0; }
.ai-tt-right .dt-search label, .ai-tt-right .dataTables_filter label { font-size: 0; margin: 0; }
.ai-tt-right .dt-search input, .ai-tt-right .dataTables_filter input {
  border: 1px solid #DFD9D1; border-radius: 8px; padding: 7px 11px;
  font-size: 13px; min-width: 210px; margin: 0;
}
.ai-tt-right .dt-search input:focus, .ai-tt-right .dataTables_filter input:focus {
  outline: none; border-color: #1F5F6E; box-shadow: 0 0 0 3px rgba(31,95,110,.12);
}

/* Length menu, now at the bottom next to the info text */
.dt-length, .dataTables_length { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: #8a837c; }
.dt-length select, .dataTables_length select {
  border: 1px solid #DFD9D1; border-radius: 6px; padding: 3px 22px 3px 8px; font-size: 12.5px;
}
.dt-info, .dataTables_info { font-size: 12.5px; color: #8a837c; padding-top: 8px; }

/* "Entries per page" sits bottom right, in the pager's cell, with the
   pager to its right when there is more than one page; the row count
   stays bottom left. Every listing the same (2026-09-09). The templates'
   relocate() puts it there; this lays the cell out. */
.dt-container .dt-layout-cell.dt-layout-end {
  display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 14px;
}
.dt-layout-cell.dt-layout-end .dt-length { padding-top: 8px; }
.dataTables_wrapper .dataTables_length { float: right; padding-top: 8px; }

/* Pagination: minimal + borderless. DataTables 2.x renders each page as
   <li class="dt-paging-button page-item"><button class="page-link">N</button>,
   so the button (.page-link) is what must be styled — the old rules targeted
   the <li> and left Bootstrap's boxed .page-link showing through. */
.dt-paging ul.pagination, .dataTables_paginate ul.pagination {
  display: flex; flex-wrap: wrap; gap: 4px; margin: 8px 0 0; padding: 0; list-style: none;
}
.dt-paging .page-item .page-link,
.dt-paging .dt-paging-button,
.dataTables_paginate .paginate_button {
  border: 0 none !important; background: transparent !important; box-shadow: none !important;
  border-radius: 6px !important; color: #64041f !important;
  padding: 4px 10px !important; margin: 0 !important; min-width: 30px;
  font-size: 13px !important; line-height: 1.5 !important; cursor: pointer;
}
.dt-paging .page-item.active .page-link,
.dataTables_paginate .paginate_button.current {
  background: #64041f !important; color: #fff !important;
}
.dt-paging .page-item:not(.active):not(.disabled) .page-link:hover {
  background: #FBF4F6 !important;
}
.dt-paging .page-item.disabled .page-link,
.dataTables_paginate .paginate_button.disabled { opacity: .4; cursor: default; }
/* Drop the first («) and last (») jump buttons — prev/next is enough. */
.dt-paging .page-link.first, .dt-paging .page-link.last { display: none !important; }
.dt-paging .page-item:has(> .page-link.first),
.dt-paging .page-item:has(> .page-link.last) { display: none !important; }

/* =====================================================================
   Tasks list — fixed leading columns, lighter header, owner avatar,
   filter chips, and the Workflow Board / Triage Lane tabs.
   ===================================================================== */

/* The listing table header, for every list in the product.

   The colour is the page's own warm ground, lightened - the same family
   as the cream heading band. It replaced a blue-grey belonging to no
   palette, and then a Docent aqua tint which, being a teal, still read
   as light blue to everyone who looked at it. Warm is the point: no
   amount of explaining that aqua is a brand colour makes a blue-looking
   bar stop looking blue.

   .ai-th is in the list because six templates used to repeat this same
   header as an inline style attribute on each of 39 <th>s. Inline styles
   are out of reach of a stylesheet, so those headers could not follow the
   theme and their colour could only be changed by hand, 39 times. They
   carry the class now and the colour lives here, once.

   thead / tr / th are all covered, and the background image killed, so
   the tint always wins over whatever DataTables or the theme paints. */
/* The #content prefix is not decoration. On a tenant the theme's own
   stylesheet loads AFTER this one and paints the header a heavy dark
   navy; a plain `table.listing thead th` here, !important and all, loses
   to it. Until now the inline style attributes on each <th> were what
   actually won - being inline, they outrank any stylesheet - so removing
   them handed the header back to the theme, which is what put the dark
   bar back on every listing. An id in the selector wins on specificity
   instead, whatever the load order. Same battle, same answer, as the
   attachments table further down. */
html body #content table.pat-datatables thead,
html body #content table.pat-datatables thead tr,
html body #content table.pat-datatables thead th,
html body #content table.pat-datatables.dataTable thead th,
html body #content table.listing thead,
html body #content table.listing thead tr,
html body #content table.listing thead th,
html body #content table thead th.ai-th,
html body #content th.ai-th,
table.pat-datatables thead,
table.pat-datatables thead tr,
table.pat-datatables thead th,
table.pat-datatables.dataTable thead th,
table.listing thead,
table.listing thead tr,
table.listing thead th,
.ai-th {
  /* No fill. A grey bar is the most Bootstrap-looking thing a table can
     wear; a hairline under letterspaced small caps is what a printed
     table does, and it is what the new direction asks for. This replaces
     the warm stone fill, which was only ever the answer to "not blue" -
     and this is a better answer to the same question. */
  background: transparent !important;
  background-image: none !important;
  color: #5A0A22 !important;
  /* 11.5/700, up from 10/600. At 10px the heading was lighter than the
     data under it, so on a long table the column names stopped competing
     with the rows and simply receded.

     The tracking comes IN as the size goes up, from .15em to .11em. Wide
     letterspacing is what makes 10px caps legible at all; carry it
     unchanged to a larger size and the same setting reads as shouting.
     The two values move together - a later change to one wants the
     other looked at. */
  font-weight: 700 !important;
  font-size: 11.5px !important;
  letter-spacing: .11em;
  text-transform: uppercase;
  padding-bottom: 11px !important;
  border-bottom: 1px solid #E6E3DD !important;
  border-top: none !important;
  text-shadow: none !important;
}

/* The same header in the dark. Without this the tint is a bright bar
   across a dark page - which is what every listing but Alerts had. */
html body.docent-dark #content table.pat-datatables thead,
html body.docent-dark #content table.pat-datatables thead tr,
html body.docent-dark #content table.pat-datatables thead th,
html body.docent-dark #content table.pat-datatables.dataTable thead th,
html body.docent-dark #content table.listing thead,
html body.docent-dark #content table.listing thead tr,
html body.docent-dark #content table.listing thead th,
html body.docent-dark #content table thead th.ai-th,
html body.docent-dark #content th.ai-th,
body.docent-dark table.pat-datatables thead,
body.docent-dark table.pat-datatables thead tr,
body.docent-dark table.pat-datatables thead th,
body.docent-dark table.pat-datatables.dataTable thead th,
body.docent-dark table.listing thead,
body.docent-dark table.listing thead tr,
body.docent-dark table.listing thead th,
body.docent-dark .ai-th {
  background: transparent !important;
  color: #C9A9B4 !important;
  border-bottom-color: #3A3430 !important;
}

/* Fixed leading columns: status dot, ID, Title */
.ai-col-dot { width: 24px; text-align: center; padding-left: 10px !important; padding-right: 4px !important; }
.ai-col-id  { width: 1%; white-space: nowrap; font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  font-variant-numeric: tabular-nums; color: #8a837c; }
.ai-col-title b { font-weight: 600; }
.ai-col-title a { text-decoration: none; }
.ai-col-title a:hover b { text-decoration: underline; }

/* Status dot (first column), keyed off stoplight (due / days-left) */
.ai-dot { width: 11px; height: 11px; border-radius: 50%; display: inline-block; vertical-align: middle; }
.ai-dot-red    { background: #d23b3b; }
.ai-dot-yellow { background: #c98a12; }
.ai-dot-green  { background: #2f9e57; }

/* Responsible person: avatar circle + last name only */
.ai-owner { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.ai-owner-name { font-size: 13px; }
.ai-av {
  width: 24px; height: 24px; border-radius: 50%;
  background: #64041f; color: #fff; flex: none;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 10px; font-weight: 700; letter-spacing: .02em; text-transform: uppercase;
}

/* Filter chips (All / Mine / Urgent / Open only) */
.ai-tt-left { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.ai-filters { display: inline-flex; gap: 6px; flex-wrap: wrap; }
/* Filter chips.

   They are pills and the List / Board switch to their right is a boxed
   segment, on purpose: chips change what is in the list, the switch
   changes how the list is drawn. Two controls that look alike would be
   worse than two that look different.

   Unfilled at rest, so a row of six chips is a row of outlines rather
   than six grey lozenges, and the one that is on is the only one wearing
   colour. The fill and the stock blue that used to be here went with the
   rest of the palette-less blue - the same one taken out of the table
   headers and the Create button. */
.ai-chip {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 12.5px; font-weight: 600; color: #7a736c;
  background: transparent; border: 1px solid #DFD9D1; border-radius: 999px;
  padding: 4px 12px; cursor: pointer; line-height: 1.4;
  text-decoration: none;
}
.ai-chip-ic { width: 12px; height: 12px; flex: none; opacity: .55; }
.ai-chip:hover .ai-chip-ic { opacity: .8; }
.ai-chip.active .ai-chip-ic { opacity: 1; }
.ai-chip:hover { border-color: #C9BFB4; color: #4a443f; text-decoration: none; }
.ai-chip.active { color: #64041f; background: #FBF4F6; border-color: #C9A9B4; }
.ai-chip.active:hover { border-color: #64041f; color: #64041f; }

/* The same in the dark. Without this the chips are outlines nobody can
   see and the active one is a pink smudge.

   !important because a chip is an <a>, and the dark theme colours every
   link #bcd2ff - which would make the whole row look active. */
body.docent-dark .ai-chip {
  color: #9aa3b2 !important; border-color: #3a3f4a !important;
  background: transparent !important;
}
body.docent-dark .ai-chip:hover {
  color: #d2d8e2 !important; border-color: #55606f !important;
}
body.docent-dark .ai-chip.active {
  color: #e8c4ce !important; background: #241a1e !important;
  border-color: #6b4450 !important;
}

/* ---------- Workflow Board ----------
   Reached by the List / Board switch in the Tasks toolbar rather than by
   a tab of its own, so it has to look like the same page in another
   shape: the same warm stone, the same hairlines, and column heads set
   like the table's column heads. The only colour is the stoplight stripe
   down the left of a card, which is the one thing on it that means
   something. */
.ai-board-caption { color: #8a837c; font-size: 13px; margin: 4px 0 14px; }
.ai-board { display: flex; gap: 14px; overflow-x: auto; padding-bottom: 8px; }
.ai-col {
  flex: 0 0 230px; background: #FAF8F5; border: 1px solid #E6E3DD; border-radius: 10px;
  display: flex; flex-direction: column; max-height: 560px;
}
.ai-colhead {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  padding: 10px 12px; border-bottom: 1px solid #E6E3DD;
}
.ai-cname {
  font-size: 10px; font-weight: 700; color: #5A0A22;
  text-transform: uppercase; letter-spacing: .15em;
}
.ai-cnt {
  font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 11px; color: #8a837c;
  background: #fff; border: 1px solid #DFD9D1; border-radius: 999px; padding: 0 7px;
}
.ai-colbody { padding: 10px; display: flex; flex-direction: column; gap: 10px; overflow-y: auto; }
.ai-card {
  display: block; text-decoration: none; color: inherit;
  background: #fff; border: 1px solid #E6E3DD; border-left: 3px solid #DFD9D1;
  border-radius: 8px; padding: 10px 11px;
  box-shadow: 0 1px 2px rgba(60,45,40,.05);
}
.ai-card:hover { border-color: #d9c2c8; box-shadow: 0 3px 10px rgba(60,45,40,.10); }
.ai-card.ai-cl-red    { border-left-color: #d23b3b; }
.ai-card.ai-cl-yellow { border-left-color: #c98a12; }
.ai-card.ai-cl-green  { border-left-color: #2f9e57; }
.ai-ct { font-size: 13px; font-weight: 600; line-height: 1.35; margin-bottom: 8px; color: #2b2724; }
.ai-cmeta { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.ai-cid { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 10.5px; color: #8a837c; }
.ai-empty { color: #b5aea6; font-size: 12px; text-align: center; padding: 8px 0; margin: 0; }

body.docent-dark .ai-board-caption { color: #9aa3b2; }
body.docent-dark .ai-col { background: #171c24; border-color: #333b47; }
body.docent-dark .ai-colhead { border-bottom-color: #333b47; }
body.docent-dark .ai-cname { color: #e8c4ce; }
body.docent-dark .ai-cnt { background: #1c222c; border-color: #3a4250; color: #9aa3b2; }
body.docent-dark .ai-card {
  background: #1c222c; border-color: #333b47; border-left-color: #3a4250;
  box-shadow: none;
}
body.docent-dark .ai-card:hover { border-color: #4a3239; }
body.docent-dark .ai-ct { color: #EAE6E0; }
body.docent-dark .ai-cid { color: #9aa3b2; }
body.docent-dark .ai-empty { color: #5b6474; }

/* The Triage Lane styles (.ai-lanes, .ai-lane, .ai-mini and friends) were
   here. The tab is gone - it grouped tasks by urgency, which the Urgent
   chip on the same page and the urgency rows on the dashboard already do
   - and nothing renders that markup any more. */

/* Sliders filter icon relocated into the toolbar, left of the search box */
.ai-tt-right .ai-filter-btn {
  background: none; border: none; padding: 2px 4px; margin: 0;
  cursor: pointer; line-height: 0; opacity: .7;
}
.ai-tt-right .ai-filter-btn:hover { opacity: 1; }
.ai-tt-right .ai-filter-btn img { width: 22px !important; height: 22px !important; }

/* Collection-filter widget, relocated into the toolbar next to search and compacted */
.ai-tt-right .ai-compact-filter {
  margin: 0 !important; padding: 0 !important; border: none !important;
  box-shadow: none !important; background: none !important; max-width: 220px;
}
.ai-tt-right .ai-compact-filter .portletHeader,
.ai-tt-right .ai-compact-filter .card-header,
.ai-tt-right .ai-compact-filter .portletFooter { display: none !important; }
.ai-tt-right .ai-compact-filter .card-body,
.ai-tt-right .ai-compact-filter .filterContent,
.ai-tt-right .ai-compact-filter .portletContent { padding: 0 !important; margin: 0 !important; }
.ai-tt-right .ai-compact-filter select {
  border: 1px solid #DFD9D1; border-radius: 8px; padding: 7px 11px; font-size: 13px;
}

/* Meeting Doc + Project Docs launchers: show an explicit down-caret so it's
   clear the box is a pulldown (same triangle look as the Prj Mtgs toggle). */
#meeting_doc_select,
#project_doc_select,
#manager_doc_select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23333'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 9px center;
  background-size: 9px 6px;
  padding-right: 26px !important;
  min-width: 178px !important;
}
/* Toolbar Meeting Doc + Project Doc boxes: equal size, 20% shorter (178→142). */
#meeting_doc_select,
#project_doc_select {
  min-width: 142px !important;
  max-width: 142px !important;
  width: 142px !important;
}

/* Template-manager popup (opened by the ribbon Templates icon) */
.tpl-overlay {
  position: fixed; inset: 0; background: rgba(20, 28, 42, .45);
  display: flex; align-items: flex-start; justify-content: center;
  z-index: 100000; padding: 14vh 16px;
}
.tpl-box {
  background: #fff; width: 100%; max-width: 380px; border-radius: 4px;
  box-shadow: 0 14px 44px rgba(0, 0, 0, .32); overflow: hidden;
  border: 1px solid #b4b4b4;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.tpl-titlebar {
  display: flex; align-items: center; justify-content: space-between;
  background: #eceae5; border-bottom: 1px solid #cfccc4;
  padding: 5px 10px; font-size: 13px; color: #333; font-weight: 600;
}
.tpl-close { background: transparent; border: 0; font-size: 18px; line-height: 1; cursor: pointer; color: #555; }
.tpl-header {
  display: flex; align-items: center; gap: 12px;
  background: #efe9da; padding: 12px 14px; border-bottom: 1px solid #e2dac6;
}
.tpl-logo { height: 42px; width: auto; flex: none; }
.tpl-htext { display: flex; flex-direction: column; line-height: 1.2; }
.tpl-sys { font-size: 15px; color: #8a8a8a; font-weight: 600; }
.tpl-proj { font-size: 15px; color: #8a1c2b; font-weight: 700; }
.tpl-body { padding: 16px 14px; display: flex; align-items: center; gap: 10px; }
.tpl-body select {
  flex: 1 1 auto; min-width: 0; border: 1px solid #DFD9D1; border-radius: 4px;
  padding: 6px 9px; font-size: 13px; background: #fff;
}
.tpl-edit, .tpl-open {
  display: inline-block; padding: 6px 16px; background: #ececec;
  border: 1px solid #b4b4b4; border-radius: 4px; color: #333 !important;
  text-decoration: none; font-size: 13px; white-space: nowrap; flex: none;
}
.tpl-edit:hover, .tpl-open:hover { background: #e0e0e0; text-decoration: none; color: #333 !important; }
.tpl-edit.greyed, .tpl-open.greyed { opacity: .4; }

/* Prj Docs "Open Doc" popup (website list of docs of a document type) */
.doclist-overlay {
  position: fixed; inset: 0; background: rgba(20, 28, 42, .45);
  display: flex; align-items: flex-start; justify-content: center;
  z-index: 100000; padding: 8vh 16px;
}
.doclist-box {
  background: #fff; width: 100%; max-width: 560px; border-radius: 10px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, .28); overflow: hidden;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.doclist-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 12px 16px; background: #2F7A8A; color: #fff; font-weight: 600; font-size: 15px;
}
.doclist-close {
  background: transparent; border: 0; color: #fff; font-size: 22px; line-height: 1; cursor: pointer;
}
.doclist-content { padding: 8px 16px 18px; max-height: 60vh; overflow: auto; }
.doclist-table { width: 100%; border-collapse: collapse; }
.doclist-table th {
  text-align: left; font-size: 11.5px; text-transform: uppercase; letter-spacing: .04em;
  color: #7a736c; padding: 8px 6px; border-bottom: 1px solid #e6eaf1;
}
.doclist-table td { padding: 9px 6px; border-bottom: 1px solid #f0f2f6; font-size: 14px; }
.doclist-table td.doclist-acts { white-space: nowrap; text-align: right; }
.doclist-act { display: inline-block; text-decoration: none; margin-left: 10px; }
.doclist-act img { display: inline-block; vertical-align: middle; }
.doclist-empty { color: #7a736c; padding: 18px 4px; text-align: center; }

/* Filter overlay (collectionfilter) — obvious close affordance. */
#portal-column-two.overlay { position: relative; }
.ai-filter-close {
	position: absolute; top: 6px; right: 12px;
	background: transparent !important; border: 0 !important;
	box-shadow: none !important; border-radius: 0; padding: 0;
	font-size: 18px; line-height: 1; color: #212529 !important;
	cursor: pointer; z-index: 6;
}
.ai-filter-close:hover { color: #000 !important; }
/* Filter chip highlights while the box is open, so clicking it again to close
   is obvious. */
.ai-chip.ai-filter-chip.ai-filter-open {
	background: #64041f !important; border-color: #64041f !important; color: #fff !important;
}
.ai-chip.ai-filter-chip.ai-filter-open .ai-chip-ic { opacity: 1; }

/* Reset-filter link shown as the filter-clear icon (currentColor drives the
   SVG stroke). */
.ai-reset-link { color: #8a837c !important; display: inline-flex; align-items: center;
	text-decoration: none !important; }
.ai-reset-link:hover { color: #64041f !important; }
.ai-reset-link img.ai-reset-icon { display: block; }

/* Reusable filter box (opened by the Filter chip on DataTables/card pages;
   dropdowns mirror the page's chips). Styled like the Tasks collectionfilter. */
.ai-filterbox {
	position: relative; background: #f7f8fa; border: 1px solid #E6E3DD;
	border-radius: 10px; padding: 16px 18px; margin: 0 0 12px;
}
.ai-filterbox-inner { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 18px; }
.ai-filterbox-field { display: flex; flex-direction: column; gap: 4px; }
.ai-filterbox-field label {
	font-size: 11.5px; text-transform: uppercase; letter-spacing: .04em;
	color: #7a736c; font-weight: 600;
}
.ai-filterbox-field select,
.ai-filterbox-field input {
	border: 1px solid #DFD9D1; border-radius: 7px; padding: 7px 10px;
	font-size: 13px; min-width: 160px; background: #fff;
}
.ai-filterbox-field select:focus,
.ai-filterbox-field input:focus {
	outline: none; border-color: #1F5F6E; box-shadow: 0 0 0 3px rgba(31,95,110,.12);
}
/* Reset icon sits on the input row (fields are label-over-input, so centering
   against the whole field puts it too high): bottom-align, then pad up to the
   input's vertical center. */
.ai-filterbox .ai-reset-link { align-self: flex-end; margin: 0 0 5px 4px; }
.ai-filterbox .ai-filter-close {
	position: absolute; top: 8px; right: 12px;
	background: transparent !important; border: 0 !important;
	box-shadow: none !important; border-radius: 0;
	padding: 0; font-size: 18px; line-height: 1;
	color: #212529 !important; cursor: pointer;
}
.ai-filterbox .ai-filter-close:hover { color: #000 !important; }

/* Multi-select dropdowns in the filter box. The closed button is styled to
   match the native selects it replaced (same border/padding/size); the open
   menu is a checkbox list. The !importants shield the button from the
   theme's global button styling (same trick as .ai-filter-close). */
.ai-filterbox-field .ai-multisel { position: relative; }
.ai-multisel-btn {
	display: flex; align-items: center; justify-content: space-between; gap: 8px;
	width: 100%; min-width: 160px; text-align: left; cursor: pointer;
	background: #fff !important; color: #212529 !important;
	border: 1px solid #DFD9D1 !important; border-radius: 7px;
	box-shadow: none !important; padding: 7px 10px; font-size: 13px;
	font-weight: 400; line-height: normal;
}
.ai-multisel-btn:focus {
	outline: none;
	border-color: #1F5F6E !important;
	box-shadow: 0 0 0 3px rgba(31,95,110,.12) !important;
}
.ai-multisel-btn .ai-multisel-caret { font-size: 10px; color: #7a736c; }
.ai-multisel-btn.ai-multisel-active .ai-multisel-text { color: #64041f !important; font-weight: 600; }
.ai-multisel-menu {
	display: none; position: absolute; top: calc(100% + 4px); left: 0; z-index: 1060;
	width: max-content; min-width: 0; max-width: 320px;
	max-height: 260px; overflow: auto;
	background: #fff; border: 1px solid #DFD9D1; border-radius: 7px;
	box-shadow: 0 8px 20px rgba(20,30,55,.14); padding: 4px;
}
.ai-multisel.ai-open .ai-multisel-menu { display: block; }
/* Option rows. The selector carries .ai-filterbox-field + label so it beats
   the field-label rule above (uppercase/letter-spaced mini caption), which
   otherwise restyles and stretches these rows into a wide two-column look. */
.ai-multisel-opt,
.ai-filterbox-field label.ai-multisel-opt {
	display: flex; flex-direction: row; align-items: center;
	justify-content: flex-start; gap: 7px; margin: 0;
	padding: 4px 10px 4px 7px; border-radius: 5px;
	font-size: 13px; font-weight: 400; text-transform: none;
	letter-spacing: normal; line-height: 1.4;
	cursor: pointer; white-space: nowrap; color: #212529;
}
.ai-multisel-opt span,
.ai-filterbox-field label.ai-multisel-opt span {
	flex: 0 0 auto; margin: 0; text-align: left;
}
.ai-multisel-opt:hover { background: #FBF4F6; }
/* "(Select all)" row: separated from the values below it. */
.ai-multisel-allrow,
.ai-filterbox-field label.ai-multisel-allrow {
	border-bottom: 1px solid #E6E3DD; border-radius: 5px 5px 0 0;
	margin-bottom: 3px; padding-bottom: 6px; color: #7a736c;
}
/* The theme's global form styling hides/restyles bare checkboxes — force a
   real, visible native checkbox no matter what it does. */
.ai-multisel-opt input[type="checkbox"] {
	-webkit-appearance: checkbox !important; appearance: auto !important;
	display: inline-block !important; opacity: 1 !important;
	position: static !important; visibility: visible !important;
	width: 15px !important; height: 15px !important;
	margin: 0 !important; padding: 0 !important; flex: none;
	accent-color: #64041f;
	clip: auto !important; clip-path: none !important;
}

/* ====================================================================
   Force the entire site to Inter. Weights and italics are preserved —
   only the font FAMILY changes. Icon fonts (Font Awesome, glyphicons,
   FullCalendar) and monospace code are excluded so icons render and
   code/IDs stay aligned. Inter is embedded (base64) so it works offline
   and survives Plone bundle compilation (no external/relative URL).
   ==================================================================== */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2');}
@font-face{font-family:'Inter';font-style:italic;font-weight:100 900;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2');}
:root{
  --bs-body-font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;
  --bs-font-sans-serif:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;
  --plone-toolbar-font:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;
}
html,body{font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;}
/* Everything gets Inter, except icon fonts and monospace code. */
body *:not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fad):not([class*="fa-"]):not([class*="glyphicon"]):not(.fc-icon):not([class*="material-icons"]):not(code):not(pre):not(kbd):not(samp):not(tt):not(.text-monospace):not([class*="monospace"]){
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;
}
/* Keep code / IDs in a monospace so columns of numbers stay aligned. */
code,pre,kbd,samp,tt,.text-monospace,[class*="monospace"]{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Courier New",monospace !important;
}

/* ====================================================================
   Embed mode (?embed=1): hide the site chrome so a page can be shown on
   its own inside a small window/pane (e.g. the Tasks page loaded inside
   Word via a WebView / Edge app window). Only the content column shows,
   full-width, with tight padding for a narrow pane. Toggled by the
   `ai-embed` class that action_items.js adds to <html> when embed=1.
   ==================================================================== */
html.ai-embed #portal-header,
html.ai-embed #portal-logo,
html.ai-embed #portal-top,
html.ai-embed #mainnavigation-wrapper,
html.ai-embed #portal-breadcrumbs,
html.ai-embed #portal-footer-wrapper,
html.ai-embed #portal-footer,
html.ai-embed #portal-column-one,
html.ai-embed #portal-column-two,
html.ai-embed #edit-zone,
html.ai-embed .plone-toolbar-container,
html.ai-embed #toolbar,
html.ai-embed #portal-anontools,
html.ai-embed .link-parent,
html.ai-embed .documentActions {
	display: none !important;
}
html.ai-embed, html.ai-embed body {
	/* Match the main site's page background (body { background: #FAFAF9 })
	   so the pane doesn't read as a different, brighter app. */
	background: #FAFAF9 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* The page starts with the project name. #content-header carries the project
   -name eyebrow (#portal-logo-wrapper > p > a.logo > strong, styled by the
   toolbar viewlet), so it stays visible in embed mode — only the Docent logo
   image (#portal-logo) and #portal-top are hidden above. Tighten the spacing
   for a narrow pane, and keep the header flush with the top edge. */
html.ai-embed #content-header {
	display: block !important;
	margin: 0 !important;
	/* line the eyebrow up with the content column's 10px gutter */
	padding: 8px 10px 6px !important;
	border-bottom: 0 none !important;
	min-height: 0 !important;
	background: transparent !important;
}
html.ai-embed #content-header #portal-logo-wrapper {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
}
/* The eyebrow links to the site root. In a chrome-less pane there is no back
   button or address bar, so a stray click would strand the user on the front
   page — show it as a label, not a link. */
html.ai-embed #content-header a.logo {
	pointer-events: none !important;
	cursor: default !important;
}
/* On the full site the content block is pulled up ~0.5in to tuck under the
   toolbar. The toolbar is hidden here, so that pull-up would drag the content
   over the project name — cancel it. */
html.ai-embed #above-content-wrapper {
	margin-top: 0 !important;
}
html.ai-embed #main-container,
html.ai-embed #portal-columns,
html.ai-embed #portal-column-content,
html.ai-embed .container,
html.ai-embed .row {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	flex: 0 0 100% !important;
}
html.ai-embed #portal-column-content { padding: 6px 10px !important; }
html.ai-embed #content { margin: 0 !important; }
/* The Tasks page pads a big gap down under the (now-hidden) ribbon; reclaim it. */
html.ai-embed #content-core > hr:first-child { display: none !important; }
html.ai-embed #ai-tasks-pane { padding-top: 0 !important; }

/* ====================================================================
   Anonymous "Log in" landing page tweaks. Scoped to userrole-anonymous
   so the LOGGED-IN front page (same template) is left untouched.
   ==================================================================== */
/* 1) Hide the redundant "Home" breadcrumb. */
body.userrole-anonymous.template-front-page-view #portal-breadcrumbs { display: none !important; }
/* 2) "Please Log in" button -> reads "Log in", Docent teal (#47a3b6). */
#portal-anontools li a { background: #47a3b6 !important; }
body.userrole-anonymous #personaltools-login { font-size: 0 !important; }
body.userrole-anonymous #personaltools-login::after {
	content: "Log in";
	font-size: 15px !important;
}
/* 3) Recolor the underline beneath the "The Revere Beach Project" wordmark
      to the same Docent teal. The line is the 5px border-bottom on #header
      itself (theme custom.scss) — NOT on strong/.logo — so target #header.
      Two-id selector + !important beats the theme's single-id rule. */
body.userrole-anonymous.template-front-page-view #content-header #header,
body.userrole-anonymous.template-front-page-view #header {
	border-bottom-color: #47a3b6 !important;
}

/* ====================================================================
   Action Item detail page — facts rail + quiet action row.
   The description keeps the main column; the facts that used to sit in
   the yellow alert box (owner, dates, priority) move to a rail on the
   right. Urgency is a 3px top edge plus one number instead of the 5px
   calendar sheet.
   ==================================================================== */
/* The detail rail's width and the gap beside it. Named because two things
   depend on them: the grid below, and .ai-headrow, whose action row has to
   stop where the main column stops rather than where the card stops. Three
   copies of 230px would drift; one cannot. */
:root {
	--ai-rail-w: 230px;
	--ai-cols-gap: 28px;
}

.ai-cols {
	display: grid;
	grid-template-columns: minmax(0, 1fr) var(--ai-rail-w);
	gap: var(--ai-cols-gap);
	align-items: start;
}

@media (max-width: 767px) {
	.ai-cols {
		grid-template-columns: minmax(0, 1fr);
	}
}

.ai-main {
	min-width: 0;
}

.ai-rail {
	border: 1px solid #ddd6d4;
	border-top: 3px solid #123456;
	border-radius: 3px;
	background: #fff;
	font-size: 0.9rem;
	line-height: 1.45;
}

/* Urgency drives only the top edge and the number. The class names come
   from view.get_css_urgency(); the two-class selector beats the plain
   .urgent_red { border-color } rules further up this file. */
.ai-rail.urgent_red { border-top-color: red }
.ai-rail.soon_yellow { border-top-color: orange }
.ai-rail.future_green { border-top-color: green }
.ai-rail.long_grey { border-top-color: #123456 }

.ai-rail-hd {
	display: flex;
	align-items: baseline;
	gap: 7px;
	padding: 9px 13px;
	border-bottom: 1px solid #ddd6d4;
	background: #f6f4f3;
}

.ai-rail-num {
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1;
	font-variant-numeric: tabular-nums;
	color: #123456;
}

.ai-rail.urgent_red .ai-rail-num { color: red }
.ai-rail.soon_yellow .ai-rail-num { color: #d97a00 }
.ai-rail.future_green .ai-rail-num { color: green }

.ai-rail-hd span {
	font-size: 0.78rem;
	color: #4a4344;
}

.ai-rail dl {
	margin: 0;
	padding: 12px 13px;
	display: grid;
	gap: 11px;
}

.ai-rail dt {
	font-size: 0.68rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #7c7274;
	font-weight: 700;
	margin: 0;
}

.ai-rail dd {
	margin: 2px 0 0;
	font-variant-numeric: tabular-nums;
	word-break: break-word;
}

.ai-rail-sub {
	display: block;
	font-size: 0.82rem;
	color: #7c7274;
}

/* Bottom action row: text actions with hairline icons, no boxes.
   Edit sits last and carries the project crimson — it is the only one
   of the three that changes the record. */
/* "Task - N" on the left, Calendar / Related task / Edit hard right, tops
   aligned. align-items: flex-start is what does the aligning - the lead is
   a <p> with its own line-height and the links are a shorter flex row, so
   centring them would sit the links low against the text they line up with.
   space-between rather than margin-left: auto so the lead keeps its natural
   width and can wrap without pushing the links off the edge. */
/* ============================================================
   The moves you can make, on the Workflow tab.

   This was a collapsed panel beside the task title, dressed as the detail
   rail - its own border, a 3px navy top edge, a header band, an uppercase
   label and a step strip inside it. All of that is gone: the strip drew
   the lifecycle a second time (the tab draws it from the same workflow
   just above), and the box that held it followed the reader onto tabs
   that had nothing to do with the workflow.

   What is left is the buttons, in the tab that is about them. No box of
   its own - the fieldset around it is the box.
   ============================================================ */
.ai-wf-acts { margin: 10px 0 14px; }

/* Says what the row underneath is for. Without it the buttons are a row
   of verbs with no subject, and which of them you get depends on your
   role and the state - so "possible" is doing real work. */
.ai-wf-actions-label {
	margin: 0 0 6px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: #7a736c;
}

.ai-wf-btns { display: flex; flex-wrap: wrap; gap: 7px; }

/* A move, shaped like the direction it moves in.

   Forward points right, a Return points left - the same language as the
   diagram above them, where forward arcs over the line and Returns arc
   under. Which is which comes from the workflow (workflow_panel._direction),
   so it stays true when the lifecycle gains a state.

   clip-path cuts a border off, so these carry none and say what they are
   with fill instead: the project colour for going on, neutral grey for
   going back. That is the point of the grey - Reject sends somebody's work
   back and should not look as inviting as Accept.

   Height is 10% under the old rectangle, which the shape can afford: a
   pointed end reads as a button without needing the bulk. */
.ai-wf-btn {
	display: inline-block;
	border: 0;
	border-radius: 0;
	background: #64041F;
	color: #fff;
	font-size: 0.78rem;
	font-weight: 600;
	line-height: 1;
	padding: 7.5px 14px;
	text-decoration: none;
}

.ai-wf-btn:hover, .ai-wf-btn:focus { color: #fff; text-decoration: none; }

/* Notched on the way in, pointed on the way out. */
.ai-wf-btn.ai-wf-onward {
	padding-left: 22px;
	padding-right: 24px;
	clip-path: polygon(0 0, calc(100% - 11px) 0, 100% 50%,
	                   calc(100% - 11px) 100%, 0 100%, 11px 50%);
}

/* The same shape mirrored. */
.ai-wf-btn.ai-wf-backward {
	padding-left: 24px;
	padding-right: 22px;
	background: #e9e4e6;
	color: #5d5457;
	clip-path: polygon(11px 0, 100% 0, calc(100% - 11px) 50%,
	                   100% 100%, 11px 100%, 0 50%);
}

.ai-wf-btn.ai-wf-backward:hover, .ai-wf-btn.ai-wf-backward:focus {
	background: #ded7da;
	color: #3f383a;
}


/* Nothing to do here - said in words. An empty space where buttons
   sometimes are reads as a page that failed to finish loading. */
.ai-wf-none { margin: 0; font-size: 0.78rem; color: #7c7274; }

/* "came back from Completed". Quiet: it is a footnote to the diagram
   above, not a second headline. */

/* Where the task is, beside "Task - N". Not a control and not styled like
   one: no border, no shadow, nothing to press. The panel it replaces
   carried the moves as well and looked like something you could open,
   which is exactly the confusion worth avoiding now that the moves live
   in the Workflow tab. */
.ai-state-chip {
	display: inline-block;
	margin-left: 12px;
	padding: 3px 11px;
	border-radius: 999px;
	background: #f1ecee;
	color: #64041F;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
	vertical-align: 2px;
	white-space: nowrap;
	text-decoration: none;
}

/* It is a link once the script has upgraded it - to the Workflow tab, and
   to nothing else. Underlined on hover so it reads as one; the resting
   state stays a quiet chip rather than a line of blue in the head row. */
a.ai-state-chip:hover, a.ai-state-chip:focus {
	color: #64041F;
	background: #e8dfe2;
	text-decoration: underline;
}

.ai-headrow {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	/* Finish where the main column finishes - level with the rail's left
	   edge, not the card's right edge. The row sits above .ai-cols rather
	   than inside it, so it has to be told the rail is there. */
	padding-right: calc(var(--ai-rail-w) + var(--ai-cols-gap));
}

/* Below 767px .ai-cols collapses to one column and the rail moves under the
   content, so there is nothing to the right to line up with. */
@media (max-width: 767px) {
	.ai-headrow { padding-right: 0; }
}

/* The row ends where the content column ends - the same edge the rail below
   it finishes on. Nothing here is positioned: the tab strip underneath runs
   the full width, and an absolutely placed corner box overlaps it as soon as
   a task carries more than a few tabs. */
.ai-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex: none;
	gap: 22px;
	padding-top: 0;
	margin-bottom: 8px;
	border-top: 0 none;
}

.ai-actions a { white-space: nowrap; }

/* Narrow: the lead and the links collide before either wraps, so stop being
   a row. The links drop under the lead and read left-to-right as a list
   rather than squashing against the right edge. */
@media (max-width: 600px) {
	.ai-headrow { display: block; }
	.ai-actions { justify-content: flex-start; flex-wrap: wrap; gap: 16px; }
}

.ai-actions a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #1f8a8a;
	text-decoration: none;
	font-size: 0.92rem;
	font-weight: 600;
	border-bottom: 1px solid transparent;
	padding-bottom: 1px;
}

.ai-actions a:hover,
.ai-actions a:focus {
	color: #1f8a8a;
	border-bottom-color: #1f8a8a;
	text-decoration: none;
}

.ai-actions svg {
	flex: 0 0 auto;
	display: block;
}

/* Related tasks tab: the attachments table's header styling (shared
   class), number and due date in tabular figures, the state as the same
   chip the Tasks list draws. Under the table, the same "Related task"
   link that used to sit under the description - the action row's own
   style, no box and no count - now on the tab it belongs to. */
.ai-related-wrap { overflow-x: auto; }
.ai-related-table td { vertical-align: middle; }
.ai-related-num,
.ai-related-due {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}
.ai-related-num { color: #7c7274; }
.ai-related-actions { margin-top: 16px; }
/* The toolbar's own "add" icon (Create Task, Create Alert), at text size
   so it sits beside the words rather than above them. */
.ai-related-actions img.ai-related-add {
	width: 14px;
	height: 14px;
	display: block;
	flex: 0 0 auto;
}
body.docent-dark .ai-related-num { color: #a49a95; }

/* ====================================================================
   Tab strip. pat-autotoc turns each <legend> into an <a> in .autotoc-nav;
   the theme paints those red. Unselected tabs read as plain black text,
   and the one you are on takes the project colour.
   The two-class prefix is needed to beat `.frontend .autotoc-level-1.active`
   further up this file, which forces the active tab to black.
   ==================================================================== */
.pat-autotoc.autotabs .autotoc-nav a,
.pat-autotoc.autotabs .autotoc-nav a:visited {
	color: #212529 !important;
}

.pat-autotoc.autotabs .autotoc-nav a:hover,
.pat-autotoc.autotabs .autotoc-nav a:focus {
	color: #64041f !important;
}

.pat-autotoc.autotabs .autotoc-nav a.active,
.pat-autotoc.autotabs .autotoc-nav a.autotoc-level-1.active {
	color: #64041f !important;
	border-bottom-color: #64041f !important;
	font-weight: 600;
}

/* Swapped 2026-09-16: Calendar wears the project maroon, Edit the row's
   teal. It was the other way round.

   This is the rule that decides it. An earlier .ai-edit block further up
   set a near-miss crimson and was overridden by this one - dead, and
   removed with the swap, because two rules for one colour is how you
   change the wrong one and see nothing happen.

   .ai-edit now carries no colour of its own: it inherits .ai-actions a. */
.ai-actions a.ai-cal,
.ai-actions a.ai-cal:hover,
.ai-actions a.ai-cal:focus {
	color: #64041f;
}

.ai-actions a.ai-cal:hover,
.ai-actions a.ai-cal:focus {
	border-bottom-color: #64041f;
}

/* ====================================================================
   Tab captions. One line, only where it says something the tab name
   doesn't. Deliberately SMALLER and greyer than the item's own text -
   the old `.larger` intro rendered at 120%, so the label outweighed the
   content it introduced and the two ran together.
   ==================================================================== */
.ai-tabnote {
	font-size: 0.86rem;
	line-height: 1.5;
	color: #8a837c;
	margin: 0 0 12px;
	padding-bottom: 10px;
	border-bottom: 1px solid #dfe3ea;
}

/* ====================================================================
   Attachments table. An Action Item carries a single attachment, so the
   datatables chrome (search box, entries-per-page, pager) was framing one
   row - it is gone from the markup. What is left is a quiet table: light
   header, hairline rules, and one download icon in place of the words.
   ==================================================================== */
.ai-attach-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.94rem;
}

/* The theme paints table headers a heavy dark navy from a high-specificity
   rule, which is why the Tasks list needs its own !important override above.
   Same battle here: id prefix + !important, and the same colours as the
   Tasks header so the two tables agree - which means this block moves
   whenever that one does. */
#content table.ai-attach-table thead,
#content table.ai-attach-table thead tr,
#content table.ai-attach-table thead th,
table.ai-attach-table thead th {
	text-align: left;
	font-size: 10px !important;
	letter-spacing: .15em;
	text-transform: uppercase;
	font-weight: 600 !important;
	color: #5A0A22 !important;
	background: transparent !important;
	background-image: none !important;
	text-shadow: none !important;
	border-top: none !important;
	border-bottom: 1px solid #E6E3DD !important;
	padding: 0 14px 11px 0;
}

/* The attachments header in the dark, same as the listing header above. */
body.docent-dark #content table.ai-attach-table thead,
body.docent-dark #content table.ai-attach-table thead tr,
body.docent-dark #content table.ai-attach-table thead th,
body.docent-dark table.ai-attach-table thead th {
	color: #C9A9B4 !important;
	background: transparent !important;
	border-bottom-color: #3A3430 !important;
}

#content table.ai-attach-table thead th:first-child,
table.ai-attach-table thead th:first-child {
	padding-left: 10px;
}

.ai-attach-table tbody td {
	padding: 11px 14px 11px 0;
	border-bottom: 1px solid #F0EDE8;
	color: #212529;
	vertical-align: middle;
}

.ai-attach-table .ai-attach-dl {
	text-align: right;
	padding-right: 0;
	width: 5.5rem;
}

.ai-attach-table .ai-attach-dl a {
	display: inline-flex;
	color: #8a837c;
	text-decoration: none;
}

.ai-attach-table .ai-attach-dl a:hover,
.ai-attach-table .ai-attach-dl a:focus {
	color: #64041f;
}

/* ====================================================================
   ---- STILL OFF: Previous/Next links ----
   Site-wide, not just the Action Item page - Previous/Next also shows at
   the foot of the Tasks list.

   This used to hide #viewlet-below-content, the wrapper main_template
   puts around the whole plone.belowcontentbody manager. Comments render
   into that same manager, so hiding the wrapper took Comments down with
   it. Previous/Next carries its own id (#section-next-prev, from
   plone.app.layout's nextprevious.pt), so name that and leave the rest
   of the manager - Comments included - visible.

   TO PUT PREVIOUS/NEXT BACK: delete this rule and restart the instance.
   That is the entire undo - the viewlet was never disabled, only hidden,
   so there is no profile or registry change to reverse.

   Note: hidden, not removed. The markup is still in the page, so it is
   still reachable by Ctrl+F and by a screen reader. If it needs to be
   properly gone rather than invisible, that is a viewlets.xml change and
   an upgrade step - say the word.
   ==================================================================== */
#section-next-prev {
	display: none !important;
}
/* ---- END still-off block ------------------------------------------- */


/* ====================================================================
   Comments only on the tabs where a comment means something.

   Most of the eight tabs on an Action Item have nothing to discuss -
   Attachments, Close Out, Your notes (which are private), Activity and
   Workflow (both read-only records). Details, PM Notes and Actions taken
   are the three where someone might reasonably want to say something.

   The page declares which: a fieldset carrying data-ai-comments is a tab
   that takes discussion. pat-autotoc puts .active on the section whose tab
   is showing (autotoc.js: $level.parents(section).addClass(active)), so
   :has() reads the current tab straight from the stylesheet - no script
   watching for the switch, and nothing to keep in sync when the tab order
   changes. Which it already has: the two Action Item views have different
   tab orders, so anything keyed on the #autotoc-item-autotoc-N number in
   the URL would mean Activity in one view and Your notes in the other.

   Opt in per page. A template that marks no tabs at all is left alone, so
   action_items_view.pt keeps showing comments on every tab until it says
   otherwise, rather than losing them silently.
   ==================================================================== */
body:has(.pat-autotoc fieldset[data-ai-comments]) #viewlet-below-content {
	display: none;
}

body:has(.pat-autotoc fieldset.active[data-ai-comments]) #viewlet-below-content {
	display: block;
}

/* ====================================================================
   Comments (plone.app.discussion, rendered into plone.belowcontentbody).

   Out of the box this arrives as Bootstrap: an avatar row, a blue Edit
   button, a red Delete button, a blue Reply button and a bordered box
   round the reply form - four boxed buttons per comment, louder than the
   comment itself, and a comment three paragraphs tall.

   The layout here is the compact one: no portraits, author and date on a
   single line, the body straight underneath, and the actions kept out of
   sight until you hover or tab into the comment. A settled thread reads
   as a short list of who said what; the machinery only appears when you
   reach for it. The composer is one line until you click into it.

   Everything is CSS. No JavaScript, no override of comments.pt, so a
   plone.app.discussion upgrade cannot break it and there is no profile
   or registry change to reverse.

   Selectors stay on .discussion / .comment / #commenting rather than the
   6.x-only .pat-discussion wrapper, so this survives a version bump. The
   #viewlet-below-content prefix is there to out-specify the theme, which
   paints buttons and table chrome from high-specificity rules of its own
   (see the "Lighter header row" note further up).
   ==================================================================== */

/* Heading over the list. plone.app.discussion ships no heading of its own,
   and .discussion only renders when there is at least one comment, so this
   appears exactly when there is something to head. Same treatment as the
   table header rows - 11.5px, uppercase, grey - so the page has one label
   style, not two. */
#viewlet-below-content .discussion {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-top: 28px;
	padding-top: 0;
}

#viewlet-below-content .discussion::before {
	content: "Comments";
	display: block;
	font-size: 11.5px;
	letter-spacing: .04em;
	text-transform: uppercase;
	font-weight: 600;
	color: #7a736c;
	padding-bottom: 7px;
	border-bottom: 1px solid #ccd4e0;
}

/* --------------------------------------------------------------------
   ...and the same heading again, as real markup, once the JS in
   action_items.js has built it. A ::before is fine for a label but has
   nowhere to hang a button, and the heading line is where Show/Hide
   belongs. The CSS heading above stays as the no-JS fallback and steps
   aside here.
   -------------------------------------------------------------------- */
#viewlet-below-content .discussion.ai-comments-live::before {
	content: none;
}

#viewlet-below-content .ai-comments-hd {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-top: 28px;
	padding-bottom: 7px;
	border-bottom: 1px solid #ccd4e0;
}

/* The list carries the top margin when there is no header; with one, the
   header owns it. On a task with no comments yet the header sits straight
   on top of the composer, which then wants neither its own rule nor the
   gap it keeps from the last comment. */
#viewlet-below-content .ai-comments-hd + .discussion {
	margin-top: 8px;
}

#viewlet-below-content .ai-comments-hd + #commenting {
	margin-top: 14px;
	padding-top: 0 !important;
	border-top: 0 !important;
}

/* And it does not need its own "Add comment" caption directly under the
   section heading that already says Comments. */
#viewlet-below-content .ai-comments-hd + #commenting > fieldset > legend {
	display: none;
}

#viewlet-below-content .ai-comments-title {
	font-size: 11.5px;
	letter-spacing: .04em;
	text-transform: uppercase;
	font-weight: 600;
	color: #7a736c;
}

/* How many there are, which is the thing worth knowing about a section you
   have collapsed. */
#viewlet-below-content .ai-comments-count {
	margin-left: 7px;
	letter-spacing: 0;
	color: #7c8697;
}

/* --------------------------------------------------------------------
   The @mention dropdown.

   Sits over the comment box while you type a name. Styled as the same quiet
   list as everything else down here rather than as a Bootstrap menu: light
   surface, hairline, and the project colour only on the row you are on.
   -------------------------------------------------------------------- */
#viewlet-below-content .ai-mention-menu {
	position: absolute;
	z-index: 20;
	left: 0;
	right: auto;
	min-width: 15rem;
	max-width: 22rem;
	max-height: 13rem;
	overflow-y: auto;
	margin-top: 2px;
	background: #fff;
	border: 1px solid #c9d2e0;
	border-radius: 3px;
	box-shadow: 0 4px 14px -6px rgba(30, 40, 60, .3);
}

#viewlet-below-content .ai-mention-menu[hidden] {
	display: none;
}

#viewlet-below-content .ai-mention-item {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	padding: 7px 11px;
	font-size: 0.92rem;
	color: #212529;
	cursor: pointer;
}

/* Keyboard and mouse land on the same highlight, so arrowing down and
   hovering do not disagree about which row is chosen. */
#viewlet-below-content .ai-mention-item.is-on,
#viewlet-below-content .ai-mention-item:hover {
	background: #f5f7fa;
	color: #64041f;
}

#viewlet-below-content .ai-mention-id {
	font-size: 0.8rem;
	color: #8a837c;
}

#viewlet-below-content .ai-mention-item.is-on .ai-mention-id,
#viewlet-below-content .ai-mention-item:hover .ai-mention-id {
	color: #8f0f2b;
}

/* The composer is the positioning context for the dropdown. */
#viewlet-below-content #commenting .field,
#viewlet-below-content .reply .field {
	position: relative;
}

/* --------------------------------------------------------------------
   What has arrived since you last looked.

   The count comes from the comment ids: plone.app.discussion mints them as
   microseconds since the epoch, so "newer than my read mark" is a numeric
   comparison on markup that is already in the page.

   Light red rather than the project crimson at full strength: it sits on the
   heading line next to a grey caption, and a solid crimson chip there reads
   as an alert. This is a "there is something here", not a warning.
   -------------------------------------------------------------------- */
#viewlet-below-content .ai-comments-new {
	display: none;
}

#viewlet-below-content .ai-comments-hd.has-new .ai-comments-new {
	display: inline-block;
	margin-left: 8px;
	padding: 1px 8px;
	border-radius: 9px;
	background: #fbe4e8;
	color: #8f0f2b;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	vertical-align: 1px;
}

/* A new comment keeps the same block, with the left edge in the project
   colour instead of grey - so once the list is open you can see which ones
   they are without reading a single date. */
#viewlet-below-content .comment.ai-comment-new {
	border-left-color: #d98a9c;
	background: #fdf6f7;
}

#viewlet-below-content .comment.ai-comment-new .comment-author::after {
	content: "New";
	display: inline-block;
	margin-left: 8px;
	padding: 0 6px;
	border-radius: 9px;
	background: #fbe4e8;
	color: #8f0f2b;
	font-size: 9.5px;
	font-weight: 600;
	letter-spacing: .05em;
	text-transform: uppercase;
	vertical-align: 1px;
}

/* Same quiet text action as Edit / Delete / Reply on a comment. */
#viewlet-below-content button.ai-comments-toggle {
	flex: 0 0 auto;
	background: transparent !important;
	background-image: none !important;
	border: 0 !important;
	border-bottom: 1px solid transparent !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	font: inherit;
	font-size: 0.85rem !important;
	font-weight: 600;
	line-height: 1.4;
	color: #8a837c !important;
	text-shadow: none !important;
	cursor: pointer;
}

#viewlet-below-content button.ai-comments-toggle:hover,
#viewlet-below-content button.ai-comments-toggle:focus {
	color: #64041f !important;
	border-bottom-color: #64041f !important;
}

/* Collapsed. The class is on <html>, set before paint, so a block left
   closed is never painted open and then shut. The heading row stays - it is
   what you click to get the comments back, and it still says how many are
   down there. */
.ai-comments-hidden #viewlet-below-content .discussion > .comment,
.ai-comments-hidden #viewlet-below-content .discussion > .discreet,
.ai-comments-hidden #viewlet-below-content #commenting {
	display: none !important;
}

.ai-comments-hidden #viewlet-below-content .discussion {
	margin-top: 0;
	padding-bottom: 0;
}

/* One comment, as its own block. Bootstrap's .mb-3 on the inner rows is
   what made each comment three paragraphs tall.

   A hairline between comments was not enough. That works under a table
   row, where the columns already give the eye a grid to follow; a run of
   comments has no such grid, so however dark the line was the block still
   read as one undifferentiated grey area. A fill and a left edge give each
   comment a shape - and it is a fill, not a card: no border, no radius, no
   shadow, so the page keeps the flat look the redesign was after. */
#viewlet-below-content .comment {
	position: relative;
	background: #f5f7fa;
	border: 0;
	border-left: 3px solid #c9d2e0;
	padding: 12px 12px 12px 14px;
}

#viewlet-below-content .comment > .d-flex,
#viewlet-below-content .comment .comment-body > .d-flex {
	margin-bottom: 0 !important;
}

/* No portraits. Almost no Docent account has one, so the column was a row
   of identical default silhouettes - width spent on nothing. */
#viewlet-below-content .comment .comment-image {
	display: none !important;
}

/* Author line: name, date, and the actions pushed to the far right.
   The template puts a <br> between name and date, so drop the break and
   separate with a middot instead. */
/* The right end of this row is where the actions are parked, so keep the
   date clear of them. */
#viewlet-below-content .comment > .d-flex {
	align-items: baseline !important;
	padding-right: 9rem;
}

/* The name is what you scan a thread for, so it is the one thing here set
   darker than the body text rather than the same as it. */
#viewlet-below-content .comment .comment-author {
	font-size: 0.95rem;
	font-weight: 600;
	color: #12161c;
	line-height: 1.4;
}

#viewlet-below-content .comment .comment-author a {
	color: #212529;
	text-decoration: none;
}

#viewlet-below-content .comment .comment-author a:hover,
#viewlet-below-content .comment .comment-author a:focus {
	color: #64041f;
	text-decoration: none;
}

#viewlet-below-content .comment .comment-author br {
	display: none;
}

#viewlet-below-content .comment .comment-author small {
	font-size: 0.8rem;
	font-weight: 400;
	color: #8a837c !important;
}

#viewlet-below-content .comment .comment-author small::before {
	content: "\00b7";
	margin: 0 7px;
	color: #b9c0cc;
}

/* The comment itself, tight under the name it belongs to. */
#viewlet-below-content .comment .comment-body {
	margin-top: 2px;
	font-size: 0.94rem;
	line-height: 1.55;
	color: #212529;
}

/* getText is pulled in with tal:replace, so the template's <span> is gone by
   the time it renders - .comment-body holds bare <p> elements. */
#viewlet-below-content .comment .comment-body > p:last-of-type {
	margin-bottom: 0;
}

/* Replies. plone.app.discussion tags depth on the comment as .level-N,
   N capped at 10. The left rule is what makes a reply read as a reply;
   past level 3 the indent stops growing so a long thread cannot walk off
   the right edge. */
/* A reply is the same block a shade further in: darker fill, darker edge,
   and indented, so a thread still reads as a thread now that every comment
   is filled. Indent is on the margin rather than the padding, so the fill
   moves with it instead of stretching. Past level 3 it stops growing so a
   long thread cannot walk off the right edge. */
#viewlet-below-content .comment[class*="level-"]:not(.level-0) {
	background: #eef1f7;
	border-left-color: #9fadc2;
}

#viewlet-below-content .comment.level-1 { margin-left: 24px; }
#viewlet-below-content .comment.level-2 { margin-left: 48px; }
#viewlet-below-content .comment.level-3,
#viewlet-below-content .comment.level-4,
#viewlet-below-content .comment.level-5,
#viewlet-below-content .comment.level-6,
#viewlet-below-content .comment.level-7,
#viewlet-below-content .comment.level-8,
#viewlet-below-content .comment.level-9,
#viewlet-below-content .comment.level-10 { margin-left: 72px; }

/* --------------------------------------------------------------------
   Per-comment actions: Edit, Delete, the moderation transitions, Reply.
   All of them arrive as .btn.btn-primary / .btn.btn-danger. Strip the
   box, put them on the author line at the right, and keep them at zero
   opacity until the comment is hovered or something inside it takes
   keyboard focus.

   Opacity, not display:none or visibility - the buttons stay in the
   layout, stay focusable and stay readable to a screen reader, so
   tabbing through a thread still reaches Reply. :focus-within is what
   brings them into view for a keyboard user.
   -------------------------------------------------------------------- */
/* Parked in the right margin of the author line, so a hidden action row
   costs no height at all - which is the whole point of the compact layout.
   Reply is a sibling of .comment-body rather than part of this row, so it
   takes the outer slot and Edit/Delete sit inboard of it. The 3.4rem is the
   width of the word "Reply" plus the gap; this add-on's UI strings are
   hard-coded English throughout (see the tab legends), so it does not move. */
/* Centred on the author line, not pinned to the padding edge: the row is
   taller than the words in it (each action is a form around a button), so
   a top of 12px put the words a few pixels below the name and date. The
   line's height is the author's font size times its line-height; the row
   is placed at that line's middle and pulled up by half its own height,
   so however tall the row is, the words sit level with the name. */
#viewlet-below-content .comment .comment-body > .d-flex {
	position: absolute;
	top: calc(12px + (0.95rem * 1.4) / 2);
	transform: translateY(-50%);
	right: 4.15rem;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 16px;
	margin: 0 !important;
	opacity: 0;
	transition: opacity .12s ease;
}

#viewlet-below-content .comment button.reply-to-comment-button {
	position: absolute;
	top: calc(12px + (0.95rem * 1.4) / 2);
	transform: translateY(-50%);
	right: 12px;
	margin: 0 !important;
}

/* Too narrow to park anything in the margin - put the actions back under the
   comment, where they cost a line but never land on top of the date. */
@media (max-width: 600px) {
	#viewlet-below-content .comment > .d-flex {
		padding-right: 0;
	}
	#viewlet-below-content .comment .comment-body > .d-flex,
	#viewlet-below-content .comment button.reply-to-comment-button {
		position: static;
		transform: none;
		justify-content: flex-start !important;
		margin-top: 6px !important;
	}
}

#viewlet-below-content .comment:hover .comment-body > .d-flex,
#viewlet-below-content .comment:focus-within .comment-body > .d-flex {
	opacity: 1;
}

#viewlet-below-content .comment button.reply-to-comment-button {
	opacity: 0;
	transition: opacity .12s ease;
}


#viewlet-below-content .comment:hover button.reply-to-comment-button,
#viewlet-below-content .comment:focus-within button.reply-to-comment-button {
	opacity: 1;
}

/* Touch has no hover, so on a tablet the actions would never appear.
   Pin them visible wherever the pointer is coarse. */
@media (pointer: coarse) {
	#viewlet-below-content .comment .comment-body > .d-flex,
	#viewlet-below-content .comment button.reply-to-comment-button {
		opacity: 1;
	}
}

/* Someone who prefers less motion gets the same reveal, just instantly. */
@media (prefers-reduced-motion: reduce) {
	#viewlet-below-content .comment .comment-body > .d-flex,
	#viewlet-below-content .comment button.reply-to-comment-button {
		transition: none;
	}
}

#viewlet-below-content .comment .comment-actions {
	display: inline-flex;
	align-items: center;
	gap: 16px;
}

#viewlet-below-content .comment .comment-action {
	margin: 0;
}

#viewlet-below-content .comment .btn,
#viewlet-below-content .comment button.reply-to-comment-button {
	display: inline-flex;
	align-items: center;
	background: transparent !important;
	background-image: none !important;
	border: 0 !important;
	border-bottom: 1px solid transparent !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	font-size: 0.85rem !important;
	font-weight: 600;
	line-height: 1.4;
	color: #8a837c !important;
	text-decoration: none !important;
}

#viewlet-below-content .comment .btn:hover,
#viewlet-below-content .comment .btn:focus,
#viewlet-below-content .comment button.reply-to-comment-button:hover,
#viewlet-below-content .comment button.reply-to-comment-button:focus {
	color: #64041f !important;
	border-bottom-color: #64041f !important;
}

/* Moderation states. A comment awaiting review or marked as spam should be
   visibly set apart for the moderator who can see it, without shouting. */
#viewlet-below-content .comment.state-pending,
#viewlet-below-content .comment.state-private,
#viewlet-below-content .comment.state-internal {
	background: #fbf6ed;
	border-left-color: #d3ab6a;
}

/* --------------------------------------------------------------------
   The reply form. #commenting is only this box - not the comment list -
   which is worth remembering, because hiding #commenting hides the form
   and leaves the comments in place.

   Collapsed it is a single empty line. Click or tab into it and the box
   grows and the buttons appear. Nothing is display:none while it holds
   focus, so focus is never dropped mid-interaction.
   -------------------------------------------------------------------- */
#viewlet-below-content #commenting {
	margin-top: 18px;
	padding: 16px 0 0 !important;
	border: 0 !important;
	border-top: 1px solid #dfe3ea !important;
	border-radius: 0 !important;
	background: transparent !important;
}

#viewlet-below-content fieldset {
	border: 0;
	padding: 0;
	margin: 0;
}

/* --- Every copy of the comment form, not just the one at the bottom ---
   Clicking Reply clones this form inline under the comment being replied
   to. The clone has no id, so anything scoped to #commenting misses it -
   which is how "Add comment / You can add a comment by filling out the
   form below" came back, unstyled, on every reply. Chrome that belongs to
   the form is at .reply / fieldset scope from here down; only the
   collapsing behaviour stays pinned to #commenting, because a box you
   opened on purpose to write a reply should already be open.
   -------------------------------------------------------------------- */

/* The legend heads a box that is plainly a comment box, and on a reply it
   answers a question nobody asked. Gone by default; the composer at the
   foot of the page keeps it as a small caption, because there it is the
   only thing saying what the box is for. */
#viewlet-below-content fieldset > legend {
	display: none;
}

#viewlet-below-content #commenting > fieldset > legend {
	display: block;
	float: none;
	width: auto;
	font-size: 11.5px;
	letter-spacing: .04em;
	text-transform: uppercase;
	font-weight: 600;
	color: #7a736c;
	margin-bottom: 8px;
	padding: 0;
	border: 0;
}

/* The "You can add a comment by filling out the form below. Plain text
   formatting." note, and the label that just repeats "Comment" over the
   box. Both describe something plainly a comment box. Scoped to the whole
   below-content area so the reply clone loses them too - only that one
   label, though: an anonymous commenter still gets labels on the name and
   email fields. CommentForm renames the widget id to
   form-widgets-comment-text, which is what the label points at - matched
   loosely, because the inline reply clone renumbers that id. */
#viewlet-below-content fieldset > p,
#viewlet-below-content label[for*="comment-text"] {
	display: none;
}

/* One line until you reach for it. */
#viewlet-below-content textarea,
#viewlet-below-content input[type="text"] {
	border: 1px solid #dfe3ea;
	border-radius: 3px;
	box-shadow: none;
	font-size: 0.94rem;
	padding: 8px 10px;
	width: 100%;
}

/* CommentForm gives the textarea an `autoresize` class, and that pattern
   writes height straight onto the element - an inline style beats a plain
   stylesheet rule, so both heights here have to be !important or the box
   springs back open. */
#viewlet-below-content #commenting textarea {
	height: 40px !important;
	min-height: 0 !important;
	resize: none;
	overflow: hidden;
	transition: height .14s ease;
}

#viewlet-below-content #commenting:focus-within textarea {
	height: 104px !important;
	resize: vertical;
	overflow: auto;
}

@media (prefers-reduced-motion: reduce) {
	#viewlet-below-content #commenting textarea { transition: none; }
}

/* The prompt in the collapsed box - the one line of text it shows before
   anyone clicks into it. DocentCommentForm puts it there; this makes it
   read as a prompt rather than as someone's comment. */
#viewlet-below-content textarea::placeholder {
	color: #8a837c;
	opacity: 1;
}

#viewlet-below-content textarea:focus,
#viewlet-below-content input[type="text"]:focus {
	border-color: #64041f;
	box-shadow: none;
	outline: 0;
}

/* The buttons are hidden only while nothing in the form has focus, so
   nothing that currently holds focus is ever taken out of the layout.

   The :has() rule is the important half. A comment that fails validation
   comes back re-rendered with nothing focused - without it the box would
   redraw collapsed, buttons gone, and the text you just wrote would have
   no way to be resubmitted. If .formControls turns out not to be the
   wrapper on some future Plone, this whole pair matches nothing and the
   buttons simply stay visible, which is the old behaviour, not a break. */
#viewlet-below-content #commenting .formControls {
	display: none;
}

#viewlet-below-content #commenting:focus-within .formControls,
#viewlet-below-content #commenting:has(.error) .formControls,
#viewlet-below-content #commenting:has(.portalMessage) .formControls {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 10px;
}

/* Same reason: a form showing errors is a form someone is mid-way through,
   so give it the open box rather than the one-line one. */
#viewlet-below-content #commenting:has(.error) textarea {
	height: 104px !important;
	resize: vertical;
	overflow: auto;
}

/* Comment and Cancel, as text actions rather than filled buttons.

   Everything else that acts on this page is quiet text - Calendar, Related
   task, Edit on the Details tab, Edit/Delete/Reply on a comment - so two
   solid boxes in the reply form were the only chrome left standing, and
   they read as heavier than anything they sit next to.

   Comment carries the project crimson because it is the one that changes
   the record, which is the same rule Edit follows on the Details tab.
   Cancel stays grey. Both take the hairline underline on hover.

   Cancel has to be named ahead of the generic submit rule and with matching
   weight: it is also an input[type=submit] inside .formControls, so the
   crimson rule below would otherwise out-specify it and paint Cancel as a
   primary button - which is exactly what was happening. */
#viewlet-below-content .formControls input[type="submit"],
#viewlet-below-content .formControls button[type="submit"],
#viewlet-below-content .formControls input[type="button"],
#viewlet-below-content input.btn-primary,
#viewlet-below-content button.btn-primary,
#viewlet-below-content input.btn-secondary,
#viewlet-below-content button.btn-secondary {
	display: inline-flex;
	align-items: center;
	background: transparent !important;
	background-image: none !important;
	border: 0 !important;
	border-bottom: 1px solid transparent !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	font-size: 0.9rem !important;
	font-weight: 600;
	line-height: 1.4;
	color: #8a837c !important;
	text-shadow: none !important;
}

/* The one that posts the comment. Matched on the button name z3c.form gives
   it - CommentForm's handler is @button.buttonAndHandler(..., name="comment")
   - so Cancel, which sits in the same row with the same element type, is not
   caught by it. */
#viewlet-below-content .formControls input[name$="buttons.comment"],
#viewlet-below-content .formControls button[name$="buttons.comment"] {
	color: #64041f !important;
}

#viewlet-below-content .formControls input[type="submit"]:hover,
#viewlet-below-content .formControls input[type="submit"]:focus,
#viewlet-below-content .formControls button[type="submit"]:hover,
#viewlet-below-content .formControls button[type="submit"]:focus,
#viewlet-below-content input.btn-primary:hover,
#viewlet-below-content button.btn-primary:hover,
#viewlet-below-content input.btn-secondary:hover,
#viewlet-below-content button.btn-secondary:hover {
	color: #64041f !important;
	border-bottom-color: #64041f !important;
}

/* They sit on one line with the same gap as the comment actions. This has
   to be a flex row wherever the form appears - `gap` does nothing on the
   plain block div the reply clone renders - and it stays out-specified by
   the #commenting rule above, which is what keeps the composer's buttons
   hidden until the box has focus. */
#viewlet-below-content .formControls {
	display: flex;
	align-items: center;
	gap: 18px;
	margin-top: 10px;
}

/* "Log in to add comments", shown to anonymous visitors where anonymous
   commenting is off. Same quiet-text treatment as everything else here. */
#viewlet-below-content .reply .loginbutton,
#viewlet-below-content .reply:not(#commenting) button[type="submit"] {
	background: transparent !important;
	background-image: none !important;
	border: 0 !important;
	border-bottom: 1px solid transparent !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	font-size: 0.9rem !important;
	font-weight: 600;
	color: #8a837c !important;
}

#viewlet-below-content .reply .loginbutton:hover,
#viewlet-below-content .reply:not(#commenting) button[type="submit"]:hover {
	color: #64041f !important;
	border-bottom-color: #64041f !important;
}

/* "New comments notifies me" - the checkbox under the comment box.

   The markup is stock Bootstrap 5 and perfectly fine:

     <div class="form-check">
       <input type="checkbox" class="form-check-input" id="...">
       <label class="form-check-label" for="..."><span class="label">..</span></label>
     </div>

   The theme hides that input and draws its own square as a ::before on the
   label. Its square never shows a tick, so ticked and unticked looked
   identical - and #172 made ticked the default, so the box shipped in the
   state where that matters most.

   Un-hiding the real input on its own is not enough: that gets you the real
   control AND the theme's square, side by side. Both halves are needed -
   show the real one, take the fake one out. */
/* 1. The control, drawn here rather than by the browser.

   Handing it back to the browser with appearance:auto does not work, and
   the way it fails is worth writing down: Chrome switches OFF native
   rendering for a checkbox as soon as the author specifies its background
   or border. Clearing those to get rid of the theme's paint therefore also
   discarded the tick, and left a correctly-sized, perfectly visible,
   entirely blank 15x15 box. Every property read right - display block,
   opacity 1, visibility visible, appearance auto - and nothing was drawn.

   So draw it. Same technique Bootstrap itself uses: appearance:none, our
   own box, and the tick as a background-image on :checked. Nothing here
   depends on the theme, or on which controls a browser paints natively. */
#viewlet-below-content input[type="checkbox"] {
	-webkit-appearance: none !important;
	appearance: none !important;
	display: inline-block !important;
	visibility: visible !important;
	position: static !important;
	float: none !important;
	opacity: 1 !important;
	/* The theme hides the input with `opacity: 0; z-index: -1`. z-index is
	   ignored on a statically-positioned element, so resetting the opacity
	   alone appeared to be enough - right up until .form-check below became
	   a flex container. Flex items honour z-index whatever their position,
	   at which point the box went on painting itself, in full, behind its
	   parent's background. Invisible, with every computed property reading
	   exactly as it should. */
	z-index: auto !important;
	width: 15px !important;
	height: 15px !important;
	min-width: 15px !important;
	min-height: 15px !important;
	margin: 0 !important;
	padding: 0 !important;
	flex: none;
	background-color: #fff !important;
	background-image: none !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 11px 11px !important;
	border: 1px solid #B5AEA6 !important;
	border-radius: 3px !important;
	box-shadow: none !important;
	clip: auto !important;
	clip-path: none !important;
	cursor: pointer;
}

#viewlet-below-content input[type="checkbox"]:checked {
	background-color: #64041f !important;
	border-color: #64041f !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3 6-6'/%3E%3C/svg%3E") !important;
}

#viewlet-below-content input[type="checkbox"]:focus-visible {
	outline: 2px solid #64041f;
	outline-offset: 1px;
}

/* 2. The theme's fake square. Listed against every element that exists in
   the widget rather than just the one drawing it today - there are only
   three, so this is exhaustive rather than speculative, and it does not
   depend on which of them the theme reaches for next. */
#viewlet-below-content .form-check-label::before,
#viewlet-below-content .form-check-label::after,
#viewlet-below-content .form-check-label > .label::before,
#viewlet-below-content .form-check-label > .label::after,
#viewlet-below-content input[type="checkbox"]::before,
#viewlet-below-content input[type="checkbox"]::after {
	content: none !important;
	display: none !important;
	background: none !important;
	border: 0 !important;
}

/* 3. Bootstrap indents .form-check by 1.5em and pulls the input back into
   it with a float and a negative margin. With the float gone that indent
   has nothing in it, so lay the row out directly instead. */
#viewlet-below-content .form-check {
	display: flex;
	align-items: center;
	gap: 7px;
	padding-left: 0;
	margin-bottom: 0;
	min-height: 0;
}

/* The label is a sibling of the input, not its parent - but `for` still
   makes the whole phrase clickable. */
#viewlet-below-content .form-check-label {
	margin: 0;
	font-size: 0.9rem;
	font-weight: 400;
	color: #7a736c;
	cursor: pointer;
}

/* ====================================================================
   The "A notification has been sent to ..." pop-up.

   Deliberately plain: it appears unbidden after posting a comment, so it
   is a small panel that says one thing and goes away, not a piece of
   furniture. Same crimson as the comment actions, same quiet greys.

   The checkbox inside it is styled by the comment-form rules further up -
   it sits outside #viewlet-below-content, so it gets its own copy here
   rather than the theme's hidden one.
   ==================================================================== */
.ai-mention-modal-back {
	position: fixed;
	inset: 0;
	z-index: 2000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	background: rgba(23, 28, 38, 0.42);
}

.ai-mention-modal {
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 10px 34px rgba(16, 22, 34, 0.28);
	max-width: 420px;
	width: 100%;
	padding: 20px 22px 16px;
}

.ai-mention-modal-hd {
	margin: 0 0 10px;
	font-size: 1.02rem;
	font-weight: 700;
	color: #22293a;
}

.ai-mention-modal-line {
	margin: 0 0 8px;
	font-size: 0.92rem;
	line-height: 1.5;
	color: #475062;
}

/* A mention that reached nobody. Marked, not alarming - it is usually a
   typed name that is not a user. */
.ai-mention-modal-bad {
	color: #8f0f2b;
}

.ai-mention-modal-foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-top: 16px;
}

/* Nothing on the right when the tick-box is not offered, so the button
   would otherwise sit alone on the left. */
.ai-mention-modal-foot:not(:has(.ai-mention-modal-again)) {
	justify-content: flex-end;
}

.ai-mention-modal-again {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin: 0;
	font-size: 0.86rem;
	font-weight: 400;
	color: #7a736c;
	cursor: pointer;
}

/* The theme hides bare checkboxes with opacity:0 and z-index:-1, and this
   panel is outside the comment viewlet, so it needs its own copy of the
   fix. See the comment-form checkbox rules above for why it is drawn here
   rather than handed back to the browser. */
.ai-mention-modal-again input[type="checkbox"] {
	-webkit-appearance: none !important;
	appearance: none !important;
	display: inline-block !important;
	visibility: visible !important;
	position: static !important;
	float: none !important;
	opacity: 1 !important;
	z-index: auto !important;
	width: 15px !important;
	height: 15px !important;
	min-width: 15px !important;
	margin: 0 !important;
	padding: 0 !important;
	flex: none;
	background-color: #fff !important;
	background-image: none !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 11px 11px !important;
	border: 1px solid #B5AEA6 !important;
	border-radius: 3px !important;
	box-shadow: none !important;
	cursor: pointer;
}

.ai-mention-modal-again input[type="checkbox"]:checked {
	background-color: #64041f !important;
	border-color: #64041f !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3 6-6'/%3E%3C/svg%3E") !important;
}

.ai-mention-modal-ok {
	background: #64041f;
	border: 0;
	border-radius: 7px;
	color: #fff;
	cursor: pointer;
	font-size: 0.88rem;
	font-weight: 600;
	padding: 7px 20px;
}

.ai-mention-modal-ok:hover,
.ai-mention-modal-ok:focus {
	background: #7d0827;
}

/* The comment quoted inside an Alert. Set apart from the line above it so
   it reads as someone else's words rather than as the Alert's own. */
.ai-alert-quote {
	margin: 10px 0 0;
	padding: 2px 0 2px 12px;
	border-left: 3px solid rgba(0, 0, 0, 0.18);
	font-style: italic;
	opacity: 0.92;
}

/* ====================================================================
   Add / edit form styling lives in the THEME, not here.

       medialog.docenttheme/theme/styles/add_form.css

   Diazo links that file last in <head> on add and edit pages (its
   rules.xml matches viewpermission-add-portal-content and
   .template-edit), so it wins the cascade over this stylesheet whatever
   is written here. An evening was spent proving that the hard way: rules
   added here landed on some fields and not others, depending on which
   properties that file happened to set, and every attempt to force them
   through with !important lost to load order.

   The behaviour those styles pair with is still ours - the .ai-submitted
   class and the "Still needed" line come from action_items.js below -
   but the CSS for both is in the theme, so it cannot be out-cascaded.

   If a form needs to look different, change it there.
   ==================================================================== */


/* ====================================================================
   Status messages: say it, then get out of the way.

   Plone's is a full-width pale blue box with a heavy border, and it
   stays on the page until something else replaces it - so "Item created"
   was still sitting there three screens later, and the only way to be
   rid of it was to reload.

   Kept, because the message is worth having; made quiet, and given a
   clock. Same place Plone puts it, so the reading order down the page is
   unchanged and a screen reader meets it where it expects to.

   The colour is on the left edge only. The icon is Plone's own and takes
   currentColor, so it turns with the text.

   Safe to style by #global_statusmessage: the add-on's own .ai-alert
   pages and anything else wearing .portalMessage live elsewhere in the
   document and are left alone.
   ==================================================================== */

/* Wherever a message is, not only in Plone's holder at the top: a
   form's own status line (z3c.form draws it inside the form, at
   Bootstrap's full size, and it stayed) gets the same size and the same
   clock (2026-09-09). The Alert page's own box is not a message. */
:is(#global_statusmessage, #content) .portalMessage:not(.ai-alert) {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0 0 12px;
    padding: 8px 14px;
    border: 0;
    border-left: 3px solid #6c757d;
    border-radius: 0;
    box-shadow: none;
    background: #f4f5f6;
    color: #343a40;
    font-size: 0.92rem;
    overflow: hidden;
}

:is(#global_statusmessage, #content) .portalMessage:not(.ai-alert).statusmessage-info,
:is(#global_statusmessage, #content) .portalMessage:not(.ai-alert).alert-info,
:is(#global_statusmessage, #content) .portalMessage:not(.ai-alert).alert-success {
    background: #f2f8f5;
    color: #1f5943;
    border-left-color: #2e7d5b;
}

:is(#global_statusmessage, #content) .portalMessage:not(.ai-alert).statusmessage-warning,
:is(#global_statusmessage, #content) .portalMessage:not(.ai-alert).alert-warning {
    background: #fdf8ee;
    color: #7a5606;
    border-left-color: #b4820c;
}

:is(#global_statusmessage, #content) .portalMessage:not(.ai-alert).statusmessage-error,
:is(#global_statusmessage, #content) .portalMessage:not(.ai-alert).alert-danger {
    background: #fdf3f5;
    color: #7d1f2f;
    border-left-color: #a3283c;
}

/* Plone's icon sits in the flex row rather than on the text baseline. */
:is(#global_statusmessage, #content) .portalMessage:not(.ai-alert) .statusmessage-icon {
    flex: 0 0 auto;
    margin: 0 !important;
}

/* Words are never in the project colour (2026-09-09): a pale one
   cannot be read, and Chelsea Mall's is a light yellow. The theme's
   add_form.css gives the form's chips and the join link the colour as
   text; the colour stays on fills and borders, the words go black. */
body.viewpermission-add-portal-content .ai-chip,
body.template-edit .ai-chip,
body.template-action_items .ai-chip,
.ai-join { color: #1a1a1a !important; }

/* Buttons are never in the project colour either (2026-09-10). The
   theme's add_form.css fills a pressed form chip and edges the join link
   with it; both take the Docent maroon here, like the form's Save. */
body.viewpermission-add-portal-content .ai-chip[aria-pressed="true"],
body.template-edit .ai-chip[aria-pressed="true"],
body.template-action_items .ai-chip[aria-pressed="true"] {
  background: #64041f !important; border-color: #64041f !important; color: #fff !important;
}
body.viewpermission-add-portal-content .ai-chip:focus-visible,
body.template-edit .ai-chip:focus-visible,
body.template-action_items .ai-chip:focus-visible { outline-color: #64041f !important; }
.ai-join { border-color: #64041f !important; }

/* The way out, for anyone who does not want to wait for the clock. */
:is(#global_statusmessage, #content) .portalMessage:not(.ai-alert) .ai-msg-close {
    margin-left: auto;
    padding: 0 2px;
    border: 0;
    background: none;
    color: inherit;
    opacity: 0.45;
    font-size: 1.15rem;
    line-height: 1;
    cursor: pointer;
}

:is(#global_statusmessage, #content) .portalMessage:not(.ai-alert) .ai-msg-close:hover {
    opacity: 1;
}

/* Going: fades, and takes its own height with it, so nothing below jumps
   up the page at the moment the message disappears. */
:is(#global_statusmessage, #content) .portalMessage:not(.ai-alert).ai-msg-going {
    transition: opacity 0.3s ease,
                max-height 0.3s ease 0.1s,
                margin 0.3s ease 0.1s,
                padding 0.3s ease 0.1s;
    opacity: 0;
    max-height: 0 !important;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
}


/* Who raised an Alert and when. It is the answer to a question somebody
   might ask, not part of what the Alert says, so it sits under the words
   at the size of a footnote. Opacity rather than a colour, so it stays in
   whatever hue the Alert's own type gives it. */
.ai-alert .ai-alert-by {
    margin: 14px 0 0;
    font-size: 0.85em;
    opacity: 0.65;
}


/* ====================================================================
   The page's content sits on a card.

   With the ground a few percent darker than white (see `body` above),
   giving the content a white card is what tells furniture from content -
   the ribbon and the breadcrumbs stay on the ground, everything the page
   is actually about is inside the card. Nothing new is introduced: no
   colour, no component, and nothing moves.

   Not on the forms. Add, Edit and the Task page draw their own card
   already - the whitesmoke sheet with the cream heading band on top of it
   - and a card around that is a card around a card. Those three body
   classes are the same ones the theme's add_form.css uses to find them.
   ==================================================================== */

body:not(.viewpermission-add-portal-content):not(.template-edit):not(.template-action_items) #content {
    background: #fff;
    border: 1px solid #E6E3DD;
    border-radius: 6px;
    padding: 18px 20px 22px;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}

/* --------------------------------------------------------------- the trail

   The breadcrumb is inside the card now, at the top, above the project
   eyebrow and the heading. It used to sit on the ground above the card,
   which was fine until the card took the project colour - after that the
   card read as the whole page and the trail was the one thing left
   floating outside it.

   Above the title, not below it: a breadcrumb answers "where am I", and
   that question comes before the page's name. Under the heading it lands
   in the slot the eye reads as a subtitle, and on the Tasks page it would
   print the word "Tasks" twice in three lines.

   It is chrome, so it is quiet - muted, 11.5px, and separated from the
   content by a hairline rather than by space. The viewlet move itself is
   in viewlets/configure.zcml and profiles/default/viewlets.xml. */

body:not(.viewpermission-add-portal-content):not(.template-edit):not(.template-action_items) #content #portal-breadcrumbs {
    display: block !important;
    visibility: visible !important;
    background: none !important;
    margin: 0 0 12px !important;
    padding: 0 0 9px !important;
    border-bottom: 1px solid #F0EAE4;
}

/* The path bar template wraps its list in .container, which is a Bootstrap
   grid container - inside the card that adds gutters the card already has
   and, at some widths, a max-width narrower than the card itself. */
#content #portal-breadcrumbs .container {
    width: auto;
    max-width: none;
    padding: 0;
    margin: 0;
}

#content #portal-breadcrumbs .breadcrumb {
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    font-size: 11.5px;
}

#content #portal-breadcrumbs .breadcrumb-item,
#content #portal-breadcrumbs .breadcrumb-item.active {
    color: #7C716B;
}

#content #portal-breadcrumbs .breadcrumb-item a {
    color: #64041f;
    text-decoration: none;
}

#content #portal-breadcrumbs .breadcrumb-item a:hover,
#content #portal-breadcrumbs .breadcrumb-item a:focus-visible {
    text-decoration: underline;
}

body.docent-dark #content #portal-breadcrumbs {
    border-bottom-color: rgba(255, 255, 255, .12);
}

body.docent-dark #content #portal-breadcrumbs .breadcrumb-item,
body.docent-dark #content #portal-breadcrumbs .breadcrumb-item.active {
    color: #A2958D;
}

/* The forms draw their own sheet and have never shown a breadcrumb - the
   theme hides the whole #above-content-wrapper on them. Now that the trail
   renders inside #content instead, it would appear on them for the first
   time. Same three body classes the rest of this file uses to find them. */
.viewpermission-add-portal-content #content #portal-breadcrumbs,
.template-edit #content #portal-breadcrumbs,
.template-action_items #content #portal-breadcrumbs {
    display: none !important;
}

/* ------------------------------------------------------- the gap above

   With the trail gone from the ground, #above-content-wrapper is an empty
   box still holding its own margins, and the card sat a long way below the
   ribbon for no reason. Collapse the empty box and set the distance from
   the ribbon to the card explicitly, as one number, so it is a decision
   rather than the sum of four inherited margins.

   Halved from what it was. Adjust here and nowhere else. */

:root {
    --docent-card-gap: 48px;
}

#above-content-wrapper {
    display: none;
}

body:not(.viewpermission-add-portal-content):not(.template-edit):not(.template-action_items) #portal-column-content {
    margin-top: 0;
}

body:not(.viewpermission-add-portal-content):not(.template-edit):not(.template-action_items) #content {
    margin-top: var(--docent-card-gap);
}

/* An embedded page has no chrome to be separated from. */
html.ai-embed #content {
    background: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
}

/* A meeting's summary block draws its own Bootstrap card. Inside the page
   card that is a card around a card - two borders a few pixels apart, and
   the inner one saying nothing the outer one does not. It still wants to
   read as a block of meta rather than as body text, so it keeps a shape:
   a faint inset panel instead of a second frame. */
body:not(.viewpermission-add-portal-content):not(.template-edit):not(.template-action_items) #content .card.event-summary {
    background: #FAF9F7;
    border: 0;
    border-left: 3px solid #E6E3DD;
    border-radius: 4px;
    box-shadow: none;
}


/* ====================================================================
   Source Serif 4 — the page-title face.

   The headings used to name Georgia, which ships with Windows and macOS
   and with neither Linux nor most CI images, so a machine without it
   silently drew something else. Same bug the logo had. This is
   self-hosted under browser/static/fonts, SIL Open Font License, Latin
   subset, three faces at ~20KB each - real files rather than base64 like
   Inter, because 60KB of base64 in this stylesheet would be paid for on
   every page whether a title is on screen or not.

   Adobe drew it for screen UI, which is the whole reason to prefer it to
   a Georgia clone: this is a choice, not a substitution.
   ==================================================================== */
@font-face {
  font-family: 'Source Serif 4';
  src: url(../fonts/source-serif-4-400.woff2) format('woff2');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Source Serif 4';
  src: url(../fonts/source-serif-4-400-italic.woff2) format('woff2');
  font-weight: 400; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Source Serif 4';
  src: url(../fonts/source-serif-4-600.woff2) format('woff2');
  font-weight: 600; font-style: normal; font-display: swap;
}

/* The page title itself is styled in viewlets/tool-bar-viewlet.pt, which
   already owns the eyebrow, the accent bar and their measured offsets.
   Styling it here too would be two sources of truth for one heading. */

/* ====================================================================
   Listing density.

   Two settings, not one. A calm default is what the product should look
   like when you arrive; someone working a forty-row list wants to see
   forty rows. Baked as a variable so a template does not have to know
   the numbers, and so the toggle is one class on <body>.
   ==================================================================== */
:root { --ai-rowpad: 15px; --ai-rowfont: 13.5px; }
body.ai-compact { --ai-rowpad: 8px; --ai-rowfont: 13px; }

html body #content table.listing tbody td,
html body #content table.pat-datatables tbody td {
  padding-top: var(--ai-rowpad) !important;
  padding-bottom: var(--ai-rowpad) !important;
  font-size: var(--ai-rowfont);
  transition: padding .12s ease;
}

/* A quarter inch of air above the header row, so the table is clearly a
   separate thing from the toolbar rather than stuck to it. */
html body #content .al-pane table.listing,
html body #content .al-pane table.pat-datatables { margin-top: 24px; }

/* The density control the script adds to every listing toolbar. */
/* The id prefix and the !important flags are the theme again: it paints
   every button inside #content-core coral, rings it in a coral inset
   box-shadow and shouts it in capitals. This one is meant to be the
   quietest thing in the toolbar. */
#content-core .ai-density,
#content .ai-density,
.ai-density {
  font: 500 12px Inter, system-ui, Arial, sans-serif !important;
  color: #8a837c !important; background: none !important; border: 0 !important;
  cursor: pointer; padding: 4px 0; border-bottom: 1px solid transparent !important;
  white-space: nowrap; box-shadow: none !important; text-transform: none !important;
  letter-spacing: normal !important;
}
#content-core .ai-density:hover,
#content .ai-density:hover { color: #64041f !important; border-bottom-color: #d9c2c8 !important; }
body.docent-dark #content-core .ai-density,
body.docent-dark #content .ai-density { color: #9aa3b2 !important; }
body.docent-dark #content-core .ai-density:hover,
body.docent-dark #content .ai-density:hover { color: #e8c4ce !important; border-bottom-color: #4a3239 !important; }


/* --------------------------------------------------------------------
   List / Board.

   The Workflow Board used to be a tab. It is the same tasks under the
   same filter, so it is a way of looking at the list, not a place to go:
   a two-position switch in the toolbar, sitting quietly beside Compact.

   Every rule fights the theme, which paints #content-core button coral,
   rings it in a 2px inset shadow and uppercases the label.
   -------------------------------------------------------------------- */

.ai-vtog {
  display: inline-flex; align-items: stretch;
  border: 1px solid #DFD9D1; border-radius: 6px; overflow: hidden;
  background: #fff;
}

#content-core .ai-vtog .ai-vt,
#content .ai-vtog .ai-vt,
.ai-vtog .ai-vt {
  font: 500 12px Inter, system-ui, Arial, sans-serif !important;
  color: #8a837c !important; background: none !important;
  border: 0 !important; border-radius: 0 !important;
  box-shadow: none !important; text-transform: none !important;
  letter-spacing: normal !important;
  padding: 4px 11px !important; cursor: pointer; white-space: nowrap;
}
#content-core .ai-vtog .ai-vt + .ai-vt,
#content .ai-vtog .ai-vt + .ai-vt,
.ai-vtog .ai-vt + .ai-vt { border-left: 1px solid #DFD9D1 !important; }

#content-core .ai-vtog .ai-vt:hover,
#content .ai-vtog .ai-vt:hover { color: #64041f !important; }

#content-core .ai-vtog .ai-vt.active,
#content .ai-vtog .ai-vt.active,
.ai-vtog .ai-vt.active {
  color: #64041f !important; background: #FBF4F6 !important; font-weight: 600 !important;
}

body.docent-dark .ai-vtog { background: #1c222c; border-color: #3a4250; }
body.docent-dark #content-core .ai-vtog .ai-vt,
body.docent-dark #content .ai-vtog .ai-vt { color: #9aa3b2 !important; }
body.docent-dark #content-core .ai-vtog .ai-vt + .ai-vt,
body.docent-dark #content .ai-vtog .ai-vt + .ai-vt { border-left-color: #3a4250 !important; }
body.docent-dark #content-core .ai-vtog .ai-vt:hover,
body.docent-dark #content .ai-vtog .ai-vt:hover { color: #e8c4ce !important; }
body.docent-dark #content-core .ai-vtog .ai-vt.active,
body.docent-dark #content .ai-vtog .ai-vt.active {
  color: #e8c4ce !important; background: #2a1f27 !important;
}

/* The pane the switch is not showing. `hidden` alone loses to the
   theme's `display: block` on layout children in a couple of places. */
.ai-viewpane[hidden] { display: none !important; }


/* ====================================================================
   The project dashboard on the home page.

   Two cards answering what somebody asks on a Monday: what needs me, and
   what is coming. Counts alone answer neither, so each card lists the
   actual rows - and there are only ever a few, because a home page is a
   glance and the full list is one click away.

   The only colour is on the overdue rows. Everything else is ink and
   hairlines, which is what makes the red mean something.
   ==================================================================== */

.dash { display: flex; gap: 20px; flex-wrap: wrap; margin: 4px 0 8px; }

.dash-card {
  flex: 1 1 320px; min-width: 300px;
  border: 1px solid #E6E3DD; border-radius: 6px;
  padding: 20px 22px 12px; background: #fff;
}

#content .dash-h {
  font-family: 'Source Serif 4', Georgia, 'Liberation Serif', serif !important;
  font-weight: 400 !important; font-size: 19px !important;
  margin: 0 0 14px !important; padding: 0 !important;
  border: 0 !important; background: none !important; color: #1c1a19;
}
#content .dash-h::before { content: none !important; }

.dash-sub {
  font: 600 10px Inter, system-ui, Arial, sans-serif;
  letter-spacing: .15em; text-transform: uppercase; color: #a29a92;
  margin: 14px 0 2px;
}
.dash-sub:first-of-type { margin-top: 0; }

.dash-row {
  display: flex; align-items: baseline; justify-content: space-between;
  gap: 14px; padding: 9px 0; border-bottom: 1px solid #F1EEEA;
  text-decoration: none; color: #1c1a19; font-size: 13.5px;
}
.dash-row:last-child { border-bottom: 0; }
.dash-row:hover { text-decoration: none; }
.dash-row:hover .dash-t { text-decoration: underline; }
.dash-t { flex: 1 1 auto; }
.dash-w { flex: none; color: #8a837c; font-size: 12.5px; white-space: nowrap; }

/* The one place colour is spent. */
.dash-late .dash-w { color: #8f0f2b; }

.dash-none, .dash-clear {
  font-family: 'Source Serif 4', Georgia, 'Liberation Serif', serif;
  font-style: italic; color: #8a837c; font-size: 13.5px; margin: 2px 0 10px;
}
.dash-clear { margin-top: 10px; }

body.docent-dark .dash-card { background: #171a21; border-color: #2c313c; }
body.docent-dark #content .dash-h { color: #f2e9ec; }
body.docent-dark .dash-sub { color: #7d8794; }
body.docent-dark .dash-row { color: #dfe4ec; border-bottom-color: #23272f; }
body.docent-dark .dash-w { color: #9aa3b2; }
body.docent-dark .dash-late .dash-w { color: #e8909f; }
body.docent-dark .dash-none, body.docent-dark .dash-clear { color: #9aa3b2; }

/* Lately.

   A sentence per row - "Glover updated Fire door inspection" - because a
   list of titles with a date beside them does not say what happened to
   them. The name and the verb are the quiet half: they are context for
   the title, which is the part being looked for and the part that carries
   the link's underline on hover.

   Its own full-width row under the other three, because it answers a
   different question: those are about you, this is about the project.
   ==================================================================== */

.dash-wide { margin-top: 0; }
.dash-wide .dash-card { flex: 1 1 100%; }

/* Two columns of rows, so a row's time stays beside its sentence. The
   rows are flex, which columns do not break; break-inside keeps one from
   being split down the middle at the column edge. */
.dash-cols { column-count: 2; column-gap: 44px; }
.dash-cols .dash-row { break-inside: avoid; -webkit-column-break-inside: avoid; }
/* :last-child is the last of six, which is the bottom of the RIGHT column
   - so the left column ended in a hairline and the right one did not.
   Both keep theirs, and the two columns finish level. */
.dash-cols .dash-row:last-child { border-bottom: 1px solid #F1EEEA; }
body.docent-dark .dash-cols .dash-row:last-child { border-bottom-color: #23272f; }
@media (max-width: 1000px) { .dash-cols { column-count: 1; } }

.dash-act .dash-t { display: block; }
.dash-who { color: #6b635c; }
.dash-did { color: #8a837c; }
.dash-what { color: #1c1a19; }
.dash-act:hover .dash-what { text-decoration: underline; }
/* The whole line is the link, so cancel the blanket rule that would
   underline the name and the verb along with the title. */
.dash-act:hover .dash-t { text-decoration: none; }

body.docent-dark .dash-who { color: #b6bdc9; }
body.docent-dark .dash-did { color: #9aa3b2; }
body.docent-dark .dash-what { color: #dfe4ec; }

/* A band and its count, with a bar to compare them by. The bar is a
   shape, not the reading - the figure is always there beside it, which is
   why the bar can be this quiet. */
.dash-bar {
  display: flex; align-items: center; gap: 12px;
  padding: 7px 0; text-decoration: none; color: #1c1a19; font-size: 13px;
}
.dash-bar:hover { text-decoration: none; }
.dash-bar:hover .dash-bfill { background: #64041f; }
.dash-bl { flex: 0 0 76px; color: #6f6862; }
.dash-btrack {
  flex: 1 1 auto; height: 6px; border-radius: 3px; background: #F1EEEA;
  overflow: hidden;
}
.dash-bfill {
  display: block; height: 100%; border-radius: 3px; background: #C9A9B4;
  transition: background .12s ease;
}
.dash-bn {
  flex: 0 0 28px; text-align: right; color: #8a837c;
  font-variant-numeric: tabular-nums; font-size: 12.5px;
}

body.docent-dark .dash-bar { color: #dfe4ec; }
body.docent-dark .dash-bl { color: #9aa3b2; }
body.docent-dark .dash-btrack { background: #23272f; }
body.docent-dark .dash-bfill { background: #6b4450; }
body.docent-dark .dash-bar:hover .dash-bfill { background: #8a5a67; }
body.docent-dark .dash-bn { color: #9aa3b2; }

/* ====================================================================
   Corner marks.

   One quiet line drawing in the top right of the page card, saying what
   kind of page this is: a checklist on Tasks, a bell on Alerts, a page
   on Notes. It is the only decoration in the product, so it earns its
   place by being almost invisible - the same warm stone as the
   hairlines, at a size that reads as texture from across the room and as
   a drawing only when you look at it.

   Drawn as a CSS mask rather than a background image, so the colour is
   one declaration and the dark theme changes one line instead of eight
   re-encoded SVGs.

   Keyed off the body class Plone already sets for the template, so no
   template gains a line and a page gets its mark by being that page.
   Listings only: a single task or note is a document, and a document
   does not need a label saying it is one.

   Purely decorative, so it is a pseudo-element with no text and no
   pointer events - a screen reader never meets it.
   ==================================================================== */

#content { position: relative; }

#content::after {
  content: '';
  display: none;                      /* only the pages below claim one */
  /* Below the breadcrumb and its hairline (card padding 18px + the crumb
     line + 9px padding + the rule = about 42px). At 14px the mark lay
     across that line on every page (2026-09-09). Beside the title, not
     the trail. */
  position: absolute; top: 50px; right: 20px;
  width: 84px; height: 84px;
  pointer-events: none;
  background-color: #EFEAE4;
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  -webkit-mask-size: contain;     mask-size: contain;
  -webkit-mask-position: center;  mask-position: center;
}

/* A dark card needs the mark lighter than the card, not darker. */
body.docent-dark #content::after { background-color: #262d38; }

/* Narrow enough and the mark would sit on the title rather than beside
   it. A decoration is the first thing to go. */
@media (max-width: 900px) {
  #content::after { display: none !important; }
}

body.template-action-overview #content::after,
body.template-alerts-collection-view #content::after,
body.template-notes-collection-view #content::after,
body.section-meetings.template-card_view #content::after,
body.section-calendar #content::after,
body.template-member-view #content::after,
body.template-tabbed-docmanager-view #content::after,
body.template-feedback-collection-view #content::after,
body.template-sow-overview #content::after {
  display: block;
}

/* Tasks: a checklist */
body.template-action-overview #content::after {
  -webkit-mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><rect x='9' y='7' width='30' height='34' rx='3'/><path d='M15 17l3 3 6-6'/><path d='M28 18h7'/><path d='M15 28h20'/><path d='M15 34h14'/></svg>");
          mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><rect x='9' y='7' width='30' height='34' rx='3'/><path d='M15 17l3 3 6-6'/><path d='M28 18h7'/><path d='M15 28h20'/><path d='M15 34h14'/></svg>");
}
/* Alerts: a bell */
body.template-alerts-collection-view #content::after {
  -webkit-mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M24 9a9 9 0 0 0-9 9v7l-3 5h24l-3-5v-7a9 9 0 0 0-9-9z'/><path d='M20 34a4 4 0 0 0 8 0'/><path d='M24 6v3'/></svg>");
          mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M24 9a9 9 0 0 0-9 9v7l-3 5h24l-3-5v-7a9 9 0 0 0-9-9z'/><path d='M20 34a4 4 0 0 0 8 0'/><path d='M24 6v3'/></svg>");
}
/* Notes: a page with a folded corner */
body.template-notes-collection-view #content::after {
  -webkit-mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M13 8h15l7 7v25H13z'/><path d='M28 8v7h7'/><path d='M19 26h11'/><path d='M19 32h7'/></svg>");
          mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M13 8h15l7 7v25H13z'/><path d='M28 8v7h7'/><path d='M19 26h11'/><path d='M19 32h7'/></svg>");
}
/* Meetings: the icon the meeting cards wear (icons/community_meeting.png).
   It is line art on a transparent ground, so as a mask it comes out the
   way the others do - the same stone, the same size - rather than as a
   faded picture, which is what it first was (2026-09-09) and read as a
   different thing from the marks beside it. The listing only (the
   folder's default page, card_view); a meeting is a document. */
body.section-meetings.template-card_view #content::after {
  -webkit-mask-image: url("../icons/community_meeting.png");
          mask-image: url("../icons/community_meeting.png");
}
/* Calendar: a calendar grid */
body.section-calendar #content::after {
  -webkit-mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><rect x='8' y='11' width='32' height='30' rx='3'/><path d='M8 20h32'/><path d='M17 7v7'/><path d='M31 7v7'/><path d='M16 27h4'/><path d='M26 27h4'/><path d='M16 34h4'/><path d='M26 34h4'/></svg>");
          mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><rect x='8' y='11' width='32' height='30' rx='3'/><path d='M8 20h32'/><path d='M17 7v7'/><path d='M31 7v7'/><path d='M16 27h4'/><path d='M26 27h4'/><path d='M16 34h4'/><path d='M26 34h4'/></svg>");
}
/* Team: two people */
body.template-member-view #content::after {
  -webkit-mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><circle cx='18' cy='16' r='6'/><path d='M7 39c0-6.1 4.9-11 11-11s11 4.9 11 11'/><circle cx='34' cy='19' r='4.5'/><path d='M32 28.6c.7-.2 1.4-.3 2-.3 4.4 0 8 3.6 8 8'/></svg>");
          mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><circle cx='18' cy='16' r='6'/><path d='M7 39c0-6.1 4.9-11 11-11s11 4.9 11 11'/><circle cx='34' cy='19' r='4.5'/><path d='M32 28.6c.7-.2 1.4-.3 2-.3 4.4 0 8 3.6 8 8'/></svg>");
}
/* Documents: two stacked sheets */
body.template-tabbed-docmanager-view #content::after {
  -webkit-mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M19 8h11l8 8v20H19z'/><path d='M30 8v8h8'/><path d='M13 14v26h19'/></svg>");
          mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M19 8h11l8 8v20H19z'/><path d='M30 8v8h8'/><path d='M13 14v26h19'/></svg>");
}
/* Feedback: a speech bubble */
body.template-feedback-collection-view #content::after {
  -webkit-mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M11 11h26a3 3 0 0 1 3 3v15a3 3 0 0 1-3 3H23l-9 6.5V32h-3a3 3 0 0 1-3-3V14a3 3 0 0 1 3-3z'/><path d='M17 19h14'/><path d='M17 25h9'/></svg>");
          mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M11 11h26a3 3 0 0 1 3 3v15a3 3 0 0 1-3 3H23l-9 6.5V32h-3a3 3 0 0 1-3-3V14a3 3 0 0 1 3-3z'/><path d='M17 19h14'/><path d='M17 25h9'/></svg>");
}
/* Scope: a document with a bar chart */
body.template-sow-overview #content::after {
  -webkit-mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M12 8h18l6 6v26H12z'/><path d='M30 8v6h6'/><path d='M18 33v-6'/><path d='M24 33v-12'/><path d='M30 33v-8'/></svg>");
          mask-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M12 8h18l6 6v26H12z'/><path d='M30 8v6h6'/><path d='M18 33v-6'/><path d='M24 33v-12'/><path d='M30 33v-8'/></svg>");
}

/* The priority tint on the page title of the two alternate Task pages
   (ai.pt, compact_view.pt). It used to sit on an <h1> those templates drew
   in the body; the class rides on the header band's own heading now.

   Written out here, with the weight, because two other rules reach the same
   element: the band's title block in tool-bar-viewlet.pt, which sets the
   serif and the size but no colour, and dark mode's
   `body.docent-dark .documentFirstHeading { color: ... !important }`, which
   does - and which the plain `h1.priority-N` rules above cannot beat. Two
   classes plus !important clears both.

   Only 1, 2 and 3 exist: PriorityVocabulary offers no others. The
   h1.priority-x1 / x3 / xx1 rules above are left from a vocabulary that is
   gone. */
h1.documentFirstHeading.priority-1 { color: #F24C3D !important; }
/* Priority 2, light mode. #F2BE22 is a light yellow: it was legible as
   body-sized text, but as a 29px title on a near-white card it measured
   1.73 : 1 against #FFFFFF and 1.63 : 1 against the #FAF8F5 ground - under
   half of what large text needs. #A87400 is the same amber taken down to
   4.07 : 1 on the card and 3.84 : 1 on the ground, which clears the 3 : 1
   large-text bar with room, and stays near Priority 1 (3.57) and Priority 3
   (3.01) in weight so P2 does not read as the heaviest of the three.
   The original stays in dark mode, where it measures 10.95 : 1. */
h1.documentFirstHeading.priority-2 { color: #A87400 !important; }
body.docent-dark h1.documentFirstHeading.priority-2 { color: #F2BE22 !important; }
h1.documentFirstHeading.priority-3 { color: #22A699 !important; }

/* ====================================================================
   The home page: two groups, tasks and meetings.

   It used to be three cards of prose plus two bar charts. The prose was
   carrying the meaning - "4 days late", "1 alert", "No meetings on your
   calendar" - so nothing could be read at a glance, and the charts
   answered a question nobody asks on a home page.

   Now: a sentence naming what is counted, two figures, and underneath,
   the list the sentence promised.

   Colour discipline. The group edge is the project colour at low weight,
   because a group is STRUCTURE. Red belongs to one thing only - a task
   that is actually late - and a coloured group box would have put that
   red tile inside a competing frame.
   ==================================================================== */

.dash-groups {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    align-items: stretch;
}

@media (max-width: 780px) {
    .dash-groups { grid-template-columns: 1fr; }
}

.dash-group {
    border: 1px solid #E0CDD3;
    border-radius: 10px;
    background: #FDFAFA;
    padding: 13px 14px 14px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.dash-glabel {
    font-size: 10.5px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: #8E3A50;
    font-weight: 600;
    margin: 0;
}

/* the sentence — the one place the noun is named in plain English */
.dash-say {
    margin: 0;
    font-size: 15px;
    color: #4A403C;
    line-height: 1.45;
}

.dash-say b { color: #1C1512; font-weight: 600; }

.dash-fig {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 34px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: -.02em;
    color: #1C1512;
    vertical-align: -3px;
    margin-right: 4px;
    font-variant-numeric: tabular-nums;
}

.dash-fig-bad { color: #d03b3b; }
.dash-fig-ok  { color: #0a7a0a; }

.dash-pair {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    align-items: stretch;
}

.dash-tile {
    border: 1px solid #E6DFD9;
    border-radius: 7px;
    padding: 11px 12px 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    background: #fff;
    text-decoration: none !important;
    color: inherit;
}

.dash-tile:hover { border-color: #C9BFB7; }
.dash-tile-bad { border-color: #d03b3b; }

.dash-tname {
    font-size: 10.5px;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: #7C716B;
    font-weight: 600;
    line-height: 1.3;
}

.dash-tfig {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 27px;
    line-height: 1;
    font-weight: 700;
    color: #1C1512;
    font-variant-numeric: tabular-nums;
}

.dash-tile-bad .dash-tfig { color: #d03b3b; }

.dash-tsub { font-size: 11px; color: #7C716B; margin-top: auto; }

/* Status never travels on colour alone - every chip carries its word.
   About one man in twelve cannot separate the red from the green. */
.dash-chip {
    align-self: flex-start;
    font-size: 10.5px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 999px;
    white-space: nowrap;
}

.dash-chip-bad   { background: #FAE7E7; color: #d03b3b; }
.dash-chip-warn  { background: #FDF3DC; color: #8a6100; }
.dash-chip-ok    { background: #E6F4E6; color: #0a7a0a; }
.dash-chip-quiet { background: #F7F2EC; color: #7C716B; }

.dash-list { min-width: 0; }

body.docent-dark .dash-group    { border-color: #4A3A3E; background: #251E1B; }
body.docent-dark .dash-glabel   { color: #C9909F; }
body.docent-dark .dash-say      { color: #D6CBC3; }
body.docent-dark .dash-say b,
body.docent-dark .dash-fig,
body.docent-dark .dash-tfig     { color: #F3ECE6; }
body.docent-dark .dash-fig-bad,
body.docent-dark .dash-tile-bad .dash-tfig { color: #e46a6a; }
body.docent-dark .dash-fig-ok   { color: #3fbe3f; }
body.docent-dark .dash-tile     { background: #2B2421; border-color: #3E3531; }
body.docent-dark .dash-tile-bad { border-color: #e46a6a; }
body.docent-dark .dash-tname,
body.docent-dark .dash-tsub     { color: #A2958D; }
body.docent-dark .dash-chip-bad   { background: #3A2020; color: #e46a6a; }
body.docent-dark .dash-chip-warn  { background: #3A3018; color: #fab219; }
body.docent-dark .dash-chip-ok    { background: #1D3320; color: #3fbe3f; }
body.docent-dark .dash-chip-quiet { background: #241D19; color: #A2958D; }

/* ==========================================================================
   Toolbar tooltips - two lines, the first one bold.

   The catalogue carries two halves per button because Word's ribbon draws a
   bold screentip above the supertip; tip_title joins them with a newline.

   These tooltips are Tippy (`.tooltip-container`, `data-tippy-root`), so the
   text lands in a nested element. `white-space` inherits, but Tippy's own
   stylesheet sets it on the inner box, and an explicit declaration beats an
   inherited one - which is why setting it on the container alone did
   nothing.

   So: every descendant, by the universal selector rather than by class
   name. The inner class names are Tippy's and this file should not have to
   know them - the first attempt at this guessed and was wrong.

   `::first-line` bolds the screentip with no markup at all. It is declared
   at three depths because it applies to the block that directly contains
   the text, and which element that is depends on Tippy's structure.
   ========================================================================== */

.tooltip-container,
.tooltip-container * {
    white-space: pre-line;
}

.tooltip-container::first-line,
.tooltip-container > *::first-line,
.tooltip-container > * > *::first-line {
    font-weight: 700;
}

/* ------------------------------------------------- Alerts tab: the mark

   Each answered due-date question carries a tick or a cross beside it, so
   a column of them can be read down in one pass - a run of ticks is a task
   that has kept its dates, and a cross is where one moved.

   A fixed-width slot, filled or not, so the sentences line up whether the
   entry is an answer or a question still waiting for one. Colour is not
   the only signal: the glyphs differ, and each carries a title. */
.ai-followup-mark {
    display: inline-block;
    width: 1.2em;
    text-align: center;
    font-weight: 700;
    line-height: 1;
}

.ai-followup-ok {
    color: #1d7a45;
}

.ai-followup-late {
    color: #b3261e;
}

/* The same mark on the tab itself. Narrower than the one in the list -
   inside the list it holds a column, here it only has to sit after the
   word without pushing the strip wider than the nine tabs already make
   it. Colour survives the strip's `color: ... !important` above, which is
   what paints every tab black or maroon. */
.pat-autotoc.autotabs .autotoc-nav a .ai-tabmark {
    width: auto;
    margin-left: .3em;
    font-size: .9em;
}

.pat-autotoc.autotabs .autotoc-nav a .ai-followup-ok {
    color: #1d7a45 !important;
}

.pat-autotoc.autotabs .autotoc-nav a .ai-followup-late {
    color: #b3261e !important;
}

/* ============================================================
   The Workflow tab's rail, and the file box on Attachments.

   The rail is what the Activity tab was. That tab listed the workflow
   history - move, time, who, note - beside a diagram that could not say
   when anything happened, so the two were halves of one thing. Putting
   the dates on the arrows finished the diagram; putting the ordering in
   a list above it finished the history, because a lifecycle drawing has
   no reading order once an item has doubled back.

   Colour carries the split. The teal means one thing and one thing only:
   where the item is now - the same #1F5F6E on #EAF4F6 the in-flight state
   chips already wear. Everything that is RECORD - step numbers, the dot
   that says somebody left a note, the opened note itself - is Docent
   maroon on the light maroon this product already uses.

   This was drafted in the stock blue first. That blue is the one this
   stylesheet spent a release getting rid of - it had been doing four
   unrelated jobs under one hex - and a test keeps it out by name, which
   is how the draft was caught. Teal for a state, maroon for anything
   chosen: the rule was already here, and the rail follows it.
   ============================================================ */
.ai-wf-rail {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 12px;
	padding: 9px 10px;
	background: #fbf4f6;
	border: 1px solid #f0dde3;
	border-radius: 7px;
}

.ai-wf-chip {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0;
	padding: 3px 12px 3px 4px;
	background: #fff;
	border: 1px solid #ecdae0;
	border-radius: 20px;
}

/* Where the item is now - the one blue thing on the rail. */
.ai-wf-chip.ai-wf-now { border-color: #1F5F6E; background: #EAF4F6; }

.ai-wf-step {
	display: inline-flex;
	flex: none;
	width: 17px;
	height: 17px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #64041f;
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
}

.ai-wf-move { font-size: 12.5px; font-weight: 600; color: #1a2231;
              white-space: nowrap; }
.ai-wf-at { font-size: 11px; color: #6b7383; white-space: nowrap;
            font-variant-numeric: tabular-nums; }

/* A step that carried a note. The chip becomes the button rather than
   holding one, so the whole chip is the hit area. */
.ai-wf-chip.ai-wf-noted { padding: 0; border: 0; background: none; }

.ai-wf-chipbtn {
	display: flex;
	align-items: center;
	gap: 7px;
	padding: 3px 7px 3px 4px;
	background: #fff;
	border: 1px solid #dcbcc6;
	border-radius: 20px;
	font: inherit;
	color: inherit;
	cursor: pointer;
}

.ai-wf-chipbtn:hover { background: #fdf6f8; border-color: #b98a99; }
.ai-wf-chipbtn:focus-visible { outline: 2px solid #64041f; outline-offset: 2px; }
.ai-wf-chip.ai-wf-now .ai-wf-chipbtn { border-color: #1F5F6E; background: #EAF4F6; }

.ai-wf-plus {
	display: inline-flex;
	flex: none;
	width: 15px;
	height: 15px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #f3e3e8;
	color: #64041f;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
}

.ai-wf-chipbtn[aria-expanded="true"] .ai-wf-plus { background: #64041f; color: #fff; }

/* The note itself: full width of the rail, so the words are not squeezed
   into a chip, and at page size rather than the diagram's - the SVG scales
   down to the content column, and prose drawn inside it comes out small. */
.ai-wf-noterow {
	flex-basis: 100%;
	display: flex;
	gap: 9px;
	align-items: flex-start;
	margin: -1px 0 3px;
	padding: 7px 10px 8px;
	background: #fff;
	border: 1px solid #f0dde3;
	border-left: 3px solid #64041f;
	border-radius: 0 5px 5px 0;
}

.ai-wf-noterow .ai-wf-step { margin-top: 2px; }
.ai-wf-notebody { display: block; }
.ai-wf-noterow blockquote {
	margin: 0;
	max-width: 60ch;
	font-size: 13.5px;
	font-style: italic;
	color: #3a4250;
}
.ai-wf-byline { display: block; margin-top: 3px; font-size: 11.5px; color: #7e8797; }

.ai-wf-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

/* Fold the steps already behind the item. Folded is the default: they are
   history, and the tab is read for what is left to do. */
.ai-wf-viewbar { margin: 0 0 6px; }

/* A quiet text control, not a box. Boxed it read as a second button
   sitting above the row of moves - two things that look pressable, only
   one of which does anything to the task. The eye and the underline on
   hover are enough to say it can be clicked. */
.ai-wf-fold {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 2px 0;
	background: none;
	border: 0;
	font-size: 12.5px;
	font-weight: 600;
	color: #5a6473;
	cursor: pointer;
}

.ai-wf-fold:hover { color: #1F5F6E; text-decoration: underline; }
.ai-wf-fold:focus-visible { outline: 2px solid #1F5F6E; outline-offset: 2px; }
.ai-wf-eye { flex: none; }

/* ------------------------------------------------------------
   Attach a file without going through the edit form.

   One file per task - `attachment` is a single NamedBlobFile - so this
   says "replace" once there is one, rather than implying a list.
   ------------------------------------------------------------ */
.ai-attach-add {
	margin: 14px 0 0;
	padding: 12px 14px;
	background: #fbf4f6;
	border: 1px solid #f0dde3;
	border-radius: 7px;
}

.ai-attach-label {
	display: block;
	margin-bottom: 7px;
	font-size: 12.5px;
	font-weight: 700;
	color: #1a2231;
}

.ai-attach-row { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; }
.ai-attach-file { font-size: 13px; max-width: 100%; }

.ai-attach-go {
	padding: 5px 15px;
	background: #64041f;
	border: 0;
	border-radius: 5px;
	font-size: 12.5px;
	font-weight: 600;
	color: #fff;
	cursor: pointer;
}

.ai-attach-go:hover { background: #8f0f2b; }
.ai-attach-go:focus-visible { outline: 2px solid #64041f; outline-offset: 2px; }

.ai-attach-hint { display: block; margin-top: 7px; font-size: 11.5px; color: #7a736c; }

/* ====================================================================
   Discussions.

   The discussion page is the task page's twin and shares its furniture -
   .ai-headrow, .ai-cols, .ai-rail, .ai-state-chip are all defined above
   and are not repeated here. What follows is only what a discussion has
   and a task does not: the question box, the decision, the position
   tally, the who-has-answered rail, and the listing.

   Colours come from the same four this product already uses: navy
   #123456, crimson #64041f, teal #1f8a8a, and the warm neutrals.
   ==================================================================== */

/* The question, in a box of its own.

   The whole point of the type is that somebody arriving cold can see what
   is being asked without reading three paragraphs of background first, so
   it gets a border and 17px rather than being the first line of the body
   text. */
.ai-question {
	border: 1px solid #ddd6d4;
	border-top: 3px solid #64041f;
	border-radius: 3px;
	background: #fbf9f9;
	padding: 16px 18px;
	margin-bottom: 20px;
}

.ai-question-label,
.ai-decision-label {
	font-size: 0.68rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #6f6668;
	font-weight: 700;
	margin-bottom: 7px;
}

.ai-question-text {
	margin: 0;
	font-size: 1.06rem;
	line-height: 1.45;
	font-weight: 500;
	color: #241f20;
}

/* The decision. Navy rather than crimson: crimson is the question, this is
   the answer, and a page that had both in the same colour read as two
   boxes shouting the same thing. */
.ai-decision {
	border: 1px solid #ddd6d4;
	border-top: 3px solid #123456;
	border-radius: 3px;
	background: #fff;
	padding: 20px 22px;
	margin-bottom: 22px;
}

.ai-decision-by {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	align-items: center;
	margin-top: 14px;
	padding-top: 13px;
	border-top: 1px solid #ddd6d4;
	font-size: 0.83rem;
	color: #4a4344;
}

/* The shape of the thread in one line. Not a scoreboard: the counts are
   the same weight as the words, and nothing here is bigger than the
   comment count it is qualifying. */
.ai-tally {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px;
	border-top: 1px solid #ddd6d4;
	border-bottom: 1px solid #ddd6d4;
	background: #f6f4f3;
	padding: 11px 14px;
	margin: 20px 0 0;
	font-size: 0.83rem;
	color: #4a4344;
}

.ai-tally-total { font-size: 0.92rem; color: #241f20; }
.ai-tally-who { margin-left: auto; }

.ai-tally-item { display: inline-flex; align-items: center; gap: 6px; }

.ai-tally-item::before {
	content: "";
	width: 9px;
	height: 9px;
	border-radius: 999px;
	background: currentColor;
	display: inline-block;
}

/* One colour per position, used by both the tally and the pill the script
   puts on each comment. Darkened from the obvious choices so the text
   clears 4.5:1 on its own fill. */
.ai-pos-support  { color: #1c5c2e; }
.ai-pos-concern  { color: #8f3f11; }
.ai-pos-question { color: #123456; }
.ai-pos-info     { color: #4a4344; }

/* The pill on a comment. Added by action_items.js, so it has to look
   deliberate rather than bolted on: same radius and weight as the state
   chip, sitting in the author row. */
.ai-comment-pos {
	display: inline-block;
	margin-left: 10px;
	padding: 2px 9px;
	border-radius: 999px;
	background: #f1ecee;
	color: #64041f;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	vertical-align: 1px;
	white-space: nowrap;
}

/* The position selector in the comment box. */
.ai-position-select {
	font-size: 0.85rem;
	padding: 5px 9px;
	border: 1px solid #ddd6d4;
	border-radius: 3px;
	background: #fff;
	max-width: 320px;
}

.ai-thread-closed {
	margin: 18px 0 0;
	border: 1px solid #ddd6d4;
	background: #f6f4f3;
	padding: 11px 14px;
	font-size: 0.85rem;
	color: #4a4344;
}

.ai-attach-inline { margin: 16px 0 0; font-size: 0.88rem; }

/* Who has not answered - the part of this page a project manager uses
   most. In the rail, under the dates, because it is the thing you act on
   after reading them. */
.ai-rail-silent {
	border-top: 1px solid #ddd6d4;
	padding: 12px 13px;
}

.ai-rail-silent-hd {
	font-size: 0.68rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #6f6668;
	font-weight: 700;
	margin-bottom: 9px;
}

.ai-rail-silent-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 7px;
	font-size: 0.87rem;
}

.ai-rail-silent-row:last-child { margin-bottom: 0; }

.ai-nudge-one {
	flex: none;
	border: 1px solid #ddd6d4;
	background: #fff;
	color: #1f8a8a;
	border-radius: 3px;
	font-size: 0.72rem;
	font-weight: 700;
	padding: 5px 9px;
	text-decoration: none;
}

.ai-nudge-one:hover,
.ai-nudge-one:focus {
	background: #1f8a8a;
	border-color: #1f8a8a;
	color: #fff;
	text-decoration: none;
}

.ai-rail-overdue {
	display: inline-block;
	margin-left: 7px;
	color: #a3131b;
	font-weight: 700;
	font-size: 0.78rem;
}

/* "Record the decision" is the one action on this page that ends
   something, so it carries the project crimson the way Edit does on a
   task. */
.ai-actions a.ai-decide { color: #64041f; font-weight: 700; }
.ai-actions a.ai-decide:hover,
.ai-actions a.ai-decide:focus { color: #64041f; border-bottom-color: #64041f; }

/* Participants tab. */
.ai-part-lead { font-size: 0.92rem; color: #4a4344; max-width: 60ch; }

.ai-part-table,
.ai-disc-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.88rem;
}

.ai-part-table th,
.ai-disc-table th {
	text-align: left;
	font-size: 0.68rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #6f6668;
	font-weight: 700;
	border-bottom: 1px solid #ddd6d4;
	background: #f6f4f3;
	padding: 11px 14px;
}

.ai-part-table td,
.ai-disc-table td {
	padding: 13px 14px;
	border-bottom: 1px solid #ece7e5;
	vertical-align: top;
}

.ai-part-yes { color: #1c5c2e; font-weight: 600; }
.ai-part-no  { color: #8f3f11; font-weight: 600; }

/* ============ The listing ============ */

.ai-disc-headrow { padding-right: 0; }

.ai-disc-add {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #64041f;
	color: #fff !important;
	border-radius: 3px;
	padding: 11px 19px;
	font-size: 0.9rem;
	font-weight: 700;
	text-decoration: none;
	border-bottom: 0 !important;
}

.ai-disc-add:hover, .ai-disc-add:focus { background: #8f0f2b; text-decoration: none; }

/* The filters are what somebody actually navigates this page with, so they
   sit above the table at full contrast rather than in a sidebar. */
.ai-disc-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin: 0 0 16px;
}

.ai-disc-chip {
	padding: 7px 14px;
	border-radius: 999px;
	border: 1px solid #ddd6d4;
	background: #fff;
	color: #4a4344;
	font-size: 0.82rem;
	font-weight: 500;
	text-decoration: none;
	white-space: nowrap;
}

.ai-disc-chip:hover, .ai-disc-chip:focus {
	border-color: #64041f;
	color: #64041f;
	text-decoration: none;
}

.ai-disc-chip-on {
	background: #64041f;
	border-color: #64041f;
	color: #fff;
	font-weight: 700;
}

.ai-disc-chip-on:hover, .ai-disc-chip-on:focus { color: #fff; }

.ai-disc-title { font-weight: 500; color: #241f20; }
.ai-disc-sub { display: block; font-size: 0.78rem; color: #6f6668; margin-top: 3px; }
.ai-disc-num { font-variant-numeric: tabular-nums; white-space: nowrap; }

.ai-disc-flag {
	display: inline-block;
	margin-left: 7px;
	font-size: 0.72rem;
	font-weight: 700;
	color: #8f3f11;
	white-space: nowrap;
}

.ai-disc-decided { color: #64041f; font-weight: 600; }
.ai-disc-overdue { color: #a3131b; font-weight: 700; }
.ai-disc-empty { padding: 26px 14px; color: #4a4344; }

/* State chips in the listing. The base .ai-state-chip is crimson-on-pink;
   these keep its shape and change what it means at a glance, which is the
   only thing a listing of forty rows can afford. */
.ai-disc-state-open            { background: #e4efe6; color: #1c5c2e; }
.ai-disc-state-comments_closed { background: #fbe9dd; color: #8f3f11; }
.ai-disc-state-draft           { background: #eeeceb; color: #4a4344; }

/* ============ The decide form ============ */

.ai-decide-form { max-width: 720px; }

.ai-decide-question {
	border-left: 0;
	background: #f6f4f3;
	border: 1px solid #ddd6d4;
	border-radius: 3px;
	padding: 11px 14px;
	font-size: 0.95rem;
	color: #241f20;
}

.ai-decide-question-label {
	display: block;
	font-size: 0.68rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #6f6668;
	font-weight: 700;
	margin-bottom: 5px;
}

.ai-decide-hint { font-size: 0.85rem; color: #4a4344; margin: 0 0 9px; }

.ai-decide-warning {
	margin: 12px 0 0;
	font-size: 0.83rem;
	color: #8f3f11;
}

/* The discussion is not on Docent_discussion. Amber rather than red: the
   page works, the feature is half there, and somebody has a thing to do. */
.ai-wf-wrong {
	border: 1px solid #ddd6d4;
	border-top: 3px solid #b4551b;
	border-radius: 3px;
	background: #fdf6f1;
	padding: 13px 15px;
	margin: 0 0 16px;
	font-size: 0.88rem;
	line-height: 1.55;
	color: #4a4344;
}

.ai-wf-wrong strong { display: block; color: #8f3f11; margin-bottom: 4px; }
