@charset "UTF-8";
/* AuthorWings Portal: portal app, Team page, profiles and forms.
 * Colors follow docs/design-notes.md. Everything is scoped to .awg-ptl. */
.awg-ptl {
	/* Same cool sage palette as the Our Team and Careers pages (6.25.37). */
	--navy: #1C2439; --navy-hover: #2A3552; --sage: #5C7A6B; --sage-soft: #E5EDE7; --mint: #B8D3C1;
	--base: #F4F7F4; --beige: #E5EDE7; --cream: #FBFCFB; --body: #2E3445; --muted: #5D6675;
	--line: #DCE4DE; --gold: #A8773A; --err: #B42318;
	--serif: var(--gp-font--lora, "Lora"), Georgia, serif;
	--sans: var(--gp-font--inter, "Inter"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-family: var(--sans); color: var(--body); line-height: 1.55; text-align: left;
	box-sizing: border-box;
}
.awg-ptl *, .awg-ptl *::before, .awg-ptl *::after { box-sizing: border-box; }
.awg-ptl-team, .awg-ptl-profile, .awg-ptl-app { container-type: inline-size; }
.awg-ptl h1, .awg-ptl h2, .awg-ptl h3, .awg-ptl h4 { font-family: var(--serif); font-weight: 600; color: var(--navy); line-height: 1.15; margin: 0 0 .4em; text-transform: none; letter-spacing: 0; }
.awg-ptl p { margin: 0 0 .8em; }
.awg-ptl a { color: var(--navy); }
.awg-ptl :focus-visible { outline: 3px solid var(--sage); outline-offset: 2px; }
.awg-ptl [hidden] { display: none !important; }
.awg-ptl-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* Buttons and small bits */
.awg-ptl-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 11px 20px; border-radius: 9px; border: 0; background: var(--navy); color: #fff !important; font: 600 15px var(--sans); text-decoration: none !important; cursor: pointer; white-space: nowrap; }
.awg-ptl-btn:hover { background: var(--navy-hover); }
.awg-ptl-btn[disabled] { opacity: .55; cursor: default; }
.awg-ptl-btn.is-line { background: transparent; color: var(--navy) !important; box-shadow: inset 0 0 0 1.5px var(--navy); }
.awg-ptl-btn.is-line:hover { background: var(--navy); color: #fff !important; }
.awg-ptl-link { background: none; border: 0; padding: 6px 2px; color: var(--navy); font: 600 14.5px var(--sans); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.awg-ptl-small { font-size: 13.5px; color: var(--muted); }
.awg-ptl-kicker { display: block; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--sage); }
.awg-ptl-msg { min-height: 1.2em; font-size: 14px; color: var(--sage); margin: 8px 0 0; }
.awg-ptl-msg.is-error { color: var(--err); }
.awg-ptl-count { display: inline-grid; place-items: center; min-width: 20px; height: 20px; padding: 0 6px; margin-left: 6px; border-radius: 999px; background: #C26D4F; color: #fff; font-size: 12px; font-weight: 700; line-height: 1; }
.awg-ptl-status { display: inline-block; font-size: 12.5px; font-weight: 600; border-radius: 999px; padding: 3px 11px; background: var(--beige); color: var(--navy); white-space: nowrap; }
.awg-ptl-status.st-active, .awg-ptl-status.st-accepted, .awg-ptl-status.st-signed, .awg-ptl-status.st-countersigned { background: var(--sage-soft); color: #2f4a3d; }
.awg-ptl-status.st-delivered, .awg-ptl-status.st-completed { background: #E6F0E8; color: #2F6B45; }
.awg-ptl-status.st-quoted, .awg-ptl-status.st-sent, .awg-ptl-status.st-viewed { background: #F3E6CF; color: #7a561f; }
.awg-ptl-status.st-cancelled, .awg-ptl-status.st-declined { background: #F1E6DF; color: #8B4A4A; }
.awg-ptl-note { background: var(--cream); border: 1px solid var(--line); border-radius: 12px; padding: 18px 20px; }
.awg-ptl-note .awg-ptl-btn { margin-left: 10px; }

/* Forms */
.awg-ptl-form { display: grid; gap: 14px; }
.awg-ptl-form label { display: grid; gap: 6px; font-size: 13.5px; font-weight: 600; color: var(--navy); }
.awg-ptl-form label small { font-weight: 400; color: var(--muted); }
.awg-ptl-form input[type=text], .awg-ptl-form input[type=email], .awg-ptl-form input[type=url], .awg-ptl-form select, .awg-ptl-form textarea {
	width: 100%; font: 400 15px var(--sans); padding: 11px 13px; border: 1.5px solid var(--line); border-radius: 10px; background: var(--cream); color: var(--navy); margin: 0;
}
.awg-ptl-form textarea { min-height: 96px; resize: vertical; }
.awg-ptl-form input:focus, .awg-ptl-form select:focus, .awg-ptl-form textarea:focus { outline: none; border-color: var(--sage); background: #fff; }
.awg-ptl-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.awg-ptl-check { display: flex !important; gap: 10px; align-items: flex-start; font-weight: 400 !important; color: var(--muted) !important; }
.awg-ptl-check input { margin-top: 3px; accent-color: var(--navy); }
.awg-ptl-form .awg-ptl-btn { width: 100%; }
.awg-ptl-form label.awg-ptl-btn { display: inline-flex; width: auto; font-size: 15px; color: var(--navy) !important; gap: 0; }
.awg-ptl-form label.awg-ptl-btn:hover { color: #fff !important; }
.awg-ptl-upload > span:first-child { font-size: 13.5px; font-weight: 600; color: var(--navy); flex-basis: 100%; }
.awg-ptl-done { display: grid; justify-items: center; text-align: center; gap: 8px; padding: 24px 12px; }
.awg-ptl-done span { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; background: var(--sage); color: #fff; font-size: 22px; }
.awg-ptl-done p { margin: 0; font-size: 16px; color: var(--navy); }
.awg-ptl-done h3 { margin: 4px 0 0; font-size: 20px; color: var(--navy); }
.awg-ptl-done .awg-ptl-btn { margin-top: 8px; text-decoration: none; }
.awg-ptl-join { background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 28px; }

/* Portal: login */
.awg-ptl-app { max-width: 980px; margin: 0 auto; }
.awg-ptl-login { max-width: 440px; margin: 20px auto; background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 30px; box-shadow: 0 30px 56px -36px rgba(28,36,57,.5); }
.awg-ptl-login h2 { font-size: 26px; }
.awg-ptl-code { font-size: 26px !important; letter-spacing: .4em; text-align: center; font-variant-numeric: tabular-nums; }
.awg-ptl-links { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-top: 10px; }

/* Portal: shell */
.awg-ptl-top { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; margin-bottom: 14px; }
.awg-ptl-top h2 { font-size: 28px; margin: 4px 0 0; }
.awg-ptl-nav { display: flex; gap: 4px; flex-wrap: wrap; border-bottom: 1px solid var(--line); margin-bottom: 22px; }
.awg-ptl-nav button { background: none; border: 0; border-bottom: 3px solid transparent; padding: 10px 14px; font: 600 15px var(--sans); color: var(--muted); cursor: pointer; display: inline-flex; align-items: center; }
.awg-ptl-nav button.on { color: var(--navy); border-bottom-color: var(--navy); }
.awg-ptl-empty { text-align: center; padding: 40px 16px; background: #fff; border: 1px dashed var(--line); border-radius: 14px; }
.awg-ptl-loading { color: var(--muted); }
.awg-ptl-box { background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 20px; margin-bottom: 16px; }
.awg-ptl-pre, #awg-ptl-app .awg-ptl-pre { white-space: pre-wrap; margin: 0; font-size: 14.5px; line-height: 1.6; } /* 6.26.115: its own size, so a theme with large paragraphs does not enlarge it. */

/* Lists */
.awg-ptl-list { display: grid; gap: 10px; }
.awg-ptl-item { display: flex; justify-content: space-between; align-items: center; gap: 14px; width: 100%; text-align: left; background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 16px 18px; font: inherit; color: inherit; cursor: pointer; }
div.awg-ptl-item { cursor: default; }
/* Themes colour every button on hover (GeneratePress fills it dark); a project row stays white. */
button.awg-ptl-item:hover, button.awg-ptl-item:focus, button.awg-ptl-item:active { background: #fff; color: inherit; border-color: var(--sage); }
.awg-ptl-item__main { display: grid; gap: 2px; min-width: 0; }
.awg-ptl-item__main strong { font-family: var(--serif); font-size: 17.5px; color: var(--navy); font-weight: 600; }
.awg-ptl-item__main small { color: var(--muted); font-size: 13.5px; }
.awg-ptl-item__side { display: flex; align-items: center; gap: 10px; flex: none; }

/* Project */
.awg-ptl-back { margin-bottom: 8px; }
.awg-ptl-phead { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-bottom: 12px; }
.awg-ptl-phead h3 { font-size: 22px; margin: 0; }
.awg-ptl-tabs { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 14px; }
.awg-ptl-tabs button { background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 7px 14px; font: 600 14px var(--sans); color: var(--muted); cursor: pointer; display: inline-flex; align-items: center; }
.awg-ptl-tabs button.on { background: var(--navy); border-color: var(--navy); color: #fff; }

/* Chat */

/* Files and calls */
.awg-ptl-upload { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 8px; }
.awg-ptl-file { position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden; }
.awg-ptl-files, .awg-ptl-calls { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 8px; }
.awg-ptl-files li, .awg-ptl-calls li { display: flex; justify-content: space-between; align-items: center; gap: 12px; background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 12px 16px; }
.awg-ptl-files li > span, .awg-ptl-calls li > span { display: grid; gap: 2px; min-width: 0; }
.awg-ptl-files strong, .awg-ptl-calls strong { color: var(--navy); overflow-wrap: anywhere; }
.awg-ptl-files small, .awg-ptl-calls small { color: var(--muted); font-size: 13px; }
.awg-ptl-box h4 { font-size: 18px; }

/* Quotes */
.awg-ptl-actions { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.awg-ptl-actions .awg-ptl-btn { width: auto; }

/* Team page */
.awg-ptl-teamhead { margin: 0 0 30px; max-width: 760px; }
.awg-ptl-teamhead h2 { font-size: clamp(30px, 4vw, 44px); margin: 10px 0 12px; }
.awg-ptl-teamhead p { font-size: 17px; color: var(--muted); }
.awg-ptl-teampoints { list-style: none; margin: 14px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 20px; font-size: 14.5px; color: var(--navy); font-weight: 600; }
.awg-ptl-teampoints li { display: inline-flex; align-items: center; gap: 7px; margin: 0; }
.awg-ptl-teampoints li::before { content: "\2713"; color: var(--sage); font-weight: 700; }
.awg-ptl-filters { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 22px; }
.awg-ptl-filters button { font: 600 14px var(--sans); padding: 8px 16px; border-radius: 999px; border: 1px solid var(--line); background: #fff; color: var(--muted); cursor: pointer; }
.awg-ptl-filters button.on { background: var(--navy); border-color: var(--navy); color: #fff; }
.awg-ptl-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.awg-ptl-card { display: flex; flex-direction: column; gap: 12px; background: #fff; border: 1px solid var(--line); border-top: 4px solid var(--c, var(--sage)); border-radius: 14px; padding: 20px; text-decoration: none !important; color: inherit; transition: box-shadow .2s, transform .2s; }
.awg-ptl-card:hover { box-shadow: 0 24px 40px -30px rgba(28,36,57,.55); transform: translateY(-2px); }
.awg-ptl-card__top { display: flex; gap: 14px; align-items: center; }
.awg-ptl-card__top > span { display: grid; gap: 1px; min-width: 0; }
.awg-ptl-card strong { font-family: var(--serif); font-size: 19px; color: var(--navy); font-weight: 600; }
.awg-ptl-card em { font-style: normal; font-size: 14px; font-weight: 600; color: var(--c, var(--sage)); }
.awg-ptl-card small { font-size: 13px; color: var(--muted); }
.awg-ptl-card__bio { font-size: 14.5px; color: var(--muted); }
.awg-ptl-card__foot { display: flex; gap: 16px; align-items: center; margin-top: auto; border-top: 1px solid var(--line); padding-top: 12px; font-size: 13px; color: var(--muted); }
.awg-ptl-card__foot b { color: var(--navy); font-size: 15px; }
.awg-ptl-av { margin-left: auto; font-size: 12px; font-weight: 700; color: #2F6B45; background: #E6F0E8; border-radius: 999px; padding: 3px 10px; }
.awg-ptl-av.is-busy { color: #7a561f; background: #F3E6CF; }
.awg-ptl-av-img { border-radius: 50%; object-fit: cover; flex: none; }
.awg-ptl-av-txt { flex: none; border-radius: 50%; display: grid; place-items: center; background: var(--c, var(--sage)); color: #fff; font: 600 22px var(--serif); }
.awg-ptl-chips { display: flex; gap: 6px; flex-wrap: wrap; margin: 0; }
.awg-ptl-chips i { font-style: normal; font-size: 12.5px; font-weight: 600; color: var(--navy); background: var(--cream); border: 1px solid var(--line); border-radius: 999px; padding: 3px 11px; }
.awg-ptl-safe { margin-top: 22px; font-size: 13.5px; color: var(--muted); }

.awg-ptl-profile section { margin-bottom: 26px; }
.awg-ptl-profile section h2 { font-size: 22px; }
.awg-ptl-book { margin: 0; }
.awg-ptl-book img { display: flex; width: 100%; aspect-ratio: 2 / 3; object-fit: cover; border-radius: 4px; box-shadow: 0 12px 20px -14px rgba(28,36,57,.75); }
.awg-ptl-book figcaption { font-size: 12.5px; color: var(--muted); margin-top: 8px; }
.awg-ptl-book figcaption b { display: block; color: var(--navy); font-size: 13.5px; }
.awg-ptl-request { background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px; box-shadow: 0 30px 56px -36px rgba(28,36,57,.5); }
.awg-ptl-request h2 { font-size: 21px; }

/* Chat extras, reviews */
.awg-ptl-cbtns { display: flex; gap: 8px; align-items: center; }
.awg-ptl-stars { display: flex; gap: 4px; margin: 4px 0 12px; }
.awg-ptl-stars button { background: none; border: 0; font-size: 30px; line-height: 1; color: var(--line); cursor: pointer; padding: 0 2px; }
.awg-ptl-stars button.on { color: var(--gold); }
.awg-ptl-starline { color: var(--gold); letter-spacing: 2px; }
.awg-ptl-reviewbox { border-color: var(--gold); }
.awg-ptl-rating { display: inline-flex; align-items: center; gap: 4px; font-weight: 700; color: var(--navy); }
.awg-ptl-rating b { color: var(--gold); }

/* Sign-in / create-account box */
html.awg-ptl-noscroll { overflow: hidden; }
.awg-ptl-auth-overlay { position: fixed; inset: 0; z-index: 99999; background: rgba(28,36,57,.48); display: grid; place-items: center; padding: 16px; }
.awg-ptl-auth { position: relative; width: 100%; max-width: 420px; background: #fff; border-radius: 18px; padding: 30px; box-shadow: 0 40px 80px -30px rgba(28,36,57,.7); font-family: var(--sans); color: var(--body); max-height: calc(100vh - 32px); overflow-y: auto; }
.awg-ptl-auth.is-inline { margin: 20px auto; border: 1px solid var(--line); box-shadow: 0 30px 56px -36px rgba(28,36,57,.5); max-height: none; overflow: visible; } /* On the page the card never scrolls inside itself; the page scrolls (6.25.136). */
.awg-ptl-auth h2 { font-size: 26px; margin: 6px 0 6px; }
.awg-ptl-auth__x { position: absolute; right: 16px; top: 14px; width: 34px; height: 34px; border-radius: 50%; border: 1px solid var(--line); background: #fff; color: var(--muted); font-size: 18px; line-height: 1; cursor: pointer; }
.awg-ptl-auth__tabs { display: grid; grid-template-columns: 1fr 1fr; background: var(--beige); border-radius: 10px; padding: 4px; margin: 0 44px 20px 0; }
.awg-ptl-auth.is-inline .awg-ptl-auth__tabs { margin-right: 0; }
.awg-ptl-auth__tabs button { border: 0; background: none; padding: 9px; border-radius: 7px; font: 600 14px var(--sans); color: var(--muted); cursor: pointer; }
.awg-ptl-auth__tabs button.on { background: #fff; color: var(--navy); box-shadow: 0 2px 6px rgba(28,36,57,.12); }
.awg-ptl-auth__sub { font-size: 14.5px; color: var(--muted); margin: 0 0 18px; }
.awg-ptl-auth__sub strong { color: var(--navy); }
.awg-ptl-auth__google { min-height: 44px; display: flex; justify-content: center; }
/* Google's button frame is 20px wider than the button (10px each side, pulled in with negative margins). A theme rule
 * such as "iframe { max-width: 100% }" (GeneratePress has one) squeezes the frame and cuts the right edge of the button off (6.25.136). */
.awg-ptl-auth__google iframe { max-width: none !important; }
.awg-ptl-auth__li { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; max-width: 400px; min-height: 42px; margin: 10px auto 0; padding: 8px 14px; border: 1px solid #dadce0; border-radius: 4px; background: #fff; color: #1f1f1f !important; font: 500 14px/1.2 var(--sans); text-decoration: none !important; box-sizing: border-box; }
.awg-ptl-auth__li:hover, .awg-ptl-auth__li:focus-visible { background: #f7f9fc; border-color: #c4c7c5; }
.awg-ptl-auth__li-logo { width: 20px; height: 20px; border-radius: 3px; background: #0A66C2; color: #fff; display: grid; place-items: center; font: 700 12px/1 Arial, sans-serif; flex: none; }
.awg-ptl-auth__or { display: flex; align-items: center; gap: 12px; margin: 16px 0; color: var(--muted); font-size: 13px; }
.awg-ptl-auth__or::before, .awg-ptl-auth__or::after { content: ""; flex: 1; height: 1px; background: var(--line); }
.awg-ptl-auth__form { display: grid; gap: 12px; }
.awg-ptl-auth__form label { display: grid; gap: 6px; font-size: 13.5px; font-weight: 600; color: var(--navy); }
.awg-ptl-auth__form input[type=text], .awg-ptl-auth__form input[type=email] { width: 100%; height: 48px; font: 400 15px var(--sans); padding: 0 14px; border: 1.5px solid var(--line); border-radius: 10px; background: var(--cream); color: var(--navy); margin: 0; }
.awg-ptl-auth__form input:focus { outline: none; border-color: var(--sage); background: #fff; }
.awg-ptl-auth__form .awg-ptl-btn { width: 100%; min-height: 50px; }
.awg-ptl-auth__form .awg-ptl-check a { color: var(--navy); }
.awg-ptl-auth__code { display: flex; gap: 8px; justify-content: center; margin: 4px 0 8px; }
.awg-ptl-auth__code input { width: 48px !important; height: 58px !important; padding: 0 !important; text-align: center; font: 600 26px var(--serif) !important; border: 1.5px solid var(--line); border-radius: 10px; background: var(--cream); color: var(--navy); }
.awg-ptl-auth__code input:focus { outline: none; border-color: var(--sage); background: #fff; }
.awg-ptl-auth__note { text-align: center; margin: 12px 0 0; }
.awg-ptl-auth__foot { text-align: center; font-size: 14px; color: var(--muted); margin: 14px 0 0; }
.awg-ptl-auth__foot a { font-weight: 600; color: var(--navy); }
@media (max-width: 600px) {
	.awg-ptl-auth-overlay { place-items: end stretch; padding: 0; }
	.awg-ptl-auth:not(.is-inline) { max-width: none; border-radius: 20px 20px 0 0; padding: 24px 20px 28px; max-height: 92vh; }
	.awg-ptl-auth__code input { width: 42px !important; height: 52px !important; }
}

/* Header menu link */
.awg-ptl-menu { display: inline-flex; align-items: center; font-weight: 600; text-decoration: none; }
.awg-ptl-menu--in { border: 1.5px solid currentColor; border-radius: 9px; padding: 8px 16px; }

@container (max-width: 860px) {
	.awg-ptl-grid { grid-template-columns: 1fr 1fr; }
}
@container (max-width: 560px) {
	.awg-ptl-grid, .awg-ptl-row { grid-template-columns: 1fr; }
	.awg-ptl-item { flex-direction: column; align-items: flex-start; }
	.awg-ptl-files li, .awg-ptl-calls li { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 900px) {
	.awg-ptl-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
	.awg-ptl-grid, .awg-ptl-row { grid-template-columns: 1fr; }
	.awg-ptl-login, .awg-ptl-join, .awg-ptl-request { padding: 20px; }
	.awg-ptl-item { flex-direction: column; align-items: flex-start; }
	.awg-ptl-item__side { flex-wrap: wrap; }
	.awg-ptl-files li, .awg-ptl-calls li { flex-direction: column; align-items: flex-start; }
	.awg-ptl-top h2 { font-size: 23px; }
	.awg-ptl-nav button { padding: 9px 10px; font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
	.awg-ptl-card { transition: none; }
	.awg-ptl-card:hover { transform: none; }
}


/* ===== Portal page: its own clean layout (views/portal-page.php) ===== */
body.awg-ptl-standalone { margin: 0 !important; padding: 0 !important; background: #F4F7F4 !important; }
.awg-ptl-shell { min-height: 100vh; display: flex; flex-direction: column; background: var(--base); }
.awg-ptl-shell__main { flex: 1; width: 100%; max-width: 1180px; margin: 0 auto; padding: 34px 24px 40px; }
.awg-ptl-bar { background: #fff; border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 50; }
.admin-bar .awg-ptl-bar { top: 32px; }
.awg-ptl-bar__in { max-width: 1180px; margin: 0 auto; height: 84px; padding: 0 24px; display: flex; align-items: center; gap: 18px; }
.awg-ptl-logo { display: flex; align-items: center; text-decoration: none !important; flex: none; }
.awg-ptl-logo img { height: 50px; width: auto; display: block; }
.awg-ptl-logo span { font: 600 24px var(--serif); color: var(--navy); }
.awg-ptl-bar__slot { flex: 1; display: flex; align-items: center; justify-content: space-between; gap: 16px; min-width: 0; }
.awg-ptl-backsite { margin-left: auto; font-weight: 600; font-size: 14.5px; color: var(--navy) !important; text-decoration: none !important; white-space: nowrap; }
.awg-ptl-barnav { display: flex; gap: 4px; margin: 0 auto; }
.awg-ptl-barnav button { display: inline-flex; align-items: center; background: none; border: 0; padding: 8px 14px; border-radius: 8px; font: 600 14.5px var(--sans); color: var(--muted); cursor: pointer; }
.awg-ptl-barnav button.on { background: var(--base); color: var(--navy); }
.awg-ptl-user { display: flex; align-items: center; gap: 10px; position: relative; }
.awg-ptl-avatar { width: 36px; height: 36px; min-width: 0; min-height: 0; padding: 0 !important; margin: 0; border-radius: 50%; border: 0; background: var(--sage); color: #fff; display: inline-grid; place-items: center; font: 600 13px/1 var(--sans); letter-spacing: .02em; text-align: center; overflow: hidden; cursor: pointer; flex: none; box-shadow: none; }
.awg-ptl-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.awg-ptl-avatar.is-big { width: 64px; height: 64px; font-size: 24px; cursor: default; }
.awg-ptl-user__name { font-weight: 600; font-size: 14px; color: var(--navy); white-space: nowrap; }
.awg-ptl-user__out.awg-ptl-link { font-weight: 600; font-size: 13.5px; line-height: 1; color: var(--navy); text-decoration: none; border: 1px solid var(--line); border-radius: 999px; padding: 8px 14px !important; background: #fff; }
.awg-ptl-user__out.awg-ptl-link:hover, .awg-ptl-user__out.awg-ptl-link:focus-visible { border-color: var(--navy); background: var(--cream); }
.awg-ptl-menubtn { display: none; width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 10px; background: #fff; font-size: 18px; color: var(--navy); cursor: pointer; }
.awg-ptl-menupanel { position: absolute; right: 0; top: 48px; min-width: 220px; background: #fff; border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 24px 40px -24px rgba(28,36,57,.5); padding: 6px; display: grid; }
.awg-ptl-menupanel[hidden] { display: none; }
.awg-ptl-menupanel button, .awg-ptl-menupanel a { text-align: left; background: none; border: 0; padding: 11px 12px; border-radius: 8px; font: 600 15px var(--sans); color: var(--navy); text-decoration: none; cursor: pointer; }
.awg-ptl-menupanel button:hover, .awg-ptl-menupanel a:hover { background: var(--base); }
.awg-ptl-hello { display: flex; justify-content: space-between; align-items: flex-end; gap: 14px; margin: 0 0 22px; }
.awg-ptl-hello h1 { font-size: clamp(26px, 3.4vw, 32px); margin: 0; }
.awg-ptl-hello p { margin: 4px 0 0; color: var(--muted); }
.awg-ptl-hello .awg-ptl-btn { width: auto; }
.awg-ptl-dash { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 20px; align-items: start; }
.awg-ptl-dash .awg-ptl-box { margin: 0; }
.awg-ptl-dash h3 { font-size: 18px; margin-bottom: 12px; }
.awg-ptl-dash .awg-ptl-item { border-radius: 12px; }
.awg-ptl-todo__row { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 11px 0; border-top: 1px solid var(--line); }
.awg-ptl-todo__row:first-child { border-top: 0; padding-top: 2px; }
.awg-ptl-todo__row span { display: grid; gap: 2px; min-width: 0; }
.awg-ptl-todo__row b { color: var(--navy); font-size: 14.5px; }
.awg-ptl-todo__row small { color: var(--muted); font-size: 12.5px; overflow-wrap: anywhere; }
.awg-ptl-sbtn { flex: none; font: 600 13px var(--sans); color: var(--navy) !important; background: #fff; border: 1.5px solid var(--navy); border-radius: 8px; padding: 5px 12px; cursor: pointer; text-decoration: none !important; }
.awg-ptl-sbtn:hover { background: var(--navy); color: #fff !important; }
.awg-ptl-account { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.awg-ptl-account strong { font: 600 20px var(--serif); color: var(--navy); }
.awg-ptl-account .awg-ptl-actions { margin-left: auto; }
.awg-ptl-trust { display: flex; justify-content: center; gap: 18px; flex-wrap: wrap; margin: 4px 0 0; font-size: 13px; color: var(--muted); }
.awg-ptl-trust span::before { content: "\2713  "; color: var(--sage); font-weight: 700; }
.awg-ptl-legal { text-align: center; font-size: 12.5px; color: var(--muted); padding: 18px 16px 26px; }
.awg-ptl-legal a { color: var(--muted) !important; }
.awg-ptl-tabbar { display: none; }
.awg-ptl-standalone .awg-ptl-app { max-width: none; }
.awg-ptl-standalone .awg-ptl-auth.is-inline { margin-top: 30px; }
@media (max-width: 760px) {
	.awg-ptl-bar__in { height: 66px; padding: 0 16px; }
	.awg-ptl-logo img { height: 40px; }
	.awg-ptl-barnav, .awg-ptl-user__name, .awg-ptl-user__out { display: none; }
	.awg-ptl-menubtn { display: grid; place-items: center; }
	.awg-ptl-bar__slot { justify-content: flex-end; }
	.awg-ptl-shell__main { padding: 22px 16px 96px; }
	.awg-ptl-hello { flex-direction: column; align-items: flex-start; }
	.awg-ptl-dash { grid-template-columns: minmax(0, 1fr); }
	.awg-ptl-account .awg-ptl-actions { margin-left: 0; width: 100%; }
	.awg-ptl-tabbar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: #fff; border-top: 1px solid var(--line); justify-content: space-around; padding: 6px 0 calc(10px + env(safe-area-inset-bottom)); }
	.awg-ptl-tabbar button { position: relative; display: grid; justify-items: center; gap: 2px; background: none; border: 0; font: 600 11.5px var(--sans); color: var(--muted); padding: 4px 8px; cursor: pointer; }
	.awg-ptl-tabbar button i { font-style: normal; font-size: 18px; line-height: 1.2; }
	.awg-ptl-tabbar button.on { color: var(--navy); }
	.awg-ptl-tabbar .awg-ptl-count { position: absolute; top: -2px; right: 0; min-width: 17px; height: 17px; font-size: 10px; margin: 0; }
	.awg-ptl-standalone .awg-ptl-legal { padding-bottom: 90px; }
}
@media (max-width: 782px) { .admin-bar .awg-ptl-bar { top: 46px; } }

/* 6.21.2 */
.awg-ptl-status.st-replaced { background: #E5EDE7; color: #5D6675; }
.awg-ptl-status.st-expired { background: #E5EDE7; color: #5D6675; }
.awg-ptl-callnote { margin: 10px 0 16px; }

/* 6.22.0: chat look */

/* ---------- Profile page (6.25.6) ---------- */
.awg-pf { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 26px; align-items: start; }
.awg-pf-main { display: grid; gap: 20px; margin: 0; }
.awg-pf-head { display: flex; justify-content: space-between; align-items: center; gap: 14px; flex-wrap: wrap; margin: -6px 0 20px; }
.awg-pf-intro { margin: 0; color: var(--muted); font-size: 15px; }
.awg-pf-headr { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.awg-pf-chip { display: inline-flex; align-items: center; gap: 6px; border-radius: 999px; padding: 5px 12px; font-size: 13px; font-weight: 600; background: var(--beige); color: var(--navy); }
.awg-pf-chip.is-review, .awg-pf-chip.is-draft { background: #F6E7CF; color: #7A5418; }
.awg-pf-chip.is-live { background: var(--sage-soft); color: #2F5141; }
.awg-pf-live { font-weight: 600; font-size: 14px; color: var(--navy); }
.awg-pf-phase { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; }
.awg-pf-phase strong { flex-basis: 100%; }
.awg-pf-phase span { flex: 1 1 320px; }
.awg-pf-phase .awg-ptl-btn { min-height: 40px; padding: 8px 18px; }
.awg-pf-phase.is-sign { background: #EEF5F0; border-color: #BFD8C8; color: #234534; }
.awg-pf-phase.is-changes { background: #FEF3F2; border-color: #F4C7C3; color: #7A271A; }
.awg-pf-phase.is-live { background: #EEF5F0; border-color: #BFD8C8; color: #234534; }
.awg-pf.is-locked .awg-pf-main { opacity: .72; }
.awg-pf.is-locked .awg-pf-add, .awg-pf.is-locked .awg-pf-newbook, .awg-pf.is-locked .awg-pf-del, .awg-pf.is-locked .awg-pf-btns, .awg-pf.is-locked .awg-pf-cam { display: none !important; }
.awg-pf-lockbox p { margin: 0; padding: 14px; border-radius: 12px; background: #F4F7F4; color: var(--muted); font-size: 13.5px; text-align: left; }
.awg-pf-errbox { margin: 0 0 18px; background: #FEF3F2; border: 1px solid #F4C7C3; border-left: 4px solid var(--err); border-radius: 12px; padding: 14px 16px; color: #7A271A; font-size: 14.5px; }
.awg-pf-errbox strong { display: block; margin-bottom: 6px; color: var(--err); }
.awg-pf-errbox ul { margin: 0 0 6px; padding-left: 20px; }
.awg-pf-errbox li { margin: 3px 0; }
.awg-pf-errbox small { color: #7A271A; opacity: .85; }
.awg-pf-errbox .awg-pf-errlink, .awg-pf-errbox .awg-pf-errlink:hover, .awg-pf-errbox .awg-pf-errlink:focus { background: none !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; color: #7A271A !important; font: inherit !important; text-decoration: underline !important; cursor: pointer; min-height: 0 !important; }
.awg-pf-bad input, .awg-pf-bad textarea { border-color: var(--err) !important; box-shadow: 0 0 0 3px rgba(180, 35, 24, .12) !important; }
.awg-pf-bad .awg-pf-photo { box-shadow: 0 0 0 3px var(--err); }
.awg-pf-photorow.awg-pf-bad { flex-wrap: wrap; }
.awg-pf-photorow > .awg-pf-errtxt { flex-basis: 100%; margin-top: -8px; }
.awg-pf-errtxt { display: block; color: var(--err); font-size: 12.5px; font-weight: 600; margin-top: 6px; }
.awg-pf-note { margin: -8px 0 18px; background: #FBF3E4; border: 1px solid #EBD9B6; border-radius: 12px; padding: 10px 14px; font-size: 14px; color: #6B4E1E; }
.awg-pf-card { background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 24px; min-width: 0; }
.awg-pf-card h2 { display: flex; align-items: center; gap: 10px; font: 600 20px/1.2 var(--serif); color: var(--navy); margin: 0 0 4px; }
.awg-pf-n { width: 26px; height: 26px; border-radius: 50%; background: var(--sage-soft); color: var(--sage); display: grid; place-items: center; font: 700 12px var(--sans); flex: none; }
.awg-pf-lead { color: var(--muted); font-size: 14px; margin: 0 0 18px; }
.awg-pf-f { display: block; font-weight: 600; font-size: 14px; color: var(--navy); margin: 0; }
.awg-pf-l { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.awg-pf-f > small { display: block; font-weight: 400; color: var(--muted); font-size: 12.5px; margin-top: 5px; }
.awg-pf-count { font-weight: 400; color: var(--muted); font-size: 12.5px; }
.awg-pf input[type=text], .awg-pf select, .awg-pf textarea, .awg-pf-tags { width: 100%; font: 400 15px var(--sans); color: var(--body); background: var(--cream); border: 1px solid var(--line); border-radius: 10px; padding: 11px 13px; margin: 6px 0 0; box-shadow: none; outline: none; min-height: 46px; }
.awg-pf input[type=text]:focus, .awg-pf select:focus, .awg-pf textarea:focus, .awg-pf-tags:focus-within { border-color: var(--sage); background: #fff; box-shadow: 0 0 0 3px rgba(92, 122, 107, .15); }
.awg-pf textarea { resize: vertical; min-height: 120px; line-height: 1.5; }
.awg-pf-g2 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 18px; }
.awg-pf-g3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px 18px; }
.awg-pf-svcbox { border: 1px solid var(--line); border-radius: 14px; padding: 12px; margin-bottom: 12px; background: var(--cream); }
.awg-pf-svcbox .awg-pf-svc { margin-bottom: 8px; }
.awg-pf .awg-pf-svcbox input[type=text] { background: #fff; }
.awg-pf-svc2 { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, .8fr) minmax(0, 1.4fr); gap: 10px; padding-right: 56px; }
.awg-pf .awg-pf-svc2 input[type=text] { margin: 0; font-size: 14px; min-height: 40px; padding: 8px 11px; }
.awg-pf-sub { font: 600 15px var(--sans); color: var(--navy); margin: 18px 0 8px; }
.awg-pf-sub:first-of-type { margin-top: 0; }
.awg-pf-lrow { display: grid; gap: 10px; align-items: start; margin-bottom: 10px; }
.awg-pf-lrow-3 { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, .8fr) 46px; }
.awg-pf-lrow-2 { grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr) 46px; }
.awg-pf .awg-pf-lrow input[type=text], .awg-pf .awg-pf-lrow textarea { margin: 0; }
.awg-pf .awg-pf-lrow textarea { min-height: 46px; }
.awg-pf-stack { display: grid; gap: 16px; }
/* photo */
.awg-pf-photorow { display: flex; align-items: center; gap: 22px; padding: 2px 0 20px; margin: 0 0 20px; border-bottom: 1px solid var(--line); }
.awg-pf-ph { position: relative; width: 128px; height: 128px; flex: none; }
.awg-pf-photo { width: 128px; height: 128px; border-radius: 50%; overflow: hidden; display: grid; place-items: center; background: linear-gradient(135deg, #7E9A8B, #4E6A5C); color: #fff; font: 600 40px var(--serif); box-shadow: 0 0 0 4px #fff, 0 0 0 5px var(--line); }
.awg-pf-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.awg-pf-cam { position: absolute; right: 0; bottom: 4px; width: 38px; height: 38px; border-radius: 50%; background: var(--navy); color: #fff; border: 3px solid #fff; display: grid; place-items: center; cursor: pointer; }
.awg-pf-btns { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 8px; }
.awg-pf-hint { margin: 0; color: var(--muted); font-size: 13px; max-width: 440px; }
/* Main service "Other" (6.26.35): the note above the profession fields. */
.awg-pf-callout { margin: 0 0 16px; padding: 10px 14px; background: var(--sage-soft); border-left: 3px solid var(--sage); border-radius: 0 10px 10px 0; font-size: 14px; line-height: 1.5; color: var(--body); }
.awg-pf-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border-radius: 10px; padding: 11px 18px !important; font: 600 14.5px/1.2 var(--sans); cursor: pointer; border: 1px solid var(--navy); background: var(--navy); color: #fff !important; text-decoration: none; min-height: 44px; }
.awg-pf-btn:hover { background: var(--navy-hover); }
.awg-pf-btn.is-line { background: #fff; color: var(--navy) !important; }
.awg-pf-btn.is-line:hover { background: var(--cream); }
.awg-pf-btn.is-ghost { background: transparent; border-color: transparent; color: var(--muted) !important; padding-left: 8px !important; padding-right: 8px !important; }
.awg-pf-btn[disabled] { opacity: .6; cursor: wait; }
/* genres */
.awg-pf-tags { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 7px 8px; cursor: text; }
.awg-pf-tag { display: inline-flex; align-items: center; gap: 4px; background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 3px 4px 3px 12px; font-size: 13.5px; font-weight: 500; }
.awg-pf-tag button { width: 22px; height: 22px; min-height: 0; border: 0; border-radius: 50%; background: transparent; color: var(--muted); font-size: 15px; line-height: 1; padding: 0 !important; cursor: pointer; }
.awg-pf-tag button:hover { background: var(--beige); color: var(--navy); }
.awg-pf .awg-pf-tags input[type=text] { flex: 1; min-width: 160px; border: 0; background: transparent; margin: 0; padding: 4px 6px; min-height: 0; box-shadow: none; }
/* services */
.awg-pf-svc { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) 46px; gap: 10px; align-items: center; }
.awg-pf-svc { margin-bottom: 10px; }
.awg-pf .awg-pf-svc input[type=text] { margin: 0; }
.awg-pf-del { width: 46px; height: 46px; min-height: 0; padding: 0 !important; margin: 0; border-radius: 10px; border: 1px solid var(--line); background: #fff; color: var(--muted); display: grid; place-items: center; cursor: pointer; line-height: 0; }
.awg-pf-del svg { display: block; }
.awg-pf-del:hover, .awg-pf-del:focus-visible { border-color: var(--err); color: var(--err); background: #FEF3F2; }
.awg-pf-add { display: flex; align-items: center; justify-content: center; width: 100%; border: 1.5px dashed #C5D2C8; border-radius: 12px; background: transparent; color: var(--navy); font: 600 14.5px var(--sans); padding: 12px !important; margin-top: 4px; cursor: pointer; }
.awg-pf-add:hover { border-color: var(--sage); background: var(--cream); }
/* portfolio */
.awg-pf-books { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 18px; }
.awg-pf-book { position: relative; border: 1px solid var(--line); border-radius: 14px; padding: 12px; background: var(--cream); display: grid; gap: 8px; align-content: start; }
.awg-pf-cover { position: relative; display: block !important; aspect-ratio: 2 / 3; border-radius: 8px; overflow: hidden; cursor: pointer; margin: 0 0 4px; background: #fff; border: 1.5px dashed #C5D2C8; }
.awg-pf-cover.has-img { border: 0; box-shadow: 0 6px 16px rgba(28, 36, 57, .18); }
.awg-pf-art, .awg-pf-art img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.awg-pf-noart { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 8px; color: var(--muted); font-size: 13.5px; font-weight: 600; text-align: center; }
.awg-pf-ic { display: inline-grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: var(--sage-soft); color: var(--sage); flex: none; }
.awg-pf-chg { position: absolute; left: 8px; right: 8px; bottom: 8px; background: rgba(255, 255, 255, .95); color: var(--navy); border-radius: 8px; font: 600 12.5px var(--sans); padding: 7px; text-align: center; opacity: 0; transition: opacity .2s; }
.awg-pf-chg:empty { display: none; }
.awg-pf-cover:hover .awg-pf-chg, .awg-pf-cover:focus-within .awg-pf-chg { opacity: 1; }
.awg-pf .awg-pf-book input[type=text] { background: #fff; margin: 0; padding: 9px 11px; font-size: 14px; min-height: 40px; }
.awg-pf-yr { display: grid; grid-template-columns: 1fr; gap: 8px; } /* 6.26.90: role full width, year below. */
.awg-pf .awg-pf-book input[type=text] { width: 100%; max-width: none; box-sizing: border-box; }
.awg-pf .awg-pf-yr > input[type=text]:last-child { max-width: 96px; }
.awg-pf-del.is-round { position: absolute; top: 18px; right: 18px; width: 34px; height: 34px; border-radius: 50%; border: 0; background: rgba(255, 255, 255, .96); box-shadow: 0 2px 8px rgba(0, 0, 0, .18); z-index: 2; }
.awg-pf-newbook { border: 1.5px dashed #C5D2C8; border-radius: 14px; background: transparent; min-height: 340px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; padding: 16px !important; color: var(--navy); cursor: pointer; text-align: center; font: inherit; }
.awg-pf-newbook:hover { border-color: var(--sage); background: var(--cream); }
.awg-pf-newbook i { width: 48px; height: 48px; border-radius: 50%; background: var(--sage-soft); color: var(--sage); display: grid; place-items: center; font-style: normal; font-size: 24px; }
.awg-pf-newbook b { font-size: 15px; }
.awg-pf-newbook small { color: var(--muted); font-size: 12.5px; max-width: 170px; }
/* tax upload */
/* side */
.awg-pf-side { position: sticky; top: 108px; display: grid; gap: 16px; }
.admin-bar .awg-pf-side { top: 140px; }
.awg-pf-side .awg-pf-card { padding: 20px; }
.awg-pf-progrow { display: flex; justify-content: space-between; font-weight: 600; color: var(--navy); font-size: 14.5px; }
.awg-pf-bar { height: 8px; border-radius: 999px; background: var(--beige); margin: 10px 0 14px; overflow: hidden; }
.awg-pf-bar i { display: block; height: 100%; width: 0; background: var(--sage); border-radius: 999px; transition: width .3s; }
.awg-pf-check { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; font-size: 14px; }
.awg-pf-check li { display: flex; gap: 10px; align-items: center; margin: 0; }
.awg-pf-check li i { width: 20px; height: 20px; border-radius: 50%; display: grid; place-items: center; font-style: normal; font-size: 11px; flex: none; border: 1.5px solid var(--line); color: transparent; }
.awg-pf-check li.ok { color: var(--muted); }
.awg-pf-check li.ok i { background: var(--sage); border-color: var(--sage); color: #fff; }
.awg-pf-avail { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-weight: 600; color: var(--navy); font-size: 14.5px; cursor: pointer; margin: 0; }
.awg-pf-avail small { display: block; font-weight: 400; color: var(--muted); font-size: 12.5px; }
.awg-pf-switch { appearance: none; -webkit-appearance: none; width: 46px; height: 26px; border-radius: 999px; background: #C5D2C8; position: relative; flex: none; cursor: pointer; margin: 0; transition: background .2s; }
.awg-pf-switch::after { content: ""; position: absolute; left: 3px; top: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; transition: left .2s; box-shadow: 0 1px 3px rgba(0,0,0,.2); }
.awg-pf-switch:checked { background: var(--sage); }
.awg-pf-switch:checked::after { left: 23px; }
.awg-pf-switch:focus-visible { outline: 2px solid var(--navy); outline-offset: 2px; }
.awg-pf-prev h3 { font: 700 11.5px var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--sage); margin: 0 0 12px; }
.awg-pf-tcard { border: 1px solid var(--line); border-top: 3px solid var(--sage); border-radius: 14px; padding: 16px; background: #fff; box-shadow: 0 10px 24px rgba(28, 36, 57, .07); }
/* Directory preview (6.26.37): a live team card at side-panel size. */
.awg-pf-prev .awg-ptl-card { padding: 18px; gap: 12px; transform: none !important; cursor: default; box-shadow: inset 0 4px 0 var(--c, var(--sage)); }
.awg-pf-prev .awg-ptl-card .awg-pf-pvav { width: 60px; height: 60px; }
.awg-pf-prev .awg-ptl-card strong { font-size: 19px; }
.awg-pf-prev .awg-ptl-card__bio.is-empty { color: var(--muted); font-style: italic; }
.awg-pf-prev .awg-ptl-card [hidden] { display: none !important; }
.awg-pf-tt { display: flex; gap: 12px; align-items: center; }
.awg-pf-pvav { width: 54px; height: 54px; border-radius: 50%; overflow: hidden; flex: none; display: grid; place-items: center; background: linear-gradient(135deg, #7E9A8B, #4E6A5C); color: #fff; font: 600 18px var(--serif); }
.awg-pf-pvav img { width: 100%; height: 100%; object-fit: cover; }
.awg-pf-tt b { display: block; font: 600 17px/1.25 var(--serif); color: var(--navy); }
.awg-pf-tt em { display: block; font-style: normal; color: var(--sage); font-weight: 600; font-size: 13.5px; }
.awg-pf-tt small { color: var(--muted); font-size: 13px; }
.awg-pf-tcard p { font-size: 13.5px; margin: 12px 0; color: var(--body); overflow-wrap: anywhere; }
.awg-pf-tft { border-top: 1px solid var(--line); padding-top: 10px; display: flex; justify-content: space-between; align-items: center; gap: 8px; font-size: 13px; color: var(--muted); }
.awg-pf-badge { background: var(--sage-soft); color: #2F5141; border-radius: 999px; padding: 3px 10px; font-weight: 600; font-size: 12px; white-space: nowrap; }
.awg-pf-badge.is-busy { background: var(--beige); color: var(--muted); }
.awg-pf-acts { display: grid; gap: 10px; }
.awg-pf-acts .awg-pf-btn { width: 100%; padding: 13px !important; }
.awg-pf-acts p { margin: 0; color: var(--muted); font-size: 12.5px; text-align: center; }
.awg-pf-acts .awg-ptl-msg:empty { display: none; }
.awg-pf-acts .awg-ptl-msg { margin: 0; padding: 10px 12px; border-radius: 10px; font-size: 14px; font-weight: 600; text-align: center; color: var(--muted); background: transparent; border: 1px solid transparent; }
.awg-pf-acts .awg-ptl-msg.is-ok { display: flex; align-items: center; justify-content: center; gap: 8px; color: #1E7B45; background: #E7F5EC; border-color: #B7E0C5; }
.awg-pf-acts .awg-ptl-msg.is-ok::before { content: "\2713"; display: inline-grid; place-items: center; flex: none; width: 20px; height: 20px; border-radius: 50%; background: #1E9E55; color: #fff; font-size: 13px; font-weight: 700; line-height: 1; }
.awg-pf-acts .awg-ptl-msg.is-error { color: var(--err); background: #FEF3F2; border-color: #FECDCA; }
.awg-pf-mbar, .awg-pf-toast { display: none; }
@media (max-width: 980px) {
	.awg-pf { grid-template-columns: 1fr; gap: 18px; }
	.awg-pf-side { position: static; order: -1; }
	.awg-pf-side .awg-pf-acts, .awg-pf-side .awg-pf-prev { display: none; }
	.awg-pf-mbar { display: flex; gap: 10px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 55; background: #fff; border-top: 1px solid var(--line); padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); box-shadow: 0 -8px 20px rgba(28, 36, 57, .06); }
	.awg-pf-mbar .awg-pf-btn { flex: 1; }
	.awg-pf-toast:not([hidden]) { display: block; position: fixed; left: 16px; right: 16px; bottom: 84px; z-index: 56; background: var(--navy); color: #fff; border-radius: 12px; padding: 12px 14px; font-size: 14px; box-shadow: 0 8px 24px rgba(0,0,0,.2); }
	.awg-pf-toast.is-error { background: var(--err); }
	.awg-pf { padding-bottom: 90px; }
}
@media (max-width: 760px) { /* The tab bar only shows on phones. */
	.awg-ptl-has-tabbar .awg-pf-mbar { bottom: 62px; box-shadow: none; }
	.awg-ptl-has-tabbar .awg-pf-toast { bottom: 148px; }
}
@media (max-width: 640px) {
	.awg-pf-card { padding: 18px; border-radius: 16px; }
	.awg-pf-g2, .awg-pf-g3 { grid-template-columns: 1fr; }
	.awg-pf-svc2 { grid-template-columns: 1fr; padding-right: 0; }
	.awg-pf-lrow-3, .awg-pf-lrow-2 { grid-template-columns: minmax(0, 1fr) 46px; }
	.awg-pf-lrow > input, .awg-pf-lrow > textarea { grid-column: 1; }
	.awg-pf-lrow > .awg-pf-del { grid-column: 2; grid-row: 1; }
	.awg-pf-lrow { padding-bottom: 10px; border-bottom: 1px solid var(--line); }
	.awg-pf-head { margin-top: -2px; }
	.awg-pf-photorow { flex-direction: column; align-items: flex-start; gap: 16px; }
	.awg-pf-svc { grid-template-columns: minmax(0, 1fr) 46px; padding-bottom: 12px; border-bottom: 1px solid var(--line); margin-bottom: 12px; }
	.awg-pf-svc > input { grid-column: 1; }
	.awg-pf-svc .awg-pf-del { grid-column: 2; grid-row: 1 / 3; }
	.awg-pf-books { grid-template-columns: 1fr 1fr; gap: 12px; }
	.awg-pf-book { padding: 10px; }
	.awg-pf-yr { grid-template-columns: 1fr; }
	.awg-pf-newbook { min-height: 240px; }
	.awg-pf-del.is-round { top: 16px; right: 16px; }
}

/* ---------- Public profile page (6.25.7) ---------- */
.awg-pp { container-type: inline-size; max-width: 1180px; margin: 0 auto; color: var(--body); }
.awg-pp-crumb { font-size: 13.5px; color: var(--muted); margin: 0 0 14px; }
.awg-pp-crumb a { color: var(--sage); font-weight: 600; text-decoration: none; }
.awg-pp-hero { position: relative; overflow: hidden; display: grid; grid-template-columns: 150px minmax(0, 1fr) auto; gap: 26px; align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 22px; padding: 28px; }
.awg-pp-hero::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 6px; background: var(--sage); }
.awg-pp-photo .awg-ptl-av-img, .awg-pp-photo img, .awg-pp-photo .awg-ptl-av-txt { width: 150px !important; height: 150px !important; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 5px #fff, 0 0 0 6px var(--line); font-size: 46px; }
.awg-pp-cat { font: 700 12px var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--sage); }
.awg-pp h1 { font: 700 clamp(30px, 4vw, 40px)/1.1 var(--serif); color: var(--navy); margin: 4px 0 6px; }
.awg-pp-role { font-size: 18px; color: var(--c, var(--sage)); font-weight: 600; margin: 0 0 10px; }
.awg-pp-meta { display: flex; flex-wrap: wrap; gap: 8px; font-size: 14px; color: var(--muted); margin: 0; }
.awg-pp-meta span { display: inline-flex; align-items: center; background: var(--cream); border: 1px solid var(--line); border-radius: 999px; padding: 3px 11px; font-size: 13px; }
.awg-pp-badges { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 0; }
.awg-pp-b { border-radius: 999px; padding: 5px 12px; font-size: 12.5px; font-weight: 600; }
.awg-pp-b.is-vetted { background: var(--sage-soft); color: #2F5141; }
.awg-pp-b.is-av { background: #E3F1E6; color: #256B3C; }
.awg-pp-b.is-busy { background: var(--beige); color: var(--muted); }
.awg-pp-b.is-top { background: #F6E7CF; color: #7A5418; }
.awg-pp-rate { text-align: right; }
.awg-pp-stars { color: #D69A2D; letter-spacing: 2px; }
.awg-pp-rate b { display: block; font: 700 30px var(--serif); color: var(--navy); }
.awg-pp-rate small { color: var(--muted); }
.awg-pp-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; margin: 18px 0 24px; }
.awg-pp-facts div { background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 16px; }
.awg-pp-facts b { display: block; font: 700 22px/1.2 var(--serif); color: var(--navy); }
.awg-pp-facts span { font-size: 13px; color: var(--muted); }
.awg-pp-grid { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 26px; align-items: start; }
.awg-pp-main { min-width: 0; }
.awg-pp-tabs { display: flex; gap: 6px; overflow-x: auto; background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 6px; margin-bottom: 20px; position: sticky; top: 10px; z-index: 3; }
.admin-bar .awg-pp-tabs { top: 42px; }
.awg-pp-tabs a { white-space: nowrap; text-decoration: none !important; padding: 9px 14px; border-radius: 10px; font-weight: 600; font-size: 14px; color: var(--muted) !important; }
.awg-pp-tabs a:hover, .awg-pp-tabs a:focus-visible { background: var(--navy); color: #fff !important; }
.awg-pp-sec { background: #fff; border: 1px solid var(--line); border-radius: 20px; padding: 26px; margin-bottom: 20px; scroll-margin-top: 80px; }
.awg-pp-sec h2 { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 12px; font: 600 23px var(--serif); color: var(--navy); margin: 0 0 14px; }
.awg-pp-sec h2 small { font: 500 13px var(--sans); color: var(--muted); }
.awg-pp-sec h3 { font: 600 16px var(--sans); color: var(--navy); margin: 18px 0 10px; }
.awg-pp-bio p { margin: 0 0 12px; font-size: 16px; line-height: 1.7; }
.awg-pp-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.awg-pp-chips i { font-style: normal; background: var(--cream); border: 1px solid var(--line); border-radius: 999px; padding: 5px 13px; font-size: 13.5px; }
.awg-pp-svcs { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 14px; }
.awg-pp-svc { display: flex; flex-direction: column; gap: 8px; border: 1px solid var(--line); border-radius: 16px; padding: 18px; background: var(--cream); }
.awg-pp-svc h3 { font: 600 17px var(--serif); margin: 0; }
.awg-pp-svc p { margin: 0; font-size: 13.5px; color: var(--muted); }
.awg-pp-svc ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; font-size: 13.5px; }
.awg-pp-svc li::before { content: "\2713  "; color: var(--sage); font-weight: 700; }
.awg-pp-del { margin-top: auto; padding-top: 8px; border-top: 1px solid var(--line); font-size: 12.5px; color: var(--muted); }
.awg-pp-books { display: grid; grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: 16px; }
.awg-pp-book { margin: 0; }
.awg-pp-book img, .awg-pp-cov { display: flex; width: 100%; aspect-ratio: 2 / 3; object-fit: cover; border-radius: 6px; box-shadow: 0 8px 18px rgba(28, 36, 57, .2); margin-bottom: 8px; }
.awg-pp-cov { align-items: flex-end; padding: 12px; color: #fff; font: 600 14px/1.2 var(--serif); }
.awg-pp-book figcaption b { display: block; font-size: 13.5px; color: var(--navy); }
.awg-pp-book figcaption small { color: var(--muted); font-size: 12px; }
.awg-pp-tl { list-style: none; margin: 0; padding: 0 0 0 22px; position: relative; display: grid; gap: 16px; }
.awg-pp-tl::before { content: ""; position: absolute; left: 6px; top: 6px; bottom: 6px; width: 2px; background: var(--line); }
.awg-pp-tl li { position: relative; padding-left: 8px; margin: 0; font-size: 15px; line-height: 1.5; }
.awg-pp-tl li::before { content: ""; position: absolute; left: -22px; top: 6px; width: 12px; height: 12px; border-radius: 50%; background: #fff; border: 3px solid var(--sage); }
.awg-pp-tl b { color: var(--navy); }
.awg-pp-tl small { display: block; color: var(--muted); font-size: 13px; }
/* Education: one wide card per degree, with a cap icon and the year set large (6.26.27). */
.awg-pp-edu { display: grid; gap: 12px; margin-top: 16px; }
.awg-pp-edu__i { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 16px; align-items: center; background: linear-gradient(90deg, var(--sage-soft), var(--cream) 60%); border: 1px solid var(--line); border-radius: 14px; padding: 16px 20px; }
.awg-pp-edu__cap { width: 56px; height: 56px; border-radius: 14px; background: var(--navy); color: #fff; display: grid; place-items: center; flex: none; }
.awg-pp-edu__t { min-width: 0; }
.awg-pp-edu__t b { display: block; font: 700 17px/1.25 var(--sans); color: var(--navy); }
.awg-pp-edu__t small { display: block; color: var(--muted); font-size: 13.5px; margin-top: 2px; }
.awg-pp-edu__y { font: 500 28px/1 var(--serif); color: var(--muted); font-variant-numeric: tabular-nums; white-space: nowrap; }
/* Certificates and memberships: a wall of monogram seals (6.26.27). */
.awg-pp-seals { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 14px; margin-top: 16px; }
.awg-pp-seal { background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 20px 14px 16px; text-align: center; display: grid; gap: 6px; justify-items: center; align-content: start; min-width: 0; }
.awg-pp-seal__r { width: 66px; height: 66px; border-radius: 50%; display: grid; place-items: center; position: relative; margin-bottom: 4px; background: var(--navy); color: var(--navy); }
.awg-pp-seal__r::before { content: ""; position: absolute; inset: -5px; border-radius: 50%; border: 1.5px dashed currentColor; opacity: .5; }
.awg-pp-seal__r b { font: 800 14px var(--sans); color: #fff; letter-spacing: .03em; }
.awg-pp-seal__r.is-c1 { background: #7A2E4A; color: #7A2E4A; }
.awg-pp-seal__r.is-c2 { background: #2F4A7A; color: #2F4A7A; }
.awg-pp-seal__r.is-c3 { background: #8A5A1F; color: #8A5A1F; }
.awg-pp-seal__r.is-c4 { background: #3A6B4F; color: #3A6B4F; }
.awg-pp-seal__r.is-c5 { background: #5A3F86; color: #5A3F86; }
.awg-pp-seal__r.is-c6 { background: #A8563A; color: #A8563A; }
.awg-pp-seal__r.is-c7 { background: #2B6F7A; color: #2B6F7A; }
.awg-pp-seal__n { font: 700 14px/1.3 var(--sans); color: var(--navy); overflow-wrap: anywhere; }
.awg-pp-seal small { display: block; color: var(--muted); font-size: 12.5px; line-height: 1.4; }
@media (max-width: 640px) {
	.awg-pp-seals { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.awg-pp-seal { padding: 16px 10px 14px; }
	.awg-pp-edu__i { grid-template-columns: auto minmax(0, 1fr); padding: 14px 16px; }
	.awg-pp-edu__y { grid-column: 2; justify-self: start; font-size: 20px; }
}
.awg-pp-ba { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.awg-pp-ba > div { border: 1px solid var(--line); border-radius: 14px; padding: 16px; font: 15px/1.7 var(--serif); }
.awg-pp-ba p { margin: 0 0 8px; }
.awg-pp-ba h4 { font: 700 11.5px var(--sans); letter-spacing: .1em; text-transform: uppercase; margin: 0 0 8px; }
.awg-pp-ba .is-before { background: #FCF2F0; } .awg-pp-ba .is-before h4 { color: #9B3D2E; }
.awg-pp-ba .is-after { background: #F1F6F2; } .awg-pp-ba .is-after h4 { color: #2F5141; }
.awg-pp-revs { display: grid; gap: 0; }
.awg-pp-revs blockquote { margin: 0; padding: 16px 0; border-top: 1px solid var(--line); }
.awg-pp-revs p { margin: 6px 0; font-size: 15px; }
.awg-pp-revs cite { font-style: normal; color: var(--muted); font-size: 13px; }
.awg-pp-faq { border-top: 1px solid var(--line); padding: 14px 0; }
.awg-pp-faq:last-child { border-bottom: 1px solid var(--line); }
.awg-pp-faq summary { font-size: 16px; line-height: 1.4; display: flex; justify-content: space-between; gap: 12px; font-weight: 600; color: var(--navy); cursor: pointer; list-style: none; }
.awg-pp-faq summary::-webkit-details-marker { display: none; }
.awg-pp-faq summary::after { content: "+"; font-size: 20px; line-height: 1; color: var(--sage); }
.awg-pp-faq[open] summary::after { content: "\d7"; }
.awg-pp-faq p { margin: 8px 0 0; color: var(--muted); font-size: 15px; line-height: 1.6; }
.awg-pp-side { position: sticky; top: 20px; min-width: 0; scroll-margin-top: 20px; }
.admin-bar .awg-pp-side { top: 52px; }
.awg-pp-quote { background: #fff; border: 1px solid var(--line); border-radius: 20px; padding: 22px; box-shadow: 0 14px 30px rgba(28, 36, 57, .08); }
.awg-pp-from { margin: 0; font-size: 14px; color: var(--muted); }
.awg-pp-from b { font: 700 26px var(--serif); color: var(--navy); }
.awg-pp-quote h2 { font: 600 20px var(--serif); color: var(--navy); margin: 4px 0 12px; }
.awg-pp-quote .awg-ptl-btn { width: 100%; }
.awg-pp-trust { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 5px; font-size: 13px; color: var(--muted); }
.awg-pp-trust li::before { content: "\2713  "; color: var(--sage); font-weight: 700; }
.awg-pp-similar { margin-top: 14px; }
.awg-pp-similar h2 { font: 600 24px var(--serif); color: var(--navy); margin: 0 0 14px; }
.awg-pp-simgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }
.awg-pp-simcard { display: flex; flex-direction: column; gap: 10px; background: #fff; border: 1px solid var(--line); border-top: 3px solid var(--c, #B47249); border-radius: 16px; padding: 18px; text-decoration: none !important; color: var(--body) !important; transition: box-shadow .2s, transform .2s; }
.awg-pp-simcard:hover { box-shadow: 0 12px 26px rgba(28, 36, 57, .1); transform: translateY(-2px); }
.awg-pp-simtop { display: flex; gap: 12px; align-items: center; }
.awg-pp-simtop b { display: block; font: 600 16px var(--serif); color: var(--navy); }
.awg-pp-simtop em { font-style: normal; color: var(--c, var(--sage)); font-size: 13px; font-weight: 600; }
.awg-pp-simbio { font-size: 13.5px; color: var(--muted); }
.awg-pp-simft { display: flex; justify-content: space-between; gap: 8px; font-size: 13px; border-top: 1px solid var(--line); padding-top: 10px; margin-top: auto; }
.awg-pp-simgo { color: var(--sage); font-weight: 600; }
.awg-pp-safe { margin: 20px 0 0; font-size: 13.5px; color: var(--muted); text-align: center; }
.awg-pp-mbar { display: none; }
@container (max-width: 900px) {
	.awg-pp-grid { grid-template-columns: 1fr; }
	.awg-pp-side { position: static; }
}
@container (max-width: 640px) {
	.awg-pp-hero { grid-template-columns: 1fr; padding: 22px; gap: 16px; }
	.awg-pp-photo .awg-ptl-av-img, .awg-pp-photo img, .awg-pp-photo .awg-ptl-av-txt { width: 110px !important; height: 110px !important; font-size: 34px; }
	.awg-pp-rate { text-align: left; }
	.awg-pp-facts { grid-template-columns: 1fr 1fr; }
	.awg-pp-ba { grid-template-columns: 1fr; }
	.awg-pp-books { grid-template-columns: 1fr 1fr; }
	.awg-pp-sec { padding: 20px; }
}
@media (max-width: 640px) {
	.awg-pp { padding-bottom: 76px; }
	.awg-pp-mbar { display: flex; align-items: center; gap: 12px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 40; background: #fff; border-top: 1px solid var(--line); padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); box-shadow: 0 -8px 20px rgba(28, 36, 57, .06); }
	.awg-pp-mbar span { font-size: 12.5px; color: var(--muted); }
	.awg-pp-mbar span b { display: block; font: 700 17px var(--serif); color: var(--navy); }
	.awg-pp-mbar .awg-ptl-btn { flex: 1; text-align: center; }
}

/* Application form (6.25.11): the same look as the contact and calculator forms. */
.awg-ptl-join { --f-border: #DCE4DE; --f-error: #B3261E; --f-ok: #2F7D4F; }
.awg-ptl-fgrid { display: flex; flex-wrap: wrap; gap: 16px; }
.awg-ptl-f { display: flex; flex-direction: column; flex: 1 1 100%; min-width: 0; }
.awg-ptl-f--half { flex: 1 1 calc(50% - 8px); }
.awg-ptl-join .awg-ptl-f > label { display: block; margin: 0 0 6px; font-size: 13.5px; font-weight: 600; color: var(--navy); }
.awg-ptl-join .awg-ptl-f > label small { font-weight: 400; color: var(--muted); font-size: 12.5px; }
.awg-ptl-req { color: var(--sage); font-weight: 700; }
.awg-ptl-join input[type=text], .awg-ptl-join input[type=email], .awg-ptl-join input[type=tel], .awg-ptl-join input[type=url], .awg-ptl-join select, .awg-ptl-join textarea {
	width: 100%; margin: 0; padding: 11px 13px; font: 400 15px/1.4 var(--sans); color: var(--navy); background: #fff; border: 1px solid var(--f-border); border-radius: 9px; box-shadow: none; -webkit-appearance: none; appearance: none; transition: border-color .15s ease, box-shadow .15s ease; min-height: 46px;
}
.awg-ptl-join select { background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%235d6675' d='M1 1l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 13px center; padding-right: 34px; cursor: pointer; }
.awg-ptl-join textarea { min-height: 96px; resize: vertical; }
.awg-ptl-join input:focus, .awg-ptl-join select:focus, .awg-ptl-join textarea:focus { outline: none; border-color: var(--sage); background-color: #fff; box-shadow: 0 0 0 3px rgba(92, 122, 107, .18); }
.awg-ptl-join input::placeholder, .awg-ptl-join textarea::placeholder { color: #9AA1AB; opacity: 1; }
.awg-ptl-join .iti { display: block; width: 100%; }
.awg-ptl-join .iti--separate-dial-code input[type=tel] { padding-left: 92px; }
.awg-ptl-join .awg-ptl-f.is-invalid input, .awg-ptl-join .awg-ptl-f.is-invalid select, .awg-ptl-join .awg-ptl-f.is-invalid textarea { border-color: var(--f-error); box-shadow: 0 0 0 1px var(--f-error); }
.awg-ptl-join .awg-ptl-f.is-valid input[type=email], .awg-ptl-join .awg-ptl-f.is-valid input[type=tel] {
	border-color: var(--f-ok); padding-right: 38px;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f7d4f' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") no-repeat right 12px center / 16px 16px;
}
.awg-ptl-ferr { margin: 6px 0 0; font-size: 13px; line-height: 1.4; color: var(--f-error); }
.awg-ptl-join .awg-ptl-check { font-size: 14px; line-height: 1.45; cursor: pointer; }
.awg-ptl-join .awg-ptl-check input { width: 17px; height: 17px; margin: 2px 0 0; flex: 0 0 auto; accent-color: var(--sage); }
.awg-ptl-join .awg-ptl-f.is-invalid .awg-ptl-check { color: var(--f-error) !important; }
.awg-ptl-join .awg-ptl-btn { width: 100%; min-height: 50px; margin-top: 20px; background: var(--sage); border-radius: 10px; font-weight: 700; font-size: 16px; }
.awg-ptl-join .awg-ptl-btn:hover, .awg-ptl-join .awg-ptl-btn:focus { background: #4B6659; }
.awg-ptl-join .awg-ptl-btn:focus-visible { outline: 3px solid rgba(92, 122, 107, .35); outline-offset: 2px; }
.awg-ptl-join .awg-ptl-msg { margin: 12px 0 0; font-size: 14px; }
.awg-ptl-join .awg-ptl-msg.is-error { color: var(--f-error); }
@media (max-width: 560px) { .awg-ptl-f--half { flex: 1 1 100%; } }

/* Upload progress over a photo or cover (6.25.12). */
.awg-pf-ph.is-uploading, .awg-pf-cover.is-uploading { pointer-events: none; }
.awg-pf-upl { position: absolute; inset: 0; z-index: 3; display: grid; align-content: center; justify-items: center; gap: 8px; padding: 10px; background: rgba(28, 36, 57, .72); color: #fff; border-radius: inherit; text-align: center; }
.awg-pf-ph .awg-pf-upl { border-radius: 50%; }
.awg-pf-upl b { font: 600 12.5px var(--sans); }
.awg-pf-uplbar { display: block; width: 72%; max-width: 120px; height: 6px; border-radius: 3px; background: rgba(255, 255, 255, .25); overflow: hidden; }
.awg-pf-uplbar i { display: block; height: 100%; width: 0; background: var(--mint, #B8D3C1); border-radius: 3px; transition: width .2s ease; }
.awg-pf-uplbar i:not([style]) { width: 35%; animation: awg-pf-indet 1.1s ease-in-out infinite; }
@keyframes awg-pf-indet { 0% { transform: translateX(-100%); } 100% { transform: translateX(290%); } }

/* Services without prices (6.25.14). */
.awg-pf-svc.is-noprice { grid-template-columns: minmax(0, 1fr) 46px; }
.awg-pf-svc.is-noprice .awg-pf-del { grid-row: auto; }

/* Profile form fixes (6.25.16). */
.awg-pf-svc2 { grid-template-columns: minmax(0, .8fr) minmax(0, 1.4fr); padding-right: 56px; gap: 10px 12px; }
.awg-pf-sf { display: grid; gap: 4px; margin: 0; }
.awg-pf-sf > span { font: 600 12px var(--sans); color: var(--muted); }
.awg-pf-sf.is-wide { grid-column: 1 / -1; }
/* The "Add a book" tile keeps its own colours (the theme's button colours made its text unreadable). */
.awg-pf .awg-pf-newbook, .awg-pf .awg-pf-newbook:focus { background: transparent !important; color: var(--navy) !important; border-color: #C5D2C8 !important; box-shadow: none !important; outline: none; }
.awg-pf .awg-pf-newbook:hover, .awg-pf .awg-pf-newbook:active { background: var(--cream) !important; color: var(--navy) !important; border-color: var(--sage) !important; }
.awg-pf .awg-pf-newbook:focus-visible { outline: 2px solid var(--sage); outline-offset: 2px; }
.awg-pf .awg-pf-newbook b { color: var(--navy) !important; }
.awg-pf .awg-pf-newbook small { color: var(--muted) !important; }
/* Our own colours for hover, focus and press, so the theme's button colours never take over. */
.awg-pf .awg-pf-add, .awg-pf .awg-pf-add:focus { background: transparent !important; color: var(--navy) !important; border-color: #C5D2C8 !important; box-shadow: none !important; outline: none; }
.awg-pf .awg-pf-add:hover, .awg-pf .awg-pf-add:active { background: var(--cream) !important; color: var(--navy) !important; border-color: var(--sage) !important; }
.awg-pf .awg-pf-add:focus-visible { outline: 2px solid var(--sage); outline-offset: 2px; }
.awg-pf .awg-pf-btn:focus { background: var(--navy); color: #fff !important; }
.awg-pf .awg-pf-btn.is-line:focus, .awg-pf .awg-pf-btn.is-line:active { background: #fff; color: var(--navy) !important; }
.awg-pf .awg-pf-btn.is-ghost:focus, .awg-pf .awg-pf-btn.is-ghost:hover { background: transparent; color: var(--navy) !important; }
.awg-pf .awg-pf-del:focus:not(:focus-visible) { background: #fff; color: var(--muted); border-color: var(--line); }
.awg-pf .awg-pf-del.is-round:focus:not(:focus-visible) { background: rgba(255, 255, 255, .96); }
.awg-pf .awg-pf-btn:focus-visible, .awg-pf .awg-pf-del:focus-visible { outline: 2px solid var(--sage); outline-offset: 2px; }
@media (max-width: 760px) { .awg-pf-svc2 { grid-template-columns: 1fr; padding-right: 0; } }

/* Member page: profile only */
.awg-ptl-profile-only{max-width:1200px;margin:0 auto;padding:32px 20px 56px;box-sizing:border-box}
/* The same pale sage ground as the Our Team and Work With Us pages, full width and behind an overlay header, never the theme's body colour (6.25.66). */
.awg-ptl-profile-only{background:#F4F7F4;box-shadow:0 0 0 100vmax #F4F7F4;clip-path:inset(0 -100vmax);position:relative}
@media (max-width:600px){.awg-ptl-profile-only{padding:20px 16px 40px}}
/* A pinned (fixed/sticky) site header: sticky parts and tab jumps stop below it (6.25.64). */
.awg-ptl-profile-only.has-pinned-head .awg-pp-tabs{top:var(--awg-pp-head, 0px)}
.awg-ptl-profile-only.has-pinned-head .awg-pp-side{top:calc(var(--awg-pp-head, 0px) + 20px)}
.awg-ptl-profile-only.has-pinned-head .awg-pp-sec{scroll-margin-top:calc(var(--awg-pp-head, 0px) + 80px)}
.awg-ptl-profile-only.has-pinned-head .awg-pp-side{scroll-margin-top:calc(var(--awg-pp-head, 0px) + 20px)}

/* Top "Log in" button (portal page, signed out) */
.awg-ptl-backsite.awg-ptl-loginbtn { border: 1px solid var(--line); border-radius: 999px; padding: 9px 18px; background: #fff; line-height: 1; }
.awg-ptl-backsite.awg-ptl-loginbtn:hover, .awg-ptl-backsite.awg-ptl-loginbtn:focus-visible { border-color: var(--navy); background: var(--navy); color: #fff !important; }

/* Profile sent for review */
.awg-ptl-sent { max-width: 620px; margin: 24px auto; padding: 28px 24px; }
.awg-ptl-sent .awg-ptl-done h2 { margin: 6px 0 0; font-size: clamp(22px, 3vw, 28px); color: var(--navy); }
.awg-ptl-sent .awg-ptl-done p { max-width: 460px; color: var(--muted); }
.awg-ptl-sent__acts { display: flex; justify-content: center; margin: 4px 0 0; }
.awg-pf-mbar[hidden] { display: none !important; }

/* ---------- Profile form 6.25.37: required marks, Team only, groups, samples, awards, strength, preview ---------- */
.awg-pf-l { justify-content: flex-start; flex-wrap: wrap; gap: 4px 8px; }
.awg-pf-count { margin-left: auto; font-weight: 500; }
.awg-pf-req { color: var(--err); font-weight: 700; }
.awg-pf-team { display: inline-flex; align-items: center; gap: 4px; font: 700 11px var(--sans); letter-spacing: .04em; text-transform: uppercase; color: #43604F; background: #E5EDE7; border-radius: 999px; padding: 2px 8px; white-space: nowrap; vertical-align: middle; }
.awg-pf-team svg { width: 10px; height: 10px; }
.awg-pf-legend { margin: -6px 0 16px; font-size: 13.5px; color: var(--muted); display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.awg-pf-card > .awg-pf-f, .awg-pf-card > .awg-pf-g2 { margin-top: 16px; }
.awg-pf-g2 > .is-wide { grid-column: 1 / -1; }
.awg-pf-offers { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 10px; margin-top: 8px; }
.awg-pf-og { margin: 0; padding: 10px 12px 8px; border: 1px solid var(--line); border-radius: 12px; background: var(--cream); min-width: 0; }
.awg-pf-og.is-main { border-color: var(--sage); background: #F4F7F4; }
.awg-pf-og legend { padding: 0 6px; font: 700 12px var(--sans); letter-spacing: .06em; text-transform: uppercase; color: var(--sage); }
.awg-pf-ck { display: flex !important; align-items: flex-start; gap: 9px; font-weight: 500; font-size: 14px; color: var(--body); margin: 5px 0; cursor: pointer; line-height: 1.35; }
.awg-pf-ck input[type=checkbox] { width: 18px; height: 18px; margin: 1px 0 0; flex: none; accent-color: var(--sage); }
.awg-pf-ck small { display: block; color: var(--muted); font-size: 12.5px; font-weight: 400; margin-top: 2px; }
.awg-pf-svcbox { position: relative; }
.awg-pf-svcbox > .awg-pf-svc { grid-template-columns: minmax(0, 1fr) 46px; align-items: end; }
.awg-pf-svcbox .awg-pf-g2 { gap: 12px 16px; }
.awg-pf-rate, .awg-pf-inline { display: flex; align-items: center; gap: 8px; margin-top: 6px; }
.awg-pf .awg-pf-rate input[type=text], .awg-pf .awg-pf-rate select, .awg-pf .awg-pf-inline input[type=text], .awg-pf .awg-pf-inline select { margin: 0; }
.awg-pf-rate input { max-width: 140px; }
.awg-pf-inline select { max-width: 110px; flex: none; }
.awg-pf-cur { font-weight: 700; color: var(--muted); }
.awg-pf-cur.is-after { font-weight: 500; font-size: 13.5px; white-space: nowrap; }
.awg-pf-mkt { margin: 6px 0 12px; max-width: none; }
.awg-pf-samples { display: grid; gap: 10px; margin: 10px 0; }
.awg-pf-sample, .awg-pf-award { position: relative; border: 1px solid var(--line); border-radius: 14px; padding: 12px 56px 12px 12px; background: var(--cream); }
.awg-pf-sample { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 12px; align-items: end; }
.awg-pf-sample > .awg-pf-del, .awg-pf-award > .awg-pf-del { position: absolute; top: 12px; right: 10px; }
.awg-pf-sfile { display: flex; align-items: center; gap: 8px; min-width: 0; font-size: 14px; padding-bottom: 12px; }
.awg-pf-sfile b { flex: none; font-size: 11px; letter-spacing: .05em; color: #fff; background: var(--navy); border-radius: 6px; padding: 3px 6px; }
.awg-pf-sfile a, .awg-pf-sfile span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
label.awg-pf-add { cursor: pointer; }
.awg-pf-award { margin-bottom: 10px; }
.awg-pf-conf { grid-column: 1 / -1; }
.awg-pf-proof { display: grid; gap: 6px; }
.awg-pf .awg-pf-proof input[type=text] { margin-top: 6px; }
.awg-pf-pfile { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px; font-weight: 500; font-size: 13.5px; }
.awg-pf-pfile .awg-pf-btn { min-height: 34px; padding: 6px 10px !important; }
.awg-pf-pname { color: var(--navy); }
.awg-pf-aws { display: inline-block; margin-top: 8px; font-size: 12.5px; font-weight: 700; border-radius: 999px; padding: 4px 11px; background: #F6E7CF; color: #7A5418; }
.awg-pf-aws.is-verified { background: #E6F0E8; color: #2F6B45; }
.awg-pf-aws.is-rejected { background: #FEF3F2; color: #7A271A; }
.awg-pf-lrow.has-extra { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, .6fr) 46px; }
.awg-pf-lrow.has-extra > .awg-pf-lextra { grid-column: 1 / 4; grid-row: 2; }
.awg-pf-lrow.has-extra > .awg-pf-del { grid-column: 4; grid-row: 1; }
.awg-pf-lextra .awg-pf-l { font-size: 13px; font-weight: 600; color: var(--navy); }
.awg-pf-lrow-3 > input:nth-child(3) { min-width: 0; }
.awg-pf-agree { padding: 18px 20px; }
.awg-pf-agree .awg-pf-ck { font-weight: 600; color: var(--navy); }
.awg-pf-agree .awg-pf-hint { margin: 8px 0 0 27px; max-width: none; }
.awg-pf-agree.awg-pf-bad { border-color: var(--err); box-shadow: 0 0 0 3px rgba(180, 35, 24, .12); }
.awg-pf-bad select, .awg-pf-bad .awg-pf-tags { border-color: var(--err) !important; box-shadow: 0 0 0 3px rgba(180, 35, 24, .12) !important; }
.awg-pf-svcbox.awg-pf-bad, .awg-pf-book.awg-pf-bad, .awg-pf-books.awg-pf-bad { border-color: var(--err); }
.awg-pf-prog h3 { font: 600 15px var(--sans); margin: 0 0 10px; }
.awg-pf-strs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.awg-pf-str { text-align: center; font-size: 13px; font-weight: 700; padding: 7px 4px; border-radius: 9px; background: #F4F7F4; color: var(--muted); border: 1px solid var(--line); }
.awg-pf-str.on { background: #E5EDE7; color: #2F5141; border-color: #B8D3C1; }
.awg-pf-str.is-now { background: var(--sage); color: #fff; border-color: var(--sage); }
.awg-pf-strtip { margin: 12px 0 0; font-size: 13.5px; color: var(--body); }
.awg-pf-acts .awg-pf-btn.is-ghost { width: 100%; justify-content: center; text-decoration: underline; text-underline-offset: 3px; }
.awg-pfv { position: fixed; inset: 0; z-index: 100000; background: rgba(20, 27, 43, .55); display: grid; place-items: center; padding: 16px; }
.awg-pfv-box { position: relative; width: min(760px, 100%); max-height: calc(100vh - 32px); overflow-y: auto; background: #fff; border-radius: 18px; padding: 28px; box-shadow: 0 30px 56px -32px rgba(28,36,57,.55); border-top: 6px solid var(--sage); }
.awg-pfv-x { position: absolute; top: 10px; right: 12px; width: 40px; height: 40px; border: 0; border-radius: 50%; background: #F4F7F4; color: var(--navy); font-size: 24px; line-height: 1; cursor: pointer; }
.awg-pfv-hero { display: flex; gap: 18px; align-items: center; margin-bottom: 18px; }
.awg-pfv-av { width: 92px !important; height: 92px !important; font-size: 30px !important; }
.awg-pfv-hero h2 { margin: 0 0 4px; font-size: 26px; }
.awg-pfv-role { margin: 0 0 4px !important; font-weight: 600; color: var(--sage); }
.awg-pfv-meta { margin: 0 0 8px !important; color: var(--muted); font-size: 14px; }
.awg-pfv-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 10px; margin-bottom: 14px; }
.awg-pfv-facts div { background: #F4F7F4; border: 1px solid var(--line); border-radius: 12px; padding: 10px 12px; }
.awg-pfv-facts b { display: block; font: 600 18px var(--serif); color: var(--navy); }
.awg-pfv-facts span { font-size: 12.5px; color: var(--muted); }
.awg-pfv-sec { border-top: 1px solid var(--line); padding-top: 14px; margin-top: 14px; }
.awg-pfv-sec h3 { font-size: 18px; }
.awg-pfv-bio { white-space: pre-line; }
.awg-pfv-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.awg-pfv-chips i { font-style: normal; font-size: 13px; background: var(--cream); border: 1px solid var(--line); border-radius: 999px; padding: 3px 11px; }
.awg-pfv-svc { border: 1px solid var(--line); border-radius: 12px; padding: 12px 14px; margin-bottom: 8px; background: var(--cream); }
.awg-pfv-svc p { margin: 4px 0; }
.awg-pfv-svc small { color: var(--muted); }
.awg-pfv-books { display: grid; grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: 12px; }
.awg-pfv-books figure { margin: 0; }
.awg-pfv-books img, .awg-pfv-books span { display: block; width: 100%; aspect-ratio: 2 / 3; object-fit: cover; border-radius: 6px; background: var(--beige); }
.awg-pfv-books figcaption { font-size: 12.5px; margin-top: 6px; }
@media (max-width: 640px) {
	.awg-pf-sample { grid-template-columns: 1fr; }
	.awg-pf-lrow.has-extra { grid-template-columns: minmax(0, 1fr) 46px; }
	.awg-pf-lrow.has-extra > .awg-pf-lextra { grid-column: 1; grid-row: auto; }
	.awg-pfv-box { padding: 22px 16px; }
	.awg-pfv-hero { flex-direction: column; align-items: flex-start; }
}

/* ---------- Public profile 6.25.37: how I work, service details, samples, verified achievements ---------- */
.awg-pp-work { display: grid; gap: 8px; margin: 0; }
.awg-pp-work div { display: grid; grid-template-columns: minmax(150px, .5fr) 1fr; gap: 12px; padding: 10px 14px; background: var(--cream); border: 1px solid var(--line); border-radius: 12px; }
.awg-pp-work dt { font-weight: 700; color: var(--navy); font-size: 14px; }
.awg-pp-work dd { margin: 0; font-size: 14.5px; }
.awg-pp-svcmeta { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 !important; }
.awg-pp-svcmeta span { font-size: 12.5px; font-weight: 600; color: #2F5141; background: var(--sage-soft); border-radius: 999px; padding: 3px 10px; }
.awg-pp-exc { font-size: 13px; color: var(--muted); margin: 0 !important; }
.awg-pp-h3 { margin-top: 22px !important; }
.awg-pp-samples { display: grid; gap: 10px; }
.awg-pp-sample { border: 1px solid var(--line); border-radius: 14px; background: #fff; overflow: hidden; }
.awg-pp-sample summary, .awg-pp-sample--tap { list-style: none; display: flex; align-items: center; gap: 10px; padding: 12px 14px; cursor: pointer; font-size: 14.5px; }
.awg-pp-sample summary::-webkit-details-marker { display: none; }
.awg-pp-sample summary b, .awg-pp-sample--tap b { flex: none; font-size: 11px; color: #fff; background: var(--navy); border-radius: 6px; padding: 3px 6px; letter-spacing: .05em; }
.awg-pp-sample summary span, .awg-pp-sample--tap span { flex: 1; min-width: 0; }
.awg-pp-sample summary em, .awg-pp-sample--tap em { font-style: normal; font-weight: 700; color: var(--sage); white-space: nowrap; }
.awg-pp-sample[open] summary em { color: var(--muted); }
.awg-pp-sample iframe { display: block; width: 100%; height: min(78vh, 760px); border: 0; border-top: 1px solid var(--line); background: #F4F7F4; }
.awg-pp-sample img { display: block; max-width: 100%; margin: 0 auto; border-top: 1px solid var(--line); -webkit-user-select: none; user-select: none; }
.awg-pp-note { font-size: 13px; color: var(--muted); margin-top: 10px; }
.awg-pp-awards { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; }
.awg-pp-awards li { display: flex; flex-direction: column; gap: 4px; margin: 0; padding: 14px 16px; border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 12px; background: var(--cream); }
.awg-pp-awt { font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gold); }
.awg-pp-awards b { font-family: var(--serif); font-size: 16.5px; color: var(--navy); font-weight: 600; }
.awg-pp-awards small { color: var(--muted); font-size: 13px; }
.awg-pp-awards .awg-pp-ver { font-size: 13px; font-weight: 600; color: #1E7A45 !important; } /* 6.26.85: same green tick + word as certificates. */
.awg-pp-awards .awg-pp-ver svg { display: inline-block; width: 1.15em; height: 1.15em; vertical-align: -.22em; margin-right: 3px; }
@media (max-width: 640px) { .awg-pp-work div { grid-template-columns: 1fr; gap: 2px; } }
.awg-pf .awg-pf-sub { margin: 24px 0 4px; font: 600 15px var(--sans); }
.awg-pf .awg-pf-sub + .awg-pf-hint { margin-bottom: 10px; max-width: none; }
.awg-pf .awg-pf-card > .awg-pf-hint { max-width: none; }
.awg-pf .awg-pf-photorow p.awg-pf-l { font: 600 14px var(--sans); color: var(--navy); margin: 0 0 8px; }
.awg-pf .awg-pf-rate select { max-width: 220px; }
.awg-pf .awg-pf-card > .awg-pf-add, .awg-pf .awg-pf-list + .awg-pf-add { margin-top: 4px; }
.awg-pfv-body p, .awg-pfv-body summary { font-size: 15px; line-height: 1.55; }
.awg-pfv-body small { font-size: 13px; line-height: 1.5; display: block; }
.awg-pfv-svc b { font: 600 16px var(--sans); color: var(--navy); }
.awg-pf-block + .awg-pf-block, .awg-pf-block + .awg-pf-g2 { margin-top: 8px; }

/* Preview close button: always inside the box, never restyled by the theme. */
.awg-ptl .awg-pfv-x, .awg-pfv .awg-pfv-x { position: absolute !important; top: 12px !important; right: 12px !important; left: auto !important; width: 40px !important; height: 40px !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; border: 1px solid var(--line) !important; border-radius: 50% !important; background: #fff !important; color: var(--navy) !important; font: 400 24px/1 var(--sans) !important; display: grid !important; place-items: center !important; box-shadow: none !important; z-index: 2; cursor: pointer; }
.awg-ptl .awg-pfv-x:hover, .awg-pfv .awg-pfv-x:hover, .awg-pfv .awg-pfv-x:focus-visible { background: #F4F7F4 !important; color: var(--navy) !important; }
.awg-pfv-box { padding-top: 34px; }
.awg-pfv-hero { padding-right: 44px; }
.awg-ptl-standalone .awg-ptl-barnav:empty { display: none; }
.awg-ptl-bar__slot > .awg-ptl-user:first-child { margin-left: auto; }
.awg-pf-offers.is-one { grid-template-columns: 1fr; }
.awg-pf-offers.is-one .awg-pf-og { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); column-gap: 18px; }
.awg-pf-offers.is-one .awg-pf-og legend { grid-column: 1 / -1; }
.awg-pf .awg-pf-more { display: inline-block; margin-top: 8px; font-size: 13.5px; padding: 4px 0; }
/* 6.26.100: "Show other service areas" is a full-width show / hide bar, with its own
   colours so a theme's button or link styles can't paint over it. */
.awg-ptl .awg-pf .awg-pf-more,
.awg-ptl .awg-pf .awg-pf-more:hover,
.awg-ptl .awg-pf .awg-pf-more:focus,
.awg-ptl .awg-pf .awg-pf-more:active { display: flex !important; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 48px; margin: 10px 0 0 !important; padding: 10px 14px 10px 16px !important; border: 1.5px dashed #9DB3A6 !important; border-radius: 12px !important; background: #fff !important; color: #2F5141 !important; font: 600 14.5px/1.35 var(--sans) !important; text-align: left; text-decoration: none !important; text-transform: none !important; letter-spacing: 0 !important; box-shadow: none !important; cursor: pointer; }
.awg-ptl .awg-pf .awg-pf-more[hidden] { display: none !important; }
.awg-ptl .awg-pf .awg-pf-more:hover { background: #EEF4EF !important; border-color: #5C7A6B !important; }
.awg-ptl .awg-pf .awg-pf-more:focus-visible { outline: 3px solid #5C7A6B !important; outline-offset: 2px; }
.awg-ptl .awg-pf .awg-pf-more.is-open { border-style: solid !important; background: #F4F7F4 !important; }
.awg-ptl .awg-pf .awg-pf-more.is-open:hover { background: #EEF4EF !important; }
.awg-pf-more__t { min-width: 0; }
.awg-pf-more__t small { margin-left: 6px; font: 500 13px var(--sans); color: #6B7A72; }
.awg-pf-more__chev { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #E5EDE7; color: #2F5141; transition: transform .2s ease; }
.awg-pf-more.is-open .awg-pf-more__chev { transform: rotate(180deg); }
.awg-pf-offers--more { margin-top: 10px; }
.awg-pf-offers--more[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) { .awg-pf-more__chev { transition: none; } }
@media (max-width: 600px) { .awg-pf-more__t small { display: block; margin: 2px 0 0; } }
.awg-ptl-done:focus, .awg-ptl-done:focus-visible { outline: none; }
.awg-pf input[type=tel] { width: 100%; font: 400 15px var(--sans); color: var(--body); background: var(--cream); border: 1px solid var(--line); border-radius: 10px; padding: 11px 13px; margin: 6px 0 0; box-shadow: none; outline: none; min-height: 46px; }
.awg-pf .awg-pf-phone .iti { display: block; width: 100%; margin-top: 6px; }
.awg-pf .awg-pf-phone .iti input[type=tel] { margin-top: 0; }
.awg-pf .awg-pf-phone .iti--separate-dial-code .iti__selected-flag { border-radius: 10px 0 0 10px; background: #F4F7F4; }

/* Public profile polish (6.25.46) */
.awg-pp-facts div.is-text b { font: 600 17px/1.3 var(--serif); }
.awg-pp-svcmeta span { border-radius: 8px; line-height: 1.35; }
.awg-ptl-team > .awg-ptl-safe { margin-top: 22px !important; }
.awg-pp-sample summary span, .awg-pp-sample--tap span { overflow-wrap: anywhere; }
/* PDF samples on phones (6.26.29): a plain link to the phone's viewer replaces the frame. */
.awg-pp-sample--tap { display: none; text-decoration: none !important; color: var(--body) !important; }
@media (max-width: 760px) {
	.awg-pp-sample--frame { display: none; }
	.awg-pp-sample--tap { display: flex; }
}
@container (max-width: 560px) {
	.awg-pp-sample summary { flex-wrap: wrap; }
	.awg-pp-sample summary span { flex: 1 1 calc(100% - 60px); }
	.awg-pp-sample summary em { flex-basis: 100%; padding-left: 46px; }
}
@media (max-width: 640px) {
	.awg-pp-facts div.is-text { grid-column: 1 / -1; }
}
.awg-pp-sample .awg-pp-s-close { display: none; }
.awg-pp-sample[open] .awg-pp-s-open { display: none; }
.awg-pp-sample[open] .awg-pp-s-close { display: inline; color: var(--muted); }
.awg-pp-s-alt { margin: 0 !important; padding: 10px 14px; font-size: 13px; border-top: 1px solid var(--line); background: #fff; }
.awg-pp-s-alt a { color: var(--sage) !important; font-weight: 600; text-decoration: none; }
@container (max-width: 560px) { .awg-pp-sample[open] summary em { padding-left: 46px; } }
.awg-pf-tcard p.is-empty { color: var(--muted); font-style: italic; opacity: .8; }


/* Long words or names never run out of a card (6.25.55). */
.awg-pf-tcard, .awg-pf-tcard *, .awg-ptl-card, .awg-ptl-card *, .awg-pp, .awg-pp * { overflow-wrap: anywhere; word-break: normal; }
.awg-pf-tt > div, .awg-pf-tft > span:first-child { min-width: 0; flex: 1 1 auto; }
.awg-pf-tft .awg-pf-badge { flex: 0 0 auto; white-space: nowrap; }


/* ==== Team grid and profile page, mockup applied (6.25.65) ==== */
.awg-ptl .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* Team grid: toolbar */
.awg-ptl-teambar { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 12px; margin: 0 0 12px; }
.awg-ptl-teambar .awg-ptl-filters { margin: 0; }
.awg-ptl-filters button { min-height: 44px; padding: 0 18px; font-size: 15px; color: var(--navy); border-color: #CFD8D2; }
.awg-ptl-filters button span { opacity: .7; font-weight: 500; margin-left: 2px; }
.awg-ptl-teamfind { display: flex; flex-wrap: wrap; gap: 10px; flex: 1 1 360px; justify-content: flex-end; }
.awg-ptl-teamsearch { display: flex; align-items: center; gap: 8px; flex: 1 1 220px; max-width: 320px; min-height: 44px; padding: 0 16px; border: 1px solid #CFD8D2; border-radius: 999px; color: var(--muted); background: #fff; margin: 0; }
.awg-ptl-teamsearch:focus-within { border-color: var(--sage); }
/* 6.26.50: one-service grid (no tabs): the search and genre fill the bar. */
.awg-ptl-teambar--solo .awg-ptl-teamfind { justify-content: flex-start; }
.awg-ptl-teambar--solo .awg-ptl-teamsearch { max-width: none; }
.awg-ptl .awg-ptl-teamsearch input { border: 0 !important; outline: 0; box-shadow: none !important; background: transparent !important; font: 400 15px var(--sans); color: var(--body); flex: 1; min-width: 0; width: auto; padding: 0 !important; margin: 0 !important; min-height: 0; height: 40px; }
.awg-ptl-teamgenre { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--muted); margin: 0; }
.awg-ptl .awg-ptl-teamgenre select { font: 400 15px var(--sans); color: var(--navy); border: 1px solid #CFD8D2; border-radius: 999px; padding: 0 34px 0 14px; min-height: 44px; height: 44px; background-color: #fff; margin: 0; width: auto; max-width: 200px; }
.awg-ptl .awg-ptl-teamcount { margin: 0 0 18px; font-size: 14px; color: var(--muted); }
.awg-ptl-teamnone { background: #fff; border: 1px dashed #CFD8D2; border-radius: 16px; padding: 22px; text-align: center; color: var(--muted); margin: 0; }
.awg-ptl-teamnone button { font: 600 15px var(--sans); color: var(--sage); background: none; border: 0; padding: 0 0 0 6px; cursor: pointer; text-decoration: underline; }
@media (max-width: 600px) {
	.awg-ptl-teamfind { justify-content: stretch; }
	.awg-ptl-teamsearch { max-width: none; flex-basis: 100%; }
	.awg-ptl-teamgenre { flex: 1 1 100%; }
	.awg-ptl .awg-ptl-teamgenre select { flex: 1; max-width: none; }
}

/* Team grid: cards */
.awg-ptl-team .awg-ptl-grid { grid-template-columns: repeat(auto-fill, minmax(min(300px, 100%), 1fr)); gap: 22px; }
.awg-ptl-card { gap: 14px; border: 1px solid var(--line); border-radius: 20px; padding: 24px; box-shadow: inset 0 4px 0 var(--c, var(--sage)); }
.awg-ptl-card:hover { box-shadow: inset 0 4px 0 var(--c, var(--sage)), 0 24px 40px -30px rgba(28,36,57,.55); }
.awg-ptl-card strong { font-size: 21px; line-height: 1.2; }
.awg-ptl-card em { font-size: 14.5px; }
.awg-ptl-card__badges { display: flex; flex-wrap: wrap; gap: 6px; }
.awg-ptl-vet { font-size: 12.5px; font-weight: 600; color: #2F5141; background: var(--sage-soft); border-radius: 999px; padding: 3px 10px; }
.awg-ptl-vet::before { content: "\2713\00a0"; }
.awg-ptl-card__badges .awg-ptl-av { margin-left: 0; display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 600; color: #1F5C33; background: #E3F1E6; }
.awg-ptl-card__badges .awg-ptl-av::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #2E8B4E; }
.awg-ptl-card__badges .awg-ptl-av.is-busy { color: #7a561f; background: #F3E6CF; }
.awg-ptl-card__badges .awg-ptl-av.is-busy::before { background: #B7832F; }
.awg-ptl-card__bio { font-size: 15px; line-height: 1.6; color: #4A5262; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.awg-ptl-card .awg-ptl-chips i { font-weight: 500; font-size: 13px; }
.awg-ptl-chips i.is-more { background: none; border-color: transparent; color: var(--muted); padding-left: 2px; }
.awg-ptl-card__foot { justify-content: space-between; gap: 12px; padding-top: 14px; font-size: 14px; }
.awg-ptl-card__stats { display: flex; flex-wrap: wrap; gap: 6px 14px; align-items: center; }
.awg-ptl-card__go { color: var(--sage); font-weight: 600; white-space: nowrap; }
.awg-ptl-card:hover .awg-ptl-card__go, .awg-ptl-card:focus-visible .awg-ptl-card__go { color: var(--navy); }

/* Team grid: trust points and join banner */
.awg-ptl-tpoints { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr)); gap: 16px; margin-top: 44px; }
.awg-ptl-tpoints > div { display: flex; gap: 14px; background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 22px; }
.awg-ptl-tpoints__i { width: 42px; height: 42px; border-radius: 12px; background: var(--sage-soft); color: #2F5141; display: grid; place-items: center; flex: none; }
.awg-ptl .awg-ptl-tpoints p { margin: 0; font-size: 14.5px; color: #4A5262; line-height: 1.5; }
.awg-ptl-tpoints strong { display: block; color: var(--navy); font-size: 16px; margin-bottom: 2px; }
.awg-ptl-joincta { margin-top: 20px; background: var(--navy); color: #DCE2EC; border-radius: 24px; padding: 34px; display: flex; flex-wrap: wrap; gap: 18px 40px; align-items: center; justify-content: space-between; }
.awg-ptl-joincta > div { flex: 1 1 380px; }
.awg-ptl .awg-ptl-joincta h2 { color: #fff; font-size: 26px; margin: 0 0 6px; }
.awg-ptl .awg-ptl-joincta p { margin: 0; font-size: 16px; color: #DCE2EC; }
.awg-ptl .awg-ptl-joincta a { background: var(--mint); color: var(--navy) !important; font-weight: 700; padding: 14px 26px; border-radius: 12px; text-decoration: none !important; white-space: nowrap; }
.awg-ptl .awg-ptl-joincta a:hover, .awg-ptl .awg-ptl-joincta a:focus-visible { background: #fff; }

/* Profile: breadcrumb and hero */
.awg-pp-crumb { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0 0 18px; font-size: 14px; }
.awg-pp-hero { grid-template-columns: 150px minmax(0, 1fr) minmax(240px, 280px); padding: 32px; border-radius: 24px; gap: 28px; }
.awg-pp-hero::before { background: var(--c, var(--sage)); }
.awg-pp-act { display: flex; flex-direction: column; gap: 10px; background: var(--base); border: 1px solid var(--line); border-radius: 18px; padding: 20px; }
.awg-pp-act .awg-pp-rate { text-align: left; border-bottom: 1px solid var(--line); padding-bottom: 10px; }
.awg-pp-act__l { font-size: 13px; color: var(--muted); }
.awg-pp-act__v { font: 600 20px/1.2 var(--serif); color: var(--navy); margin-top: -6px; }
.awg-pp-act .awg-ptl-btn { width: 100%; min-height: 48px; }
.awg-pp-act__s { font-size: 12.5px; color: var(--muted); text-align: center; }
@container (max-width: 900px) {
	.awg-pp-hero { grid-template-columns: 150px minmax(0, 1fr); }
	.awg-pp-act { grid-column: 1 / -1; }
}
@container (max-width: 640px) {
	.awg-pp-hero { grid-template-columns: 1fr; padding: 22px; }
}

/* Profile: facts, tabs, sections */
.awg-pp-facts { gap: 16px; margin: 18px 0 26px; grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr)); }
.awg-pp-facts div { border-radius: 18px; padding: 18px 20px; }
.awg-pp-facts b { font-size: 28px; }
.awg-pp-tabs { top: 0; padding: 6px; box-shadow: 0 6px 18px rgba(28, 36, 57, .06); }
.admin-bar .awg-pp-tabs { top: 32px; }
.awg-pp-tabs a { padding: 10px 16px; font-size: 14.5px; }
.awg-pp-tabs a.is-on { background: var(--navy); color: #fff !important; }
.awg-pp-tabs.is-stuck { border-radius: 0 0 14px 14px; }
.awg-pp-sec { border-radius: 22px; padding: 30px; }
.awg-pp-sec h2 { font-size: 26px; }
.awg-pp-tags { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr)); gap: 22px; margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--line); }
#awg-pp-about .awg-pp-tags h3, #awg-pp-about > h3 { font: 700 13px var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--muted); margin: 0 0 12px; }
#awg-pp-about > h3 { margin-top: 26px; }
#awg-pp-about .awg-pp-chips i { font-size: 14px; padding: 6px 14px; }
.awg-pp-work { grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)); gap: 12px; display: grid; }
.awg-pp-work div { display: block; padding: 14px 16px; border-radius: 14px; }
.awg-pp-work dt { font-weight: 500; font-size: 13px; color: var(--muted); }
.awg-pp-work dd { margin: 2px 0 0; font-weight: 600; color: var(--navy); font-size: 15px; }

/* Profile: services */
.awg-pp-svcs { grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr)); gap: 16px; }
.awg-pp-svc { border-radius: 18px; padding: 22px; gap: 12px; }
.awg-pp-svc h3 { font-size: 20px; }
.awg-pp-svc p { font-size: 14.5px; color: #4A5262; }
.awg-pp-svch { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); margin-top: 4px; }
.awg-pp-svc ul { gap: 7px; font-size: 14.5px; }
.awg-pp-svc li { display: flex; gap: 8px; align-items: flex-start; margin: 0; }
.awg-pp-svc li::before { content: "\2713"; flex: none; }
.awg-pp-svc .awg-pp-del { margin-top: 0; padding-top: 0; border-top: 0; }

/* Profile: quote form (no empty gap under the button) */
.awg-pp-quote { border-radius: 22px; padding: 26px; gap: 14px; }
.awg-pp-quote h2 { font-size: 22px; margin: 0; }
.awg-ptl .awg-pp-qlead { margin: -8px 0 0; font-size: 14px; color: var(--muted); line-height: 1.5; }
.awg-pp-quote .awg-ptl-btn { min-height: 50px; font-size: 16px; }
.awg-pp-quote .awg-ptl-msg { margin: 0; }
.awg-pp-quote .awg-ptl-msg:empty { display: none; }
.awg-pp-trust { margin: 0; gap: 6px; font-size: 13.5px; }
.awg-pp-protect { margin-top: 16px; background: var(--sage-soft); border-radius: 18px; padding: 18px 20px; font-size: 13.5px; color: #2F5141; line-height: 1.55; }
.awg-pp-protect strong { display: block; font-size: 14.5px; margin-bottom: 4px; color: #1F3B2E; }
.awg-pp-svc.is-asked { border-color: var(--sage); }

/* ==== Profile page on phones and small windows (6.25.67) ==== */
/* Fact tiles: an even 2 x 2, never one tile stretched across with another left alone. */
@container (max-width: 640px) {
	.awg-pp-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	.awg-pp-facts div, .awg-pp-facts div.is-text { grid-column: auto; padding: 14px 16px; }
	.awg-pp-facts b { font-size: 24px; }
	.awg-pp-facts div.is-text b { font-size: 16px; }
	/* Hero: photo beside the name, smaller, so the name is on screen at once. */
	.awg-pp-hero { grid-template-columns: 88px minmax(0, 1fr); gap: 14px 16px; align-items: start; }
	.awg-pp-photo .awg-ptl-av-img, .awg-pp-photo img, .awg-pp-photo .awg-ptl-av-txt { width: 88px !important; height: 88px !important; font-size: 28px; box-shadow: 0 0 0 3px #fff, 0 0 0 4px var(--line); }
	.awg-pp-id { min-width: 0; }
	.awg-pp h1 { font-size: 28px; }
	.awg-pp-role { font-size: 16px; }
	.awg-pp-meta, .awg-pp-badges { grid-column: 1 / -1; }
	.awg-pp-sec { padding: 20px; border-radius: 18px; }
	.awg-pp-sec h2 { font-size: 23px; }
	.awg-pp-quote { padding: 20px; }
	.awg-pp-tabs a { padding: 9px 13px; font-size: 14px; }
}
/* The meta chips and badges sit under the photo and name on phones. */
@container (max-width: 640px) {
	.awg-pp-id { display: contents; }
	.awg-pp-id > .awg-pp-cat, .awg-pp-id > h1, .awg-pp-id > .awg-pp-role { grid-column: 2; }
	.awg-pp-id > .awg-pp-cat { align-self: end; margin-top: 4px; }
	.awg-pp-photo { grid-row: 1 / span 3; }
}
@media (max-width: 640px) {
	/* The sticky bottom bar has the quote button: the hero box keeps only the reply time. */
	.awg-pp-act { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; padding: 12px 14px; }
	.awg-pp-act .awg-ptl-btn, .awg-pp-act__s { display: none; }
	.awg-pp-act__v { margin: 0; font-size: 17px; }
	.awg-pp-act:not(:has(.awg-pp-act__v, .awg-pp-rate)) { display: none; }
	/* The chat bubble sits above the bottom bar instead of on its button. */
	body:has(.awg-pp-mbar) .awg-aig-chat { bottom: calc(84px + env(safe-area-inset-bottom)); }
}
/* The WordPress admin bar is 46px tall on tablets and scrolls away on phones. */
@media (max-width: 782px) { .admin-bar .awg-pp-tabs { top: 46px; } }
@media (max-width: 600px) { .admin-bar .awg-pp-tabs { top: 0; } }

/* ==== Service text limits: live counter and message (6.25.68) ==== */
.awg-pf-limwrap { display: block; }
.awg-pf .awg-pf-svcbox textarea[data-k="desc"] { min-height: 84px; }
.awg-pf-limit { display: block; font-weight: 500; font-size: 12.5px; color: var(--gold); margin-top: 5px; }
.awg-pf-limit.is-bad, .awg-pf-count.is-bad { color: var(--err); }
.awg-pf-limit[hidden] { display: none !important; }

/* ==== Public forms: counter under long boxes (6.25.69) ==== */
.awg-ptl-limit { display: block; text-align: right; font-size: 12.5px; color: var(--muted); margin-top: 4px; }
.awg-ptl-limit.is-near { color: var(--gold); }
.awg-ptl-limit.is-bad { color: var(--err); }
.awg-ptl-limit[hidden] { display: none !important; }

/* ==== Preview profile: the sections the live page shows (6.25.72) ==== */
.awg-pfv-inc { margin: 6px 0 4px; padding: 0; list-style: none; }
.awg-pfv-inc li { position: relative; padding-left: 20px; font-size: 14px; margin: 2px 0; }
.awg-pfv-inc li::before { content: "\2713"; position: absolute; left: 0; color: var(--sage); font-weight: 700; }
.awg-pfv-smp { margin: 4px 0; }
.awg-pfv-ba { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.awg-pfv-ba > div { background: var(--cream); border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px; }
.awg-pfv-ba p { margin: 4px 0 0; white-space: pre-line; font-size: 14px; }
@media (max-width: 600px) { .awg-pfv-ba { grid-template-columns: 1fr; } }

/* 6.25.79: "At a glance" box, AuthorWings Verified badge and How we vet popup */
.awg-ico { flex: none; display: block; }
@container (min-width: 901px) {
	.awg-pp-hero { grid-template-columns: 150px minmax(0, 1fr) minmax(260px, 330px); }
}
.awg-pp-b.is-vetted { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; }
.awg-ptl-vet { display: inline-flex; align-items: center; gap: 5px; }
.awg-ptl-vet::before { content: none; }
.awg-pp-glance { gap: 12px; }
.awg-ptl .awg-pp-glance h2.awg-pp-act__v { font: 600 18px/1.2 var(--serif); color: var(--navy); }
.awg-pp-gl { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; font-size: 14px; line-height: 1.35; color: var(--body); }
.awg-pp-gl li { display: flex; align-items: center; gap: 10px; margin: 0; padding: 0; }
.awg-pp-gl li::before { content: none; }
.awg-pp-gl .awg-ico, .awg-pp-gl li.is-trust .awg-ico { color: var(--c, var(--sage)); } /* 6.25.81: icons follow the profile's category colour, like the bar on top. */
.awg-pp-gl b { color: var(--navy); font-weight: 700; }
.awg-pp-act.awg-pp-glance { gap: 9px; padding: 16px 18px; }
.awg-ptl .awg-pp-glance h2.awg-pp-act__v { margin: 0; font-size: 18px; }
.awg-pp-glance .awg-pp-gl { gap: 6px; font-size: 13.5px; }
.awg-ptl .awg-pp-vetlink { align-self: flex-start; display: inline-flex; align-items: center; gap: 4px; min-height: 32px; margin: 2px 0 0; padding: 4px 0 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; font: 600 13.5px var(--sans); color: #2F5141 !important; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.awg-ptl .awg-pp-vetlink:hover, .awg-ptl .awg-pp-vetlink:focus-visible { color: var(--navy); background: none; }
.awg-pp-vet { border: 0; padding: 0; border-radius: 20px; width: min(520px, calc(100vw - 32px)); max-height: calc(100vh - 32px); background: #fff; color: var(--body); box-shadow: 0 40px 80px -30px rgba(28, 36, 57, .6); font-family: var(--sans); }
.awg-pp-vet::backdrop { background: rgba(28, 36, 57, .55); }
.awg-pp-vet__in { position: relative; padding: 30px 30px 26px; display: flex; flex-direction: column; gap: 12px; }
.awg-pp-vet__x { position: absolute; top: 12px; right: 12px; width: 44px; height: 44px; border: 0; border-radius: 50%; background: var(--base); color: var(--navy); font: 400 26px/1 var(--sans); cursor: pointer; display: grid; place-items: center; padding: 0; }
.awg-pp-vet__x:hover, .awg-pp-vet__x:focus-visible { background: var(--sage-soft); }
.awg-pp-vet__k { display: inline-flex; align-items: center; gap: 7px; margin: 0; align-self: flex-start; background: var(--sage-soft); color: #2F5141; border-radius: 999px; padding: 5px 12px; font-size: 13px; font-weight: 600; }
.awg-ptl .awg-pp-vet h2 { margin: 2px 0 0; font: 600 24px/1.2 var(--serif); color: var(--navy); padding-right: 40px; }
.awg-pp-vet p { margin: 0; font-size: 15px; line-height: 1.55; }
.awg-pp-vet__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9px; }
.awg-pp-vet__list li { display: flex; gap: 10px; align-items: flex-start; margin: 0; font-size: 15px; line-height: 1.45; }
.awg-pp-vet__list li::before { content: none; }
.awg-pp-vet__list .awg-ico { color: #2F6B45; margin-top: 2px; }
.awg-pp-vet__d { color: var(--muted); font-size: 13.5px !important; border-top: 1px solid var(--line); padding-top: 12px; }
.awg-pp-vet__more { font-weight: 600; color: #2F5141 !important; }
body.awg-vet-open { overflow: hidden; }
@media (max-width: 640px) {
	/* The old phone rule hides buttons in the hero box; this box keeps its list and button. */
	.awg-pp-act.awg-pp-glance { flex-direction: column; align-items: stretch; gap: 9px; padding: 16px 18px; }
	.awg-ptl .awg-pp-glance h2.awg-pp-act__v { margin: 0; font-size: 18px; }
}

/* 6.25.82: closing line with a lock in the How we vet box */
.awg-pp-vet__note { display: flex; gap: 8px; align-items: flex-start; border-top: 1px solid var(--line); padding-top: 12px; font-size: 14px !important; color: var(--body); }
.awg-pp-vet__note .awg-ico { color: #2F5141; margin-top: 3px; }

/* 6.25.85: country and languages as plain text; Expertise as a tick list; Genres as text */
.awg-pp-meta.is-text { gap: 10px; align-items: center; }
.awg-pp-meta.is-text span { background: none; border: 0; padding: 0; border-radius: 0; font-size: 14.5px; color: #4A5262; display: inline-flex; align-items: center; gap: 6px; }
.awg-pp-meta.is-text .awg-ico { color: var(--muted); }
.awg-pp-meta.is-text .awg-pp-meta__dot { color: #B8C2BC; }
.awg-pp-xp { list-style: none; margin: 0; padding: 0; display: grid; gap: 7px; font-size: 15.5px; color: var(--body); }
.awg-pp-xp li { display: flex; gap: 9px; align-items: center; margin: 0; padding: 0; }
.awg-pp-xp li::before { content: none; }
.awg-pp-xp .awg-ico { color: var(--c, var(--sage)); }
.awg-pp-gen { margin: 0; font-size: 15.5px; line-height: 1.8; color: var(--body); }
.awg-pp-gen__dot { color: #B8C2BC; margin: 0 3px; }

/* 6.25.86: "Vetted by AuthorWings" seal (profile) and its small form (Team cards) */
.awg-seal { display: inline-flex; align-items: center; gap: 6px; } /* Shield ~1.15x the capitals, gap ~half the shield (6.25.88). */
.awg-seal .awg-seal__ico { color: #2F6B45; flex: none; display: block; }
.awg-seal__txt { font: 600 14.5px var(--sans); color: #2F5141; line-height: 1.3; } /* One line (6.25.87). */
.awg-pp-badges { align-items: center; }
.awg-ptl-vet { background: none !important; padding: 0 !important; color: #2F5141; gap: 5px; }
.awg-ptl-vet .awg-seal__ico { color: #2F6B45; flex: none; display: block; }

/* 6.25.89: the shield matches the letters exactly: top at the tallest letters,
   bottom on the baseline. Sized in em, so it follows the text size. */
.awg-seal { font-size: 14.5px; }
.awg-seal__txt { font-size: inherit; }
.awg-seal .awg-seal__ico, .awg-ptl-vet .awg-seal__ico { height: 1.1em; width: auto; transform: none; } /* 6.25.90: same rule as the pin and globe icons: centred on the line, no shift. */
.awg-seal, .awg-ptl-vet { gap: .3em; }

/* 6.25.91: the badge uses the same outline shield as "At a glance", sized like the pin and globe icons. */
.awg-seal .awg-ico, .awg-ptl-vet .awg-ico { color: #2F6B45; flex: none; display: block; }
.awg-seal, .awg-ptl-vet { gap: 6px; }

/* 6.25.92: solid green shield again, as tall as the capital letters, its bottom on the
   text baseline. Baseline alignment does not depend on the theme's line height. */
.awg-seal, .awg-ptl-vet { align-items: baseline !important; gap: .35em; }
.awg-seal .awg-seal__ico, .awg-ptl-vet .awg-seal__ico { height: .75em; width: auto; transform: translateY(.04em); color: #2F6B45; display: inline-block; flex: none; }

/* 6.25.93: same proportions as the "At a glance" lines: icon 1.19x the text size,
   centred on the capitals, gap 0.74x the text size (measured from the box). */
.awg-seal, .awg-ptl-vet { align-items: center !important; gap: .74em !important; }
.awg-seal .awg-seal__ico, .awg-ptl-vet .awg-seal__ico { height: 1.19em !important; width: 1.19em !important; transform: translateY(-.05em) !important; color: #2F6B45; display: block; flex: none; }

/* 6.25.94: two-line profile badge. The shield covers both lines. */
.awg-seal.is-two { gap: 8px !important; }
.awg-seal.is-two .awg-seal__ico { height: 2.45em !important; width: 2.45em !important; margin: -.15em -.1em -.15em -.2em; transform: none !important; }
.awg-seal .awg-seal__txt { display: flex; flex-direction: column; line-height: 1.2; }
.awg-seal .awg-seal__txt b { font: 600 1em var(--sans); color: #2F5141; }
.awg-seal .awg-seal__txt small { font: 500 .86em var(--sans); color: var(--muted); }

/* 6.25.95: Team cards follow the profile: job title above the name, specialties under it,
   country with a pin, genres as text with dots, "14 years · 30 books". */
.awg-ptl-card__job { font: 600 11px var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin-bottom: 2px; }
.awg-ptl-card .awg-ptl-card__loc { display: inline-flex; align-items: center; gap: 5px; margin-top: 2px; }
.awg-ptl-card__loc .awg-ico { color: var(--muted); }
.awg-ptl-card__gen { display: block; font-size: 14px; line-height: 1.7; color: var(--body); }
.awg-ptl-card__dot { color: #B8C2BC; margin: 0 2px; }
.awg-ptl-card__more { color: var(--muted); white-space: nowrap; }
.awg-ptl-card__stats > span + span:not(.awg-ptl-rating)::before { content: "\b7"; color: #B8C2BC; margin-right: 10px; }
.awg-ptl-card__stats { gap: 6px 10px; }

/* 6.25.96: the specialty line on Team cards stays on one line (ends with … when long),
   so every card's country and badge line up. The full text is on the profile. */
.awg-ptl-card .awg-ptl-card__top em { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
.awg-ptl-card .awg-ptl-card__job { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }

/* 6.25.97: Expertise with ticks at the bottom of Team cards */
.awg-ptl-card__xp { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 14px; color: var(--body); }
.awg-ptl-card__xp > span { display: inline-flex; align-items: center; gap: 5px; }
.awg-ptl-card__xp .awg-ico { color: var(--c, var(--sage)); }

/* 6.25.102 Phones: tighter, even spacing in the profile header, and no lone
   dot when the country and language wrap onto two lines. */
@container (max-width: 640px) {
	.awg-pp-hero { row-gap: 10px; }
	.awg-pp-id > h1, .awg-pp-id > .awg-pp-role, .awg-pp-id > .awg-pp-meta, .awg-pp-id > .awg-pp-badges { margin-bottom: 0 !important; }
	.awg-pp-id > .awg-pp-meta { margin-top: 4px !important; }
	.awg-pp-hero > .awg-pp-glance { margin-top: 6px; }
}
@container (max-width: 640px) {
	/* The icons already separate country and language, so no dot that could be left alone at a line end. */
	.awg-pp-meta.is-text { flex-wrap: wrap; gap: 6px 16px; }
	.awg-pp-meta.is-text .awg-pp-meta__dot { display: none; }
}

/* 6.25.103 Team page filters on phones: the search box and genre menu stay
   inside the bar (the theme's box sizing made them stick out), and the service
   buttons sit on one row you can swipe instead of taking three rows. */
.awg-ptl-teambar, .awg-ptl-teambar *, .awg-ptl-teambar *::before, .awg-ptl-teambar *::after { box-sizing: border-box; }
.awg-ptl-teamfind, .awg-ptl-teamsearch, .awg-ptl-teamgenre { min-width: 0; }
@media (max-width: 600px) {
	.awg-ptl-teambar { padding: 10px; gap: 10px; }
	.awg-ptl-teambar .awg-ptl-filters { flex: 1 1 100%; min-width: 0; flex-wrap: nowrap; overflow-x: auto; gap: 6px; margin: -2px -10px 0; padding: 2px 10px 2px; scroll-snap-type: x proximity; scroll-padding-inline: 10px; scrollbar-width: none; -webkit-overflow-scrolling: touch; -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent); }
	.awg-ptl-teambar .awg-ptl-filters::-webkit-scrollbar { display: none; }
	.awg-ptl-teambar .awg-ptl-filters button { flex: none; min-height: 40px; padding: 0 15px; font-size: 14.5px; white-space: nowrap; scroll-snap-align: start; }
	.awg-ptl-teamfind { flex: 1 1 100%; gap: 8px; }
	.awg-ptl-teamsearch { min-height: 42px; }
	.awg-ptl .awg-ptl-teamgenre select { min-height: 42px; height: 42px; min-width: 0; width: 100%; }
}

/* 6.25.104 Team cards: years and books stay together on one line (no dot left
   at the start of a line); if the line is too narrow, "View profile" moves under. */
.awg-ptl-card__foot { flex-wrap: wrap; row-gap: 8px; }
.awg-ptl-card__stats { flex-wrap: nowrap; white-space: nowrap; }
.awg-ptl-card__go { white-space: nowrap; flex: none; margin-left: auto; }

/* 6.25.107 A professional who is not marked Vetted has no badge: hide the empty row. */
.awg-pp-badges:not(:has(*)), .awg-ptl-card__badges:not(:has(*)) { display: none; }

/* 6.25.108 Category colour line: flat and thinner. Team cards and "Similar
   professionals" cards 3 px, the profile header 4 px. Drawn as a flat strip that
   the rounded corners trim, instead of a border that curves round them. */
a.awg-ptl-card, .awg-pp-simcard { position: relative; overflow: hidden; border-top: 1px solid var(--line) !important; box-shadow: none; }
a.awg-ptl-card::before, .awg-pp-simcard::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 3px; background: var(--c, var(--sage)); pointer-events: none; }
.awg-pp-hero::before { height: 4px; }
a.awg-ptl-card:hover, a.awg-ptl-card:focus-visible { box-shadow: 0 24px 40px -30px rgba(28,36,57,.55); }
/* The faint border almost vanished on the light page at the rounded corners: a
   touch darker, with a slightly smaller radius so the colour line reaches further. */
a.awg-ptl-card, .awg-pp-simcard, .awg-pp-hero { border-color: #CFD8D2 !important; }
a.awg-ptl-card { border-radius: 16px; }
/* 6.25.109 Back to the line that follows the rounded corners (as before 6.25.108),
   but thinner: 3 px on cards. */
a.awg-ptl-card, .awg-pp-simcard { overflow: visible; border-top: 3px solid var(--c, var(--sage)) !important; }
a.awg-ptl-card::before, .awg-pp-simcard::before { content: none; }
a.awg-ptl-card { border-radius: 20px; }
/* Profile header: the same corner-following line, 4 px. */
.awg-pp-hero { border-top: 4px solid var(--c, var(--sage)) !important; }
.awg-pp-hero::before { content: none; }

/* ---------- Project page: progress, summary panel and a chat that fits its messages (6.25.111) ---------- */
.awg-ptl-progress { padding: 16px 20px; }
.awg-ptl-steps { list-style: none; margin: 0; padding: 0; display: flex; gap: 0; counter-reset: none; }
.awg-ptl-steps li { flex: 1; position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; font-size: 13px; font-weight: 600; color: var(--muted); }
.awg-ptl-steps li::before { content: ""; position: absolute; top: 13px; left: calc(-50% + 16px); right: calc(50% + 16px); height: 2px; background: var(--line); }
.awg-ptl-steps li:first-child::before { content: none; }
.awg-ptl-steps li.is-done::before, .awg-ptl-steps li.is-now::before { background: var(--sage); }
.awg-ptl-steps__dot { position: relative; z-index: 1; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: #fff; border: 2px solid var(--line); color: var(--muted); font-size: 12px; font-weight: 700; }
.awg-ptl-steps li.is-done .awg-ptl-steps__dot { background: var(--sage); border-color: var(--sage); color: #fff; }
.awg-ptl-steps li.is-now .awg-ptl-steps__dot { background: var(--navy); border-color: var(--navy); color: #fff; box-shadow: 0 0 0 4px var(--sage-soft); }
.awg-ptl-steps li.is-now { color: var(--navy); }
.awg-ptl-next { margin: 14px 0 0 !important; padding: 10px 14px; border-radius: 10px; background: var(--sage-soft); color: #2f4a3d; font-size: 14px; }
.awg-ptl-next b { color: var(--navy); }

.awg-ptl-pgrid { display: grid; grid-template-columns: minmax(0, 1fr) 290px; gap: 20px; align-items: start; }
.awg-ptl-pcol { min-width: 0; }
.awg-ptl-sum { margin: 0; position: sticky; top: 90px; display: flex; flex-direction: column; gap: 16px; }
.awg-ptl-sum__who { display: flex; gap: 12px; align-items: center; }
.awg-ptl-sum__who strong { display: block; font-family: var(--serif); font-size: 17px; color: var(--navy); line-height: 1.2; }
.awg-ptl-sum__who small { display: block; font-size: 13px; color: var(--muted); }
.awg-ptl-sum__av { flex: none; width: 52px; height: 52px; border-radius: 50%; object-fit: cover; display: grid; place-items: center; color: #fff; font: 600 16px/1 var(--serif); }
.awg-ptl-sum__link { font-size: 13px; font-weight: 600; }
.awg-ptl-sum__list { margin: 0; padding: 14px 0 0; border-top: 1px solid var(--line); display: grid; gap: 9px; }
.awg-ptl-sum__list div { display: flex; justify-content: space-between; align-items: center; gap: 10px; font-size: 14px; }
.awg-ptl-sum__list dt { color: var(--muted); margin: 0; }
.awg-ptl-sum__list dd { margin: 0; font-weight: 600; color: var(--navy); text-align: right; }
.awg-ptl-sum__files { border-top: 1px solid var(--line); padding-top: 14px; }
.awg-ptl-sum__files h4 { font-size: 15px !important; margin-bottom: 8px; }
.awg-ptl-sum__files .awg-ptl-small { margin: 0; }
.awg-ptl-sum__file { display: flex; justify-content: space-between; gap: 8px; padding: 7px 10px; margin-bottom: 6px; border: 1px solid var(--line); border-radius: 9px; font-size: 13.5px; text-decoration: none !important; }
.awg-ptl-sum__file span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.awg-ptl-sum__file small { flex: none; color: var(--muted); }
.awg-ptl-sum__file:hover { border-color: var(--sage); }
.awg-ptl-sum__call { width: 100%; min-height: 42px; }

/* ===== Chat (6.26.2): one clean card, grouped bubbles, a rounded message box ===== */
.awg-ptl-chatcard { display: flex; flex-direction: column; background: #fff; border: 1px solid #E3E6E0; border-radius: 16px; overflow: hidden; }
.awg-ptl-chathead { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-bottom: 1px solid #EEF0EC; background: #fff; }
.awg-ptl-chathead__av { position: relative; flex: none; display: block; }
.awg-ptl-chathead__av .awg-ptl-mav { width: 40px; height: 40px; font-size: 13px; }
.awg-ptl-mav.is-team { background: #4F5B42; }
/* 6.26.16: the team chat's header icon is the logo's "AW" in text: slab letters in the logo green on a white circle. */
.awg-ptl-chathead__av .awg-ptl-mav.is-team { background: #fff; color: #5C7A6B; font-family: 'Arvo', 'Rockwell', 'Roboto Slab', 'Zilla Slab', Georgia, serif; font-weight: 700; font-size: 15px; letter-spacing: -.04em; text-transform: uppercase; line-height: 1; }
.awg-ptl-mav.is-group { background: var(--sage); }
.awg-ptl-dot { position: absolute; right: -1px; bottom: -1px; width: 12px; height: 12px; border-radius: 50%; background: #C4CAD3; border: 2px solid #fff; }
.awg-ptl-dot.is-on { background: #2E9E5B; }
/* 6.26.11: when someone is online the green dot sends out a soft wave, like the website's chat bubble. */
.awg-ptl-dot.is-on::after, .awg-ptl-dock__dot.is-on::after { content: ''; position: absolute; inset: -2px; border-radius: 50%; border: 2px solid #2E9E5B; animation: awg-ptl-pulse 1.8s ease-out infinite; }
@keyframes awg-ptl-pulse { 0% { transform: scale(.8); opacity: .9; } 70% { transform: scale(2.1); opacity: 0; } 100% { transform: scale(2.1); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .awg-ptl-dot.is-on::after, .awg-ptl-dock__dot.is-on::after { animation: none; display: none; } }
.awg-ptl-chathead__who { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.awg-ptl-chathead__who strong { font-size: 15px; font-weight: 600; color: var(--navy); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.awg-ptl-chathead__sub { font-size: 12.5px; line-height: 1.3; color: #6B7280; }
.awg-ptl-chathead__sub.is-off { color: #7A561F; }
.awg-ptl-seg { display: flex; gap: 2px; margin-left: 8px; padding: 3px; border-radius: 10px; background: #F2F4F0; }
.awg-ptl-seg button { display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border: 0; border-radius: 8px; background: transparent; font: 500 12.5px var(--sans); color: #4A5262; cursor: pointer; white-space: nowrap; }
.awg-ptl-seg button.on { background: #fff; color: var(--navy); font-weight: 600; box-shadow: 0 1px 2px rgba(28,36,57,.08); }
.awg-ptl-seg .awg-ptl-count { min-width: 18px; height: 18px; margin: 0; padding: 0 5px; font-size: 11px; background: #B42318; }
.awg-ptl-seg .awg-ptl-count[hidden] { display: none !important; }
.awg-ptl-chathead__end { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; }
.awg-ptl-callbtns { display: inline-flex; gap: 6px; }
.awg-ptl-callbtn, .awg-ptl-sound { width: 38px; height: 38px; padding: 0; border-radius: 10px; border: 1px solid #E3E6E0; background: #fff; color: var(--navy); display: inline-grid; place-items: center; cursor: pointer; }
.awg-ptl-sound { color: #6B7280; }
.awg-ptl-sound[aria-pressed="true"] { color: var(--navy); }
.awg-ptl-callbtn:hover, .awg-ptl-sound:hover { border-color: var(--navy); background: var(--sage-soft); }
.awg-ptl-chatnote { margin: 0 0 8px !important; }
/* The messages. */
.awg-ptl-chat { position: relative; display: flex; flex-direction: column; gap: 14px; min-height: 220px; max-height: min(62vh, 560px); overflow-y: auto; padding: 18px 20px; background: #FBFBF9; }
.awg-ptl-day, .awg-ptl-newline { display: flex; align-items: center; gap: 12px; font-size: 12px; color: #8A93A3; }
.awg-ptl-day::before, .awg-ptl-day::after, .awg-ptl-newline::before, .awg-ptl-newline::after { content: ""; flex: 1; height: 1px; background: #E8EAE5; }
.awg-ptl-newline { font-weight: 700; color: #B5502F; }
.awg-ptl-newline::before, .awg-ptl-newline::after { background: #E2A48C; }
.awg-ptl-g { display: flex; align-items: flex-end; gap: 10px; }
.awg-ptl-g.is-mine { justify-content: flex-end; }
.awg-ptl-mav { flex: none; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; color: #fff; font: 700 11px/1 var(--serif, Georgia, serif); object-fit: cover; }
.awg-ptl-g__col { min-width: 0; max-width: 65%; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.awg-ptl-g.is-mine .awg-ptl-g__col { align-items: flex-end; }
.awg-ptl-g__who { margin-left: 2px; font-size: 12px; color: #6B7280; }
.awg-ptl-b { max-width: 100%; white-space: pre-wrap; overflow-wrap: anywhere; background: #fff; border: 1px solid #E3E6E0; border-radius: 14px 14px 14px 4px; padding: 10px 14px; font-size: 14.5px; line-height: 1.5; color: var(--navy); }
.awg-ptl-b + .awg-ptl-b { border-radius: 4px 14px 14px 14px; }
.awg-ptl-g.is-mine .awg-ptl-b { background: var(--sage-soft); border-color: var(--sage-soft); border-radius: 14px 14px 4px 14px; }
.awg-ptl-g.is-mine .awg-ptl-b + .awg-ptl-b { border-radius: 14px 4px 14px 14px; }
.awg-ptl-g__time { display: inline-flex; align-items: center; gap: 4px; margin: 0 2px; font-size: 11.5px; color: #8A93A3; }
.awg-ptl-seen { display: inline-flex; align-items: center; gap: 4px; white-space: pre; }
.awg-ptl-seen svg { width: 12px; height: 12px; color: var(--sage); stroke-width: 3; }
.awg-ptl-mfile { display: block; margin-top: 6px; font-weight: 600; color: var(--navy) !important; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.awg-ptl-mfile::before { content: "\1F4CE\FE0E"; margin-right: 4px; display: inline-block; text-decoration: none; }
.awg-ptl-mimg { display: block; margin-top: 6px; font-size: 12px; color: var(--navy) !important; text-decoration: none; }
.awg-ptl-mimg img { display: block; max-width: min(240px, 100%); max-height: 240px; margin-bottom: 4px; border-radius: 10px; background: var(--beige); }
.awg-ptl-callline { display: flex; justify-content: center; }
.awg-ptl-callline__in { display: inline-flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px; font-size: 12.5px; color: #6B7280; text-align: center; }
.awg-ptl-callline__in svg { width: 14px; height: 14px; color: var(--sage); }
.awg-ptl-callline.is-missed .awg-ptl-callline__in svg { color: var(--err); }
.awg-ptl-callback { border: 0; background: none; padding: 0; font: 600 12.5px var(--sans); color: var(--sage); cursor: pointer; }
.awg-ptl-callback:hover { text-decoration: underline; }
.awg-ptl-none { margin: auto; max-width: 360px; padding: 18px 10px; text-align: center; font-size: 14px; color: var(--muted); }
.awg-ptl-none p { margin: 0; }
.awg-ptl-none__icon { display: block; margin: 0 auto 8px; color: #B8BFCA; }
/* "Sara is typing", with three dots. */
.awg-ptl-typing { display: flex; align-items: center; gap: 8px; margin: 0; padding: 0 20px 10px; background: #FBFBF9; font-size: 12.5px; color: #6B7280; }
.awg-ptl-dots { display: inline-flex; gap: 4px; padding: 9px 12px; background: #fff; border: 1px solid #E3E6E0; border-radius: 14px; }
.awg-ptl-dots i { width: 6px; height: 6px; border-radius: 50%; background: #9AA3B2; animation: awg-ptl-dot 1.2s ease-in-out infinite; }
.awg-ptl-dots i:nth-child(2) { animation-delay: .2s; }
.awg-ptl-dots i:nth-child(3) { animation-delay: .4s; }
@keyframes awg-ptl-dot { 0%, 60%, 100% { opacity: .35; transform: translateY(0); } 30% { opacity: 1; transform: translateY(-2px); } }
/* The message box. */
.awg-ptl-compose { margin: 0; padding: 12px 16px 10px; border-top: 1px solid #EEF0EC; background: #fff; }
.awg-ptl-compose__row { display: flex; align-items: flex-end; gap: 10px; }
.awg-ptl-field { flex: 1; min-width: 0; display: flex; align-items: flex-end; gap: 6px; padding: 5px 10px 5px 7px; border: 1.5px solid #DCDCD2; border-radius: 24px; background: #FBF8F1; }
.awg-ptl-field:focus-within { border-color: var(--sage); background: #fff; }
.awg-ptl-attach { flex: none; width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; color: #6B7280; cursor: pointer; }
.awg-ptl-attach:hover { color: var(--navy); background: rgba(28,36,57,.06); }
.awg-ptl-compose textarea { flex: 1; min-width: 0; width: auto; height: 32px; min-height: 32px; max-height: 150px; margin: 0; padding: 6px 4px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; outline: none !important; resize: none; font: 400 14.5px/1.4 var(--sans); color: var(--navy); overflow-y: auto; }
.awg-ptl-compose textarea::placeholder { color: #8A93A3; }
.awg-ptl-sendbtn { flex: none; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: var(--navy); color: #fff; display: grid; place-items: center; cursor: pointer; }
.awg-ptl-sendbtn:hover { background: var(--navy-hover); }
.awg-ptl-sendbtn[disabled] { opacity: .5; cursor: default; }
.awg-ptl-compose__hint { margin: 6px 0 0 !important; padding-left: 14px; font-size: 11.5px; color: #8A93A3; }
.awg-ptl-chatclosed { margin: 0 !important; padding: 12px 16px; border-top: 1px solid #EEF0EC; }
.awg-ptl-safety { margin-top: 8px !important; font-size: 12.5px; }
/* "Sara is calling you", Join, Decline (6.25.120). */
.awg-ptl-ring { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; padding: 10px 16px; background: #E5EDE7; border-bottom: 1px solid #EEF0EC; color: #2f4a3d; font-weight: 600; }
.awg-ptl-ring__ic { width: 34px; height: 34px; border-radius: 50%; background: var(--sage); color: #fff; display: grid; place-items: center; animation: awg-ptl-ring 1.2s ease-in-out infinite; }
.awg-ptl-ring__t { flex: 1; min-width: 160px; }
.awg-ptl-ring__acts { display: inline-flex; gap: 8px; }
.awg-ptl-ring .awg-ptl-btn { min-height: 40px; padding: 8px 18px; }
@keyframes awg-ptl-ring { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.12); } }
@media (prefers-reduced-motion: reduce) { .awg-ptl-ring__ic, .awg-ptl-dots i { animation: none; } }
/* Phones: the thread switch on its own row, wider bubbles, no hint line. */
@media (max-width: 600px) {
	.awg-ptl-chathead { flex-wrap: wrap; gap: 10px; padding: 12px 12px 10px; }
	.awg-ptl-seg { order: 10; flex-basis: 100%; margin: 0; }
	.awg-ptl-seg button { flex: 1; justify-content: center; padding: 7px 0; font-size: 13px; }
	.awg-ptl-chathead__av .awg-ptl-mav { width: 38px; height: 38px; }
	.awg-ptl-chathead__who { flex: 1 1 0; }
	.awg-ptl-chat { gap: 12px; max-height: 65vh; padding: 14px 12px; }
	.awg-ptl-g__col { max-width: 78%; }
	.awg-ptl-mav { width: 26px; height: 26px; font-size: 10px; }
	.awg-ptl-typing { padding: 0 12px 8px; }
	.awg-ptl-compose { padding: 10px 12px; }
	.awg-ptl-compose__hint { display: none; }
}

@container (max-width: 860px) {
	.awg-ptl-pgrid { grid-template-columns: minmax(0, 1fr); }
	.awg-ptl-sum { position: static; }
}
@container (max-width: 560px) {
	.awg-ptl-steps li { font-size: 11px; }
	.awg-ptl-steps__dot { width: 24px; height: 24px; font-size: 11px; }
	.awg-ptl-steps li::before { top: 11px; left: calc(-50% + 14px); right: calc(50% + 14px); }
}

/* 6.25.122: "Similar professionals" under a profile uses the same card as the Our team page. */
.awg-pp-similar .awg-ptl-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
@container (max-width: 900px) { .awg-pp-similar .awg-ptl-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@container (max-width: 600px) { .awg-pp-similar .awg-ptl-grid { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .awg-pp-similar .awg-ptl-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .awg-pp-similar .awg-ptl-grid { grid-template-columns: 1fr; } }

/* ===== Portal home (6.26.3): numbers, recent messages, to do, profile card, how it works ===== */
.awg-ptl-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 0 0 20px; }
.awg-ptl-tile { background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 16px 18px; min-width: 0; }
.awg-ptl-tile b { display: block; font: 600 26px/1.1 var(--serif); color: var(--navy); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.awg-ptl-tile .awg-ptl-star { color: var(--gold); font-size: 18px; }
.awg-ptl-tile.is-text b { font-size: 19px; line-height: 1.3; }
.awg-ptl-tile span { display: block; margin-top: 4px; font-size: 12.5px; color: var(--muted); }
.awg-ptl-dash { grid-template-columns: minmax(0, 1fr) minmax(300px, 380px); }
.awg-ptl-dash__col { display: grid; gap: 20px; align-content: start; min-width: 0; }
.awg-ptl-box__head { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.awg-ptl-recent__row { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-top: 1px solid var(--line); }
.awg-ptl-recent__row:first-child { border-top: 0; padding-top: 0; }
.awg-ptl-recent__row .awg-ptl-mav { width: 34px; height: 34px; font-size: 12px; }
.awg-ptl-recent__t { flex: 1; min-width: 0; }
.awg-ptl-recent__top { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.awg-ptl-recent__top b { font-size: 14px; color: var(--navy); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.awg-ptl-recent__top small { flex: none; font-size: 12.5px; color: var(--muted); }
.awg-ptl-recent__t p { margin: 2px 0 0; font-size: 13.5px; color: #4A5262; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.awg-ptl-recent__t p span { color: var(--navy); font-weight: 500; }
.awg-ptl-recent .awg-ptl-count { margin: 0; }
.awg-ptl-todo__row.is-hot { margin-top: 8px; padding: 10px 12px; border: 1px solid #EFE6D4; border-radius: 10px; background: #FBF8F1; }
.awg-ptl-todo__row.is-hot + .awg-ptl-todo__row.is-hot { margin-top: 8px; }
.awg-ptl-todo__row.is-hot:first-child { margin-top: 0; padding-top: 10px; }
.awg-ptl-todo__row > span:not(.awg-ptl-datetile) { flex: 1; }
.awg-ptl-todo__row span.awg-ptl-datetile { flex: none; width: 36px; height: 36px; border-radius: 50%; background: var(--gold); color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0; font: 600 9.5px/1.1 var(--sans); text-transform: uppercase; }
.awg-ptl-datetile b { font-size: 13px; line-height: 1; color: #fff; }
.awg-ptl-sbtn.is-solid { background: var(--navy); color: #fff !important; }
.awg-ptl-pcard__who { display: flex; align-items: center; gap: 14px; }
.awg-ptl-pcard__who strong { display: block; font: 600 17px var(--serif); color: var(--navy); }
.awg-ptl-pcard__who small { font-size: 12.5px; color: var(--muted); }
.awg-ptl-pcard__av { flex: none; width: 56px; height: 56px; border-radius: 50%; object-fit: cover; display: grid; place-items: center; color: #fff; font: 600 18px var(--serif); }
.awg-ptl-pcard__done { margin-top: 14px; }
.awg-ptl-pcard__top { display: flex; justify-content: space-between; margin-bottom: 6px; font-size: 12.5px; color: var(--muted); }
.awg-ptl-pcard__top .is-pct { font-weight: 600; color: var(--navy); }
.awg-ptl-pcard__done > small { display: block; margin-top: 6px; font-size: 12.5px; color: var(--muted); }
.awg-ptl-meter { height: 6px; border-radius: 3px; background: #EEF0EC; overflow: hidden; }
.awg-ptl-meter i { display: block; height: 100%; background: var(--sage); }
.awg-ptl-pcard__on { margin: 12px 0 0 !important; }
.awg-ptl-pcard__btns { display: flex; gap: 8px; margin-top: 14px; }
.awg-ptl-pcard__btns .awg-ptl-btn { flex: 1; min-height: 40px; padding: 0 12px; font-size: 13.5px; }
.awg-ptl-how__step { display: flex; gap: 10px; align-items: flex-start; margin: 8px 0; font-size: 13.5px; color: #4A5262; }
.awg-ptl-how__step i { flex: none; width: 22px; height: 22px; border-radius: 50%; background: var(--sage-soft); color: #2F4A3D; font: 700 11px/1 var(--sans); font-style: normal; display: grid; place-items: center; }
.awg-ptl-how__step b { color: var(--navy); }
.awg-ptl-how__help { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
@media (max-width: 900px) { .awg-ptl-dash { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 600px) {
	.awg-ptl-tiles { grid-template-columns: 1fr 1fr; gap: 10px; }
	.awg-ptl-tile { padding: 12px 14px; }
	.awg-ptl-tile b { font-size: 22px; }
	.awg-ptl-recent__row .awg-ptl-sbtn { display: none; }
	.awg-ptl-recent__row { cursor: pointer; }
}

/* Application sent: no extra space above the thank-you message */
.awg-ptl-join.is-sent { padding-top: 0; padding-bottom: 8px; margin-top: 0; }
.awg-ptl-join.is-sent .awg-ptl-done { padding: 4px 12px 8px; }

/* ---------- 6.26.10: the AuthorWings team chat in the corner; the card is the client ↔ professional chat ---------- */
.awg-ptl-dock { position: fixed; right: 24px; bottom: 24px; z-index: 58; display: flex; flex-direction: column; align-items: flex-end; gap: 12px; font-family: var(--sans); }
.awg-ptl-dock__fab { position: relative; width: 60px; height: 60px; padding: 0; border: 0; border-radius: 50%; background: #4F5B42; color: #fff; display: grid; place-items: center; cursor: pointer; box-shadow: 0 10px 24px rgba(28,36,57,.28); transition: transform .15s ease, background .15s ease; }
.awg-ptl-dock__fab:hover { background: #3f4a35; transform: translateY(-1px); }
.awg-ptl-dock__fab:focus-visible { outline: 3px solid var(--mint); outline-offset: 2px; }
.awg-ptl-dock__badge { position: absolute; top: -4px; right: -4px; margin: 0; min-width: 22px; height: 22px; font-size: 12px; background: #B42318; border: 2px solid #fff; }
.awg-ptl-dock__badge[hidden] { display: none !important; }
.awg-ptl-dock__dot { position: absolute; top: 2px; right: 2px; width: 14px; height: 14px; border-radius: 50%; background: #C4CAD3; border: 2px solid #fff; }
.awg-ptl-dock__dot.is-on { background: #2E9E5B; }
.awg-ptl-dock.has-new .awg-ptl-dock__dot { display: none; } /* The unread count takes that corner. */
.awg-ptl-dock__label { position: absolute; right: 72px; bottom: 15px; padding: 7px 12px; border-radius: 8px; background: var(--navy); color: #fff; font-size: 13px; font-weight: 600; white-space: nowrap; opacity: 0; transform: translateX(6px); transition: opacity .15s ease, transform .15s ease; pointer-events: none; }
.awg-ptl-dock__label::after { content: ''; position: absolute; right: -6px; top: 50%; margin-top: -6px; border: 6px solid transparent; border-left-color: var(--navy); border-right: 0; }
.awg-ptl-dock:not(.is-open):hover .awg-ptl-dock__label, .awg-ptl-dock.has-new:not(.is-open) .awg-ptl-dock__label { opacity: 1; transform: none; }
.awg-ptl-dock__panel { width: min(400px, calc(100vw - 32px)); }
.awg-ptl-dock.is-open .awg-ptl-dock__fab, .awg-ptl-dock.is-open .awg-ptl-dock__label { display: none; } /* 6.26.86: the chat has its own close button, so the round button hides while it is open. */
.awg-ptl-dock__panel[hidden] { display: none; }
.awg-ptl-dock__panel .awg-ptl-chatcard { box-shadow: 0 20px 50px rgba(28,36,57,.25); border-color: #D9DED6; }
.awg-ptl-dock__panel .awg-ptl-chathead { background: #4F5B42; color: #fff; border-bottom: 0; }
.awg-ptl-dock__panel .awg-ptl-chathead__who strong { color: #fff; }
.awg-ptl-dock__panel .awg-ptl-chathead__sub { color: rgba(255,255,255,.82); }
.awg-ptl-dock__panel .awg-ptl-chathead__sub.is-off { color: #F3E3B5; }
.awg-ptl-dock__panel .awg-ptl-chathead .awg-ptl-mav.is-team { background: #fff; color: #5C7A6B; }
.awg-ptl-dock__panel .awg-ptl-dot { border-color: #4F5B42; }
.awg-ptl-dock__panel .awg-ptl-callbtn, .awg-ptl-dock__panel .awg-ptl-dock__close { width: 34px; height: 34px; border-color: rgba(255,255,255,.35); background: transparent; color: #fff; }
.awg-ptl-dock__panel .awg-ptl-callbtn:hover, .awg-ptl-dock__panel .awg-ptl-dock__close:hover { background: rgba(255,255,255,.14); border-color: #fff; }
.awg-ptl-dock__panel .awg-ptl-chat { min-height: 240px; max-height: min(50vh, 380px); padding: 14px 16px; }
.awg-ptl-dock__panel .awg-ptl-compose { padding: 10px 12px; }
.awg-ptl-dock__panel .awg-ptl-msg { margin: 6px 0 0; }
.awg-ptl-dock__panel .awg-ptl-msg:empty { display: none; }
.awg-ptl-has-tabbar .awg-ptl-dock { bottom: 78px; }
body.awg-ptl-incall .awg-ptl-dock { display: none; }
@media (max-width: 640px) {
	.awg-ptl-dock { right: 16px; bottom: 16px; }
	.awg-ptl-dock.is-open, .awg-ptl-has-tabbar .awg-ptl-dock.is-open { left: 0; right: 0; top: 0; bottom: 0; z-index: 62; align-items: stretch; justify-content: flex-end; background: rgba(28,36,57,.35); }
	.awg-ptl-dock.is-open .awg-ptl-dock__panel { width: 100%; }
	.awg-ptl-dock.is-open .awg-ptl-dock__panel .awg-ptl-chatcard { border-radius: 16px 16px 0 0; }
	.awg-ptl-dock.is-open .awg-ptl-dock__panel .awg-ptl-chat { max-height: calc(100vh - 220px); }
	.awg-ptl-dock.is-open .awg-ptl-dock__fab, .awg-ptl-dock.is-open .awg-ptl-dock__label { display: none; }
	.awg-ptl-dock__label { display: none; }
}
/* No professional on the project yet: a quiet note in the card. */
.awg-ptl-nopro { display: flex; flex-direction: column; align-items: center; gap: 10px; min-height: 320px; justify-content: center; padding: 40px 24px; text-align: center; background: #FBFBF9; }
.awg-ptl-nopro__icon { width: 72px; height: 72px; border-radius: 50%; background: var(--sage-soft); color: #4F5B42; display: grid; place-items: center; }
.awg-ptl-nopro h4 { margin: 4px 0 0; font-family: var(--serif); font-size: 21px; color: var(--navy); }
.awg-ptl-nopro p { margin: 0; max-width: 440px; font-size: 15px; line-height: 1.5; color: var(--muted); }
.awg-ptl-nopro .awg-ptl-btn { display: inline-flex; align-items: center; gap: 8px; margin-top: 6px; }

/* 6.26.51 Team page filter bar, option E: an icon service strip with the
   service colour under the chosen one, then search, genre and "Available now". */
.awg-ptl-teambar.awg-ptl-teambar--e { display: block; padding: 16px 18px 14px; }
.awg-ptl .awg-ptl-teambar--e .awg-ptl-filters--e { display: flex; flex-wrap: nowrap; gap: 28px; overflow-x: auto; margin: 0 0 14px; padding: 0 2px; border-bottom: 1px solid var(--line); scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.awg-ptl-filters--e::-webkit-scrollbar { display: none; }
.awg-ptl .awg-ptl-filters--e button,
.awg-ptl .awg-ptl-filters--e button:hover,
.awg-ptl .awg-ptl-filters--e button:focus { flex: none; display: flex; flex-direction: column; align-items: center; gap: 6px; min-height: 0; height: auto; margin: 0; padding: 2px 2px 10px; border: 0; border-bottom: 2.5px solid transparent; border-radius: 0; background: none; box-shadow: none; color: var(--muted); font: 500 14px var(--sans); line-height: 1.2; white-space: nowrap; cursor: pointer; }
.awg-ptl .awg-ptl-filters--e button:hover { color: var(--navy); }
.awg-ptl .awg-ptl-filters--e button:focus-visible { outline: 2px solid var(--sage); outline-offset: 2px; border-radius: 6px; }
.awg-ptl .awg-ptl-filters--e button:focus:not(:focus-visible), .awg-ptl .awg-ptl-teamavail:focus:not(:focus-visible) { outline: none; } /* no theme click outline; keyboard focus keeps one */
.awg-ptl .awg-ptl-filters--e button.on { color: var(--navy); font-weight: 600; border-bottom-color: var(--c, var(--navy)); }
.awg-ptl .awg-ptl-filters--e button span { opacity: 1; margin-left: 0; font-weight: inherit; }
.awg-ptl-filters--e .awg-ptl-tabico { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: var(--cs, #E3E6EC); color: var(--c, var(--navy)); transition: background .15s, color .15s, transform .15s; }
.awg-ptl-filters--e button:hover .awg-ptl-tabico { transform: translateY(-1px); }
.awg-ptl-filters--e button.on .awg-ptl-tabico { background: var(--c, var(--navy)); color: #fff; } /* 6.26.52: full colour icons; the chosen one is solid */
.awg-ptl .awg-ptl-filters--e .awg-ptl-tabn { font-size: 12px; font-weight: 500; opacity: .6; margin-left: 2px; }
.awg-ptl-teambar--e .awg-ptl-teamfind { justify-content: flex-start; flex: none; width: 100%; }
.awg-ptl-teambar--e .awg-ptl-teamsearch { flex: 1 1 200px; max-width: none; }
.awg-ptl-teambar--e .awg-ptl-teamgenre { font-size: 0; gap: 0; } /* the menu already says "All genres" */
.awg-ptl .awg-ptl-teamavail,
.awg-ptl .awg-ptl-teamavail:hover,
.awg-ptl .awg-ptl-teamavail:focus { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; height: 44px; margin: 0; padding: 0 16px; border: 1px solid #CFD8D2; border-radius: 999px; background: #fff; box-shadow: none; color: var(--navy); font: 500 14px var(--sans); white-space: nowrap; cursor: pointer; }
.awg-ptl .awg-ptl-teamavail:hover { border-color: var(--sage); }
.awg-ptl .awg-ptl-teamavail:focus-visible { outline: 2px solid var(--sage); outline-offset: 2px; }
.awg-ptl .awg-ptl-teamavail.on { background: var(--navy); border-color: var(--navy); color: #fff; }
@media (max-width: 600px) {
	.awg-ptl-teambar.awg-ptl-teambar--e { padding: 12px 10px 10px; }
	.awg-ptl .awg-ptl-teambar--e .awg-ptl-filters--e { gap: 20px; margin: 0 -10px 12px; padding: 0 12px; -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent); }
	.awg-ptl .awg-ptl-filters--e button, .awg-ptl .awg-ptl-filters--e button:hover, .awg-ptl .awg-ptl-filters--e button:focus { font-size: 13px; padding: 2px 1px 9px; gap: 5px; }
	.awg-ptl-filters--e .awg-ptl-tabico { width: 38px; height: 38px; }
	.awg-ptl-teambar--e .awg-ptl-teamsearch { flex: 1 1 100%; }
	.awg-ptl-teambar--e .awg-ptl-teamgenre { flex: 1 1 0; }
	.awg-ptl .awg-ptl-teamavail, .awg-ptl .awg-ptl-teamavail:hover, .awg-ptl .awg-ptl-teamavail:focus { min-height: 42px; height: 42px; padding: 0 14px; font-size: 13.5px; }
}

/* 6.26.56 Files: "Remove (12 min left)" beside Download on your own new file. */
.awg-ptl-files li > .awg-ptl-file-acts { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.awg-ptl .awg-ptl-btn.is-line.awg-ptl-file-rm { color: #B42318 !important; box-shadow: inset 0 0 0 1.5px #E9C2BD; }
.awg-ptl .awg-ptl-btn.is-line.awg-ptl-file-rm:hover { background: #FBEDEB; color: #8f1c13 !important; box-shadow: inset 0 0 0 1.5px #B42318; }

/* 6.26.57 A file chosen in the chat waits above the box until Send. */
.awg-ptl-pend { display: flex; align-items: center; gap: 8px; max-width: 100%; margin: 0 0 8px; padding: 8px 8px 8px 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--base); color: var(--navy); font-size: 14px; }
.awg-ptl-pend[hidden] { display: none; }
.awg-ptl-pend svg { flex: none; color: var(--sage); }
.awg-ptl-pend__name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.awg-ptl .awg-ptl-pend__x { flex: none; width: 28px; height: 28px; padding: 0; border: 0; border-radius: 50%; background: #fff; color: #B42318; font: 600 18px/1 sans-serif; cursor: pointer; }
.awg-ptl .awg-ptl-pend__x:hover { background: #FBEDEB; }
.awg-ptl-attach.is-busy { opacity: .4; pointer-events: none; }

/* Support tickets (6.26.63) */
.awg-ptl-support__top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 14px; }
.awg-ptl-support__top p { margin: 0; max-width: 620px; }
.awg-ptl-support__form { margin: 0 0 14px; }
.awg-ptl-support__form h3 { margin: 0; }
.awg-ptl-status.st-tk-answered { background: #F3E6CF; color: #7a561f; }
.awg-ptl-status.st-tk-resolved, .awg-ptl-status.st-tk-closed { background: #E6F0E8; color: #2F6B45; }

/* ---------- 6.26.79: phone fixes ---------- */
/* Long project titles and message previews no longer make the page wider than the phone. */
.awg-ptl-dash__col, .awg-ptl-list { grid-template-columns: minmax(0, 1fr); }
.awg-ptl-item, .awg-ptl-item__main { min-width: 0; max-width: 100%; }
.awg-ptl-item__main strong, .awg-ptl-item__main small { overflow-wrap: anywhere; }
/* The round team-chat button sits over the bottom right of the screen: on phones the project
   chat's message box keeps that corner free, so Send and the microphone are never under it. */
@media (max-width: 760px) {
	body:has(.awg-ptl-dock:not(.is-open)) .awg-ptl-chatcard:not(.is-dock) .awg-ptl-compose { padding-right: 84px; }
}
/* Themes that give every button a minimum width must not stretch the round Send and microphone buttons. */
.awg-ptl-micbtn, .awg-ptl-sendbtn { min-width: 0; }
/* 6.26.81: "Verified" on a certificate or membership the team has checked. */
.awg-pp-seal small .awg-pp-seal__v { white-space: nowrap; color: #1E7A45 !important; font-weight: 600; } /* Verified (6.26.82): green tick + word on the line under the name. */
.awg-pp-seal small .awg-pp-seal__v svg { display: inline-block; width: 1.15em; height: 1.15em; vertical-align: -.22em; margin-right: 3px; }

/* ---------- 6.26.88: welcome guide (once per account; Skip, Back, Next) ---------- */
body.awg-gd-open { overflow: hidden; }
.awg-gd { position: fixed; inset: 0; z-index: 100000; display: grid; place-items: center; padding: 16px; background: rgba(28,36,57,.5); font-family: var(--sans); }
.awg-gd-card { position: relative; box-sizing: border-box; width: min(460px, 100%); max-height: calc(100vh - 32px); overflow: auto; padding: 28px 28px 20px; border-radius: 20px; background: #fff; box-shadow: 0 24px 60px rgba(28,36,57,.3); display: flex; flex-direction: column; gap: 12px; color: var(--navy); animation: awgGdCard .25s ease both; }
@keyframes awgGdCard { from { opacity: 0; transform: translateY(8px) scale(.98); } to { opacity: 1; transform: none; } }
.awg-gd .awg-gd-x { position: absolute; top: 12px; right: 12px; width: 40px; height: 40px; padding: 0; border: 0 !important; border-radius: 10px; background: transparent !important; color: #5D6675 !important; display: grid; place-items: center; cursor: pointer; box-shadow: none !important; }
.awg-gd .awg-gd-x:hover { background: #F1F3F0 !important; color: var(--navy) !important; }
.awg-gd-k { font-size: 12.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #5C7A6B; }
.awg-gd-t { margin: 2px 0 0 !important; font-family: var(--serif); font-size: 24px !important; font-weight: 600; line-height: 1.25; color: var(--navy); }
.awg-gd-x2 { margin: 0 !important; font-size: 15.5px; line-height: 1.55; color: #3B4252; }
.awg-gd-dots { display: flex; justify-content: center; gap: 6px; margin-top: 4px; }
.awg-gd-dots i { display: block; width: 8px; height: 8px; border-radius: 4px; background: #C9D1CB; transition: width .2s ease; }
.awg-gd-dots i.on { width: 22px; background: var(--navy); }
.awg-gd-acts { display: flex; align-items: center; gap: 10px; margin-top: 6px; }
.awg-gd-sp { flex: 1; }
.awg-gd .awg-gd-skip { min-height: 44px; padding: 0 6px; border: 0 !important; background: transparent !important; color: #5D6675 !important; font: 600 14.5px var(--sans); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; box-shadow: none !important; }
.awg-gd .awg-gd-acts .awg-ptl-btn { min-height: 44px; }
.awg-gd-meter { display: flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 600; color: #2F4A3C; }
.awg-gd-meter__bar { flex: 1; height: 6px; border-radius: 3px; background: #DCE4DE; overflow: hidden; }
.awg-gd-meter__bar i { display: block; height: 100%; background: #2F4A3C; }
.awg-gd-againrow { margin: 10px 0 0 !important; }
.awg-gd-again { font-size: 14px; }

/* The small pictures: they play once and stop. */
.awg-gd-pic { position: relative; height: 156px; border-radius: 14px; background: #EEF3EF; display: grid; place-items: center; overflow: hidden; }
.awg-gd-win { position: relative; box-sizing: border-box; width: 270px; height: 124px; padding: 10px 12px; border-radius: 10px; background: #fff; box-shadow: 0 8px 22px rgba(28,36,57,.12); }
.awg-gd-ln { display: block; height: 6px; margin: 4px 0; border-radius: 3px; background: #D6DDD8; }
.awg-gd-ln.is-soft { background: #E6EBE7; }
@keyframes awgGdIn { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
@keyframes awgGdPop { 0% { opacity: 0; transform: scale(.4); } 70% { transform: scale(1.12); } 100% { opacity: 1; transform: scale(1); } }
@keyframes awgGdPulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(47,74,60,.45); } 50% { box-shadow: 0 0 0 7px rgba(47,74,60,0); } }
/* 1. projects */
.awg-gd-win__steps { display: flex; align-items: center; gap: 4px; margin-bottom: 8px; }
.awg-gd-win__steps b { width: 10px; height: 10px; box-sizing: border-box; border-radius: 50%; border: 2px solid #C9D1CB; }
.awg-gd-win__steps b.on { background: var(--navy); border-color: var(--navy); }
.awg-gd-win__steps i { flex: 1; height: 2px; background: #DCE4DE; }
.awg-gd-win__tabs { display: flex; gap: 5px; margin-bottom: 4px; }
.awg-gd-win__tabs span { padding: 2px 7px; border-radius: 999px; border: 1px solid #DCE4DE; font-size: 8.5px; font-weight: 700; color: #5D6675; line-height: 1.4; }
.awg-gd-win__tabs span.on { background: var(--navy); border-color: var(--navy); color: #fff; }
.awg-gd-files { animation: awgGdPulse .8s ease 1.5s 2; }
.awg-gd-bub { box-sizing: border-box; width: 58%; margin-top: 5px; padding: 3px 7px; border-radius: 7px; background: #F4F5F2; opacity: 0; animation: awgGdIn .35s ease forwards; display: flex; align-items: center; gap: 5px; flex-wrap: wrap; }
.awg-gd-bub .awg-gd-ln { flex: 1 0 100%; margin: 2px 0; height: 5px; }
.awg-gd-bub svg { color: #5C7A6B; flex: none; }
.awg-gd-bub svg + .awg-gd-ln { flex: 1 1 auto; }
.awg-gd-bub.is-me { margin-left: auto; background: #E5EDE7; }
.awg-gd-bub.is-1 { animation-delay: .2s; } .awg-gd-bub.is-2 { animation-delay: .6s; } .awg-gd-bub.is-3 { animation-delay: 1s; }
/* 2. the Call button and its menu */
.awg-gd-head { display: flex; align-items: center; gap: 8px; padding-bottom: 8px; border-bottom: 1px solid #EEF1EE; }
.awg-gd-av { width: 22px; height: 22px; border-radius: 50%; background: #5C7A6B; flex: none; }
.awg-gd-name { width: 70px; }
.awg-gd-name .awg-gd-ln { height: 5px; margin: 3px 0; }
.awg-gd-callbtn { margin-left: auto; display: inline-flex; align-items: center; gap: 4px; padding: 4px 8px; border: 1px solid #E3E6E0; border-radius: 7px; font-size: 10.5px; font-weight: 700; color: var(--navy); animation: awgGdPress .3s ease .75s forwards; }
.awg-gd-car { font-size: 8px; color: #6B7280; }
@keyframes awgGdPress { 50% { transform: scale(.94); } 100% { background: #EEF3EF; border-color: var(--navy); transform: none; } }
.awg-gd-menu { position: absolute; right: 12px; top: 40px; display: flex; flex-direction: column; padding: 4px; border: 1px solid #E3E6E0; border-radius: 8px; background: #fff; box-shadow: 0 8px 20px rgba(28,36,57,.16); opacity: 0; animation: awgGdIn .3s ease 1s forwards; }
.awg-gd-menu > span { display: flex; align-items: center; gap: 6px; padding: 4px 8px; border-radius: 5px; font-size: 10px; font-weight: 600; color: var(--navy); white-space: nowrap; }
.awg-gd-menu > span svg { color: #4F5B42; }
.awg-gd-menu > span:first-child { animation: awgGdHi .3s ease 1.6s forwards; }
@keyframes awgGdHi { to { background: #EEF3EF; } }
.awg-gd-tap { position: absolute; left: 60px; top: 90px; width: 18px; height: 18px; border-radius: 50%; background: rgba(28,36,57,.28); border: 2px solid rgba(255,255,255,.9); opacity: 0; animation: awgGdTap 1s ease .1s forwards; }
@keyframes awgGdTap { 0% { opacity: 0; transform: none; } 15% { opacity: 1; } 70% { opacity: 1; transform: translate(150px, -78px); } 85% { transform: translate(150px, -78px) scale(.75); } 100% { opacity: 0; transform: translate(150px, -78px) scale(1.4); } }
/* 3. the team chat in the corner */
.awg-gd-fab { position: absolute; right: 10px; bottom: 8px; width: 30px; height: 30px; border-radius: 50%; background: #4F5B42; color: #fff; display: grid; place-items: center; animation: awgGdPulse .8s ease .2s 2; }
.awg-gd-panel { position: absolute; right: 10px; bottom: 44px; width: 128px; border-radius: 8px; background: #fff; border: 1px solid #E3E6E0; box-shadow: 0 8px 20px rgba(28,36,57,.16); overflow: hidden; opacity: 0; transform-origin: 100% 100%; animation: awgGdPop .4s ease 1.3s forwards; }
.awg-gd-panel__h { padding: 4px 7px; background: #4F5B42; color: #fff; font-size: 8.5px; font-weight: 700; }
.awg-gd-panel .awg-gd-bub { width: auto; margin: 6px; animation-delay: 1.7s; }
/* 4. agreement */
.awg-gd-doc { position: relative; box-sizing: border-box; width: 170px; height: 128px; padding: 12px 14px; border-radius: 8px; background: #fff; box-shadow: 0 8px 22px rgba(28,36,57,.12); color: #5C7A6B; }
.awg-gd-doc .awg-gd-ln { transform-origin: left; transform: scaleX(0); animation: awgGdGrow .3s ease forwards; }
.awg-gd-doc .awg-gd-ln:nth-of-type(1) { animation-delay: .15s; } .awg-gd-doc .awg-gd-ln:nth-of-type(2) { animation-delay: .3s; } .awg-gd-doc .awg-gd-ln:nth-of-type(3) { animation-delay: .45s; } .awg-gd-doc .awg-gd-ln:nth-of-type(4) { animation-delay: .6s; }
@keyframes awgGdGrow { to { transform: scaleX(1); } }
.awg-gd-sign { position: absolute; left: 14px; right: 14px; bottom: 12px; display: flex; align-items: center; gap: 8px; }
.awg-gd-sign__l { flex: 1; height: 2px; background: var(--navy); transform-origin: left; transform: scaleX(0); animation: awgGdGrow .5s ease 1s forwards; }
.awg-gd-ok { width: 20px; height: 20px; border-radius: 50%; background: #1E7A45; color: #fff; display: grid; place-items: center; opacity: 0; animation: awgGdPop .4s ease 1.6s forwards; }
/* 5. profile checklist (also the dashboard card) */
.awg-gd-check { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.awg-gd-check li { display: flex; align-items: center; gap: 9px; margin: 0; font-size: 13.5px; color: var(--navy); }
.awg-gd-check li.is-done > span:last-child { color: #5D6675; }
.awg-gd-box { width: 18px; height: 18px; flex: none; box-sizing: border-box; border-radius: 50%; border: 2px solid #A9B4AC; display: grid; place-items: center; color: #fff; }
.awg-gd-check li.is-done .awg-gd-box { background: #1E7A45; border-color: #1E7A45; }
.awg-gd-pic.is-profile { height: auto; padding: 14px 0; }
.awg-gd-pic.is-projects .awg-gd-win { height: auto; padding-bottom: 12px; }
.awg-gd-card:focus { outline: none; }
.awg-gd-pic.is-profile .awg-gd-check { box-sizing: border-box; width: 270px; padding: 12px 14px; border-radius: 10px; background: #fff; box-shadow: 0 8px 22px rgba(28,36,57,.12); }
.awg-gd-pic.is-profile li.is-done .awg-gd-box { animation: awgGdPop .35s ease var(--d, .2s) both; }
.awg-gd-check.is-card { margin-top: 10px; gap: 2px; }
.awg-gd-check.is-card li { min-height: 32px; }
.awg-gd-check.is-card .awg-ptl-link { font-size: 13.5px; font-weight: 600; text-align: left; padding: 0; }
@media (max-width: 480px) {
	.awg-gd-card { padding: 24px 20px 16px; }
	.awg-gd-t { font-size: 21px !important; }
	.awg-gd-x2 { font-size: 15px; }
	.awg-gd-pic { height: 140px; }
	.awg-gd-win { width: 240px; height: 116px; }
	.awg-gd-pic.is-profile { height: auto; }
	.awg-gd-pic.is-profile .awg-gd-check { width: 240px; }
	@keyframes awgGdTap { 0% { opacity: 0; transform: none; } 15% { opacity: 1; } 70% { opacity: 1; transform: translate(120px, -78px); } 85% { transform: translate(120px, -78px) scale(.75); } 100% { opacity: 0; transform: translate(120px, -78px) scale(1.4); } }
}
@media (prefers-reduced-motion: reduce) {
	.awg-gd-card, .awg-gd-pic *, .awg-gd-pic *::before { animation-duration: .001s !important; animation-delay: 0s !important; animation-iteration-count: 1 !important; }
	.awg-gd-tap { display: none; }
}

/* ---------- The sample project (6.26.93) ---------- */
.awg-ptl-status.st-sample { background: #F3E6CF; color: #7a561f; letter-spacing: .02em; }
.awg-ptl-item.is-demo { border-style: dashed; }
.awg-ptl-demo { display: flex; gap: 14px; align-items: flex-start; background: #FBF6EC; border-color: #EAD9B8; }
.awg-ptl-demo__ic { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%; background: #F3E6CF; color: #7a561f; }
.awg-ptl-demo__t { min-width: 0; }
.awg-ptl-demo h4 { margin: 2px 0 6px; font-size: 17px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.awg-ptl-demo p { margin: 0 0 6px; line-height: 1.55; }
.awg-ptl-demo .awg-ptl-small { color: var(--muted); }
.awg-ptl-demo__acts { margin: 8px 0 0 !important; }
@media (max-width: 560px) {
	.awg-ptl-demo { flex-direction: column; gap: 10px; }
}
.awg-ptl-demo .awg-ptl-msg:empty { display: none; }

/* ---------- Account menu in the header (6.26.94) ---------- */
.awg-ptl-acct { position: relative; }
.awg-ptl-acct__btn { display: inline-flex; align-items: center; gap: 10px; background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 3px 12px 3px 3px; margin: 0; min-height: 0; cursor: pointer; font: inherit; color: var(--navy); box-shadow: none; text-align: left; }
.awg-ptl-acct__btn:hover, .awg-ptl-acct.is-open .awg-ptl-acct__btn { border-color: #C9D3CC; background: var(--cream); }
.awg-ptl-acct__btn:focus-visible { outline: 2px solid var(--sage); outline-offset: 2px; }
.awg-ptl-acct__btn .awg-ptl-avatar { cursor: inherit; }
.awg-ptl-acct__who { display: grid; line-height: 1.2; }
.awg-ptl-acct__name { font: 600 14px var(--sans); color: var(--navy); white-space: nowrap; max-width: 160px; overflow: hidden; text-overflow: ellipsis; }
.awg-ptl-acct__role { font: 500 12px var(--sans); color: var(--muted); white-space: nowrap; }
.awg-ptl-acct__car { display: inline-flex; color: var(--muted); transition: transform .15s ease; }
.awg-ptl-acct.is-open .awg-ptl-acct__car { transform: rotate(180deg); }
.awg-ptl-acct__panel { position: absolute; right: 0; top: calc(100% + 8px); z-index: 80; width: 260px; background: #fff; border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 24px 40px -24px rgba(28,36,57,.5); padding: 6px; display: grid; }
.awg-ptl-acct__panel[hidden] { display: none; }
.awg-ptl-acct__head { display: grid; gap: 2px; padding: 10px 12px 12px; margin-bottom: 4px; border-bottom: 1px solid var(--line); }
.awg-ptl-acct__head strong { font: 600 15px var(--sans); color: var(--navy); overflow-wrap: anywhere; }
.awg-ptl-acct__head small { font-size: 13px; color: var(--muted); overflow-wrap: anywhere; }
.awg-ptl-acct__item { display: flex; align-items: center; gap: 10px; width: 100%; text-align: left; background: none; border: 0; margin: 0; min-height: 0; padding: 10px 12px; border-radius: 8px; font: 600 14.5px var(--sans); color: var(--navy); cursor: pointer; box-shadow: none; }
.awg-ptl-acct__item:hover, .awg-ptl-acct__item:focus-visible { background: var(--base); outline: none; }
.awg-ptl-acct__ic { font-style: normal; width: 18px; text-align: center; color: var(--muted); }
.awg-ptl-acct__sep { height: 1px; background: var(--line); margin: 4px 6px; }
@media (max-width: 760px) {
	.awg-ptl-acct__btn { padding: 0; border: 0; background: none; }
	.awg-ptl-acct__btn:hover, .awg-ptl-acct.is-open .awg-ptl-acct__btn { background: none; }
	.awg-ptl-acct__who, .awg-ptl-acct__car { display: none; }
	.awg-ptl-acct__panel { position: fixed; top: 70px; right: 12px; width: min(300px, calc(100vw - 24px)); }
}

/* ---------- Header menus keep their own colours (6.26.95) ----------
   Many themes paint every button on hover, focus and click (for example green with white
   text). The header menus set every state themselves, so the name stays readable. */
.awg-ptl .awg-ptl-acct__btn, .awg-ptl .awg-ptl-acct__btn:hover, .awg-ptl .awg-ptl-acct__btn:focus, .awg-ptl .awg-ptl-acct__btn:active { background: #fff !important; color: var(--navy) !important; border: 1px solid var(--line) !important; text-transform: none; letter-spacing: normal; box-shadow: none !important; }
.awg-ptl .awg-ptl-acct__btn:hover, .awg-ptl .awg-ptl-acct.is-open .awg-ptl-acct__btn { background: var(--cream) !important; border-color: #C9D3CC !important; }
.awg-ptl .awg-ptl-acct__btn:focus:not(:focus-visible) { outline: none; }
.awg-ptl .awg-ptl-acct__btn .awg-ptl-acct__name { color: var(--navy) !important; }
.awg-ptl .awg-ptl-acct__btn .awg-ptl-acct__role { color: var(--muted) !important; }
.awg-ptl .awg-ptl-acct__btn .awg-ptl-avatar { background: var(--sage) !important; color: #fff !important; }
.awg-ptl .awg-ptl-acct__item, .awg-ptl .awg-ptl-acct__item:focus, .awg-ptl .awg-ptl-acct__item:active { background: transparent !important; color: var(--navy) !important; box-shadow: none !important; text-transform: none; letter-spacing: normal; outline: none; }
.awg-ptl .awg-ptl-acct__item:hover, .awg-ptl .awg-ptl-acct__item:focus-visible { background: var(--base) !important; color: var(--navy) !important; }
.awg-ptl .awg-ptl-acct__ic { display: inline-flex; align-items: center; justify-content: center; width: 20px; color: var(--muted); }
.awg-ptl .awg-ptl-acct__item:hover .awg-ptl-acct__ic { color: var(--navy); }
/* The phone menu button: a drawn ☰ / ✕, centred. */
.awg-ptl .awg-ptl-menubtn, .awg-ptl .awg-ptl-menubtn:hover, .awg-ptl .awg-ptl-menubtn:focus, .awg-ptl .awg-ptl-menubtn:active { padding: 0 !important; margin: 0; min-width: 0; min-height: 0; width: 40px; height: 40px; line-height: 1; background: #fff !important; color: var(--navy) !important; border: 1px solid var(--line) !important; border-radius: 10px; box-shadow: none !important; }
.awg-ptl .awg-ptl-menubtn:hover, .awg-ptl .awg-ptl-menubtn.is-open { background: var(--cream) !important; border-color: #C9D3CC !important; }
.awg-ptl .awg-ptl-menubtn svg { display: block; }
.awg-ptl .awg-ptl-menupanel { z-index: 80; }
.awg-ptl .awg-ptl-menupanel button, .awg-ptl .awg-ptl-menupanel button:focus, .awg-ptl .awg-ptl-menupanel button:active { background: transparent !important; color: var(--navy) !important; box-shadow: none !important; text-transform: none; letter-spacing: normal; outline: none; width: 100%; margin: 0; }
.awg-ptl .awg-ptl-menupanel button:hover, .awg-ptl .awg-ptl-menupanel button:focus-visible, .awg-ptl .awg-ptl-menupanel button.on { background: var(--base) !important; }
@media (min-width: 761px) {
	.awg-ptl .awg-ptl-menupanel, .awg-ptl .awg-ptl-menubtn { display: none !important; } /* Desktop has the full menu in the bar. */
}
@media (max-width: 760px) {
	.awg-ptl .awg-ptl-menubtn { display: inline-flex !important; align-items: center; justify-content: center; }
	.awg-ptl .awg-ptl-acct__btn, .awg-ptl .awg-ptl-acct__btn:hover, .awg-ptl .awg-ptl-acct__btn:focus, .awg-ptl .awg-ptl-acct__btn:active, .awg-ptl .awg-ptl-acct.is-open .awg-ptl-acct__btn { background: transparent !important; border: 0 !important; padding: 0 !important; }
}

.awg-pf .awg-pf-also { margin: 10px 0 0; padding: 9px 12px; border-radius: 10px; background: var(--sage-soft, #E5EDE7); color: #2F5141; font-size: 13.5px; line-height: 1.45; }
.awg-pf .awg-pf-also[hidden] { display: none; }

/* 6.26.101: the team chat always fits the screen. Its header and close button stay visible on
   short screens (a phone held sideways); the messages shrink and scroll instead. */
.awg-ptl-dock.is-open .awg-ptl-dock__panel { display: flex; flex-direction: column; max-height: calc(100vh - 48px); max-height: calc(100dvh - 48px); }
.awg-ptl-has-tabbar .awg-ptl-dock.is-open .awg-ptl-dock__panel { max-height: calc(100vh - var(--awg-ptl-tabbar, 62px) - 32px); max-height: calc(100dvh - var(--awg-ptl-tabbar, 62px) - 32px); }
.awg-ptl-dock.is-open .awg-ptl-dock__panel .awg-ptl-chatcard { display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
.awg-ptl-dock.is-open .awg-ptl-dock__panel .awg-ptl-chat { flex: 1 1 auto; min-height: 96px; }
/* Phones, and any short screen: the chat is full screen, and the page behind it stays still. */
@media (max-width: 600px), (max-height: 500px) {
	.awg-ptl-dock.is-open, .awg-ptl-has-tabbar .awg-ptl-dock.is-open { left: 0; right: 0; top: 0; bottom: 0; z-index: 62; align-items: stretch; justify-content: flex-end; background: rgba(28,36,57,.35); }
	.awg-ptl-dock.is-open .awg-ptl-dock__panel, .awg-ptl-has-tabbar .awg-ptl-dock.is-open .awg-ptl-dock__panel { width: 100%; max-height: 100vh; max-height: 100dvh; }
	.awg-ptl-dock.is-open .awg-ptl-dock__panel .awg-ptl-chatcard { border-radius: 16px 16px 0 0; }
	.awg-ptl-dock.is-open .awg-ptl-dock__panel .awg-ptl-chat { max-height: none; }
	html.awg-ptl-dock-open, html.awg-ptl-dock-open body { overflow: hidden !important; overscroll-behavior: none; }
}
/* 6.26.101: the profile Save bar and the chat button sit right above the phone tab bar,
   whatever its height. */
@media (max-width: 760px) {
	.awg-ptl-has-tabbar .awg-pf-mbar { bottom: var(--awg-ptl-tabbar, 62px); }
	.awg-ptl-has-tabbar .awg-ptl-dock { bottom: calc(var(--awg-ptl-tabbar, 62px) + 16px); }
	.awg-ptl-tabbar button { flex: 1 1 0; min-width: 0; padding: 4px 2px; text-align: center; line-height: 1.2; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } /* Equal widths, one line each. */
	.awg-ptl-tabbar .awg-ptl-count { right: 6px; }
}
@media (max-width: 420px) { .awg-ptl-tabbar button { font-size: 10.5px; letter-spacing: -.01em; } }

/* ===== 6.26.102: the new portal header =====
   64px tall; the menu sits right after the logo (it never moves between pages); each item has an
   icon; the page you are on is underlined; a bell lists what needs you. On phones the bottom tab
   bar is the menu (no ☰ button). Own colours throughout, so a theme cannot paint over it. */
.awg-ptl-standalone .awg-ptl-bar__in { height: 64px; gap: 0; }
.awg-ptl-standalone .awg-ptl-logo img { height: 40px; }
.awg-ptl-standalone .awg-ptl-bar__slot { justify-content: flex-start; gap: 0; height: 64px; align-items: stretch; }
.awg-ptl .awg-ptl-barnav { margin: 0 0 0 36px; gap: 2px; height: 64px; align-items: stretch; }
.awg-ptl .awg-ptl-barnav button,
.awg-ptl .awg-ptl-barnav button:hover,
.awg-ptl .awg-ptl-barnav button:focus,
.awg-ptl .awg-ptl-barnav button:active { position: relative; display: inline-flex !important; align-items: center; gap: 8px; height: 64px; min-height: 0; margin: 0; padding: 0 14px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; color: #56616B !important; font: 600 14.5px/1 var(--sans) !important; text-transform: none !important; letter-spacing: 0 !important; text-decoration: none !important; cursor: pointer; white-space: nowrap; }
.awg-ptl .awg-ptl-barnav button svg { color: #7B8790; flex: none; }
.awg-ptl .awg-ptl-barnav button:hover { color: var(--navy) !important; background: #F6F8F6 !important; }
.awg-ptl .awg-ptl-barnav button.on { color: var(--navy) !important; }
.awg-ptl .awg-ptl-barnav button.on svg { color: #2F5141; }
.awg-ptl .awg-ptl-barnav button.on::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: 0; height: 3px; border-radius: 3px 3px 0 0; background: #2F5141; }
.awg-ptl .awg-ptl-barnav button:focus-visible { outline: 2px solid var(--sage) !important; outline-offset: -4px; }
.awg-ptl .awg-ptl-barnav .awg-ptl-count { display: none; } /* The number is on the bell now. */
.awg-ptl-standalone .awg-ptl-bar__slot > .awg-ptl-user { margin-left: auto; align-self: center; gap: 8px; }
.awg-ptl .awg-ptl-hdnew, .awg-ptl .awg-ptl-hdnew:hover, .awg-ptl .awg-ptl-hdnew:focus { display: inline-flex; align-items: center; gap: 6px; height: 38px; padding: 0 14px; margin-right: 4px; border-radius: 10px; background: var(--navy) !important; color: #fff !important; font: 600 14px/1 var(--sans); text-decoration: none !important; white-space: nowrap; }
.awg-ptl .awg-ptl-hdnew:hover { background: #2B3552 !important; }
.awg-ptl-hdsep { width: 1px; height: 28px; background: var(--line); margin: 0 4px; }
/* Bell */
.awg-ptl-bell { position: relative; }
.awg-ptl .awg-ptl-bell__btn,
.awg-ptl .awg-ptl-bell__btn:hover,
.awg-ptl .awg-ptl-bell__btn:focus,
.awg-ptl .awg-ptl-bell__btn:active { position: relative; display: grid !important; place-items: center; width: 40px; height: 40px; min-height: 0; margin: 0; padding: 0 !important; border: 1px solid transparent !important; border-radius: 10px !important; background: transparent !important; color: #3D4852 !important; box-shadow: none !important; cursor: pointer; }
.awg-ptl .awg-ptl-bell__btn:hover, .awg-ptl .awg-ptl-bell.is-open .awg-ptl-bell__btn { background: #F1F4F1 !important; border-color: var(--line) !important; }
.awg-ptl .awg-ptl-bell__btn:focus-visible { outline: 2px solid var(--sage) !important; outline-offset: 2px; }
.awg-ptl-bell__n { position: absolute; top: -3px; right: -4px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: #C2410C; color: #fff; border: 2px solid #fff; font: 700 11px/14px var(--sans); text-align: center; box-sizing: border-box; }
.awg-ptl-bell__n[hidden] { display: none; }
.awg-ptl-bell__panel { position: absolute; right: -8px; top: 50px; z-index: 85; width: 360px; max-height: min(480px, calc(100vh - 90px)); overflow-y: auto; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 24px 48px -18px rgba(28,36,57,.35); text-align: left; }
.awg-ptl-bell__panel[hidden] { display: none; }
.awg-ptl-bell__head { padding: 14px 16px; border-bottom: 1px solid var(--line); font: 600 15px var(--sans); color: var(--navy); }
.awg-ptl-bell__none { margin: 0; padding: 22px 16px; font-size: 14px; color: var(--muted); text-align: center; }
.awg-ptl .awg-ptl-bell__row,
.awg-ptl .awg-ptl-bell__row:hover,
.awg-ptl .awg-ptl-bell__row:focus { display: flex !important; gap: 12px; align-items: flex-start; width: 100%; margin: 0; padding: 12px 16px !important; border: 0 !important; border-bottom: 1px solid #F0F2EF !important; border-radius: 0 !important; background: #fff !important; color: var(--navy) !important; text-align: left; text-decoration: none !important; box-shadow: none !important; font: inherit; cursor: pointer; }
.awg-ptl .awg-ptl-bell__row:hover { background: #F7FAF7 !important; }
.awg-ptl-bell__ic { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #E5EDE7; color: #2F5141; }
.awg-ptl-bell__ic.is-sign { background: #EFE5D2; color: #8A6D3B; }
.awg-ptl-bell__ic.is-call { background: #DDE1EE; color: #4F5F8F; }
.awg-ptl-bell__ic.is-review { background: #F7EBCB; color: #8A6D3B; }
.awg-ptl-bell__t { display: grid; gap: 2px; min-width: 0; }
.awg-ptl-bell__t b { font: 600 14px/1.35 var(--sans); }
.awg-ptl-bell__t small { font-size: 13px; line-height: 1.4; color: var(--muted); }
/* Account button: just the face and first name for clients; professionals keep their job title. */
.awg-ptl .awg-ptl-acct__btn, .awg-ptl .awg-ptl-acct__btn:hover, .awg-ptl .awg-ptl-acct__btn:focus, .awg-ptl .awg-ptl-acct__btn:active { border-color: transparent !important; padding: 3px 8px 3px 3px !important; }
.awg-ptl .awg-ptl-acct__btn:hover, .awg-ptl .awg-ptl-acct.is-open .awg-ptl-acct__btn { border-color: var(--line) !important; }
/* Signed in, before the portal loads or on a note page: Sign out in the same pill as Log in. */
.awg-ptl-backsite:not(.awg-ptl-loginbtn) { border: 1px solid var(--line); border-radius: 999px; padding: 9px 18px; background: #fff; line-height: 1; }
/* No ☰ button or its panel any more. */
.awg-ptl .awg-ptl-menubtn, .awg-ptl .awg-ptl-menupanel { display: none !important; }
@media (max-width: 760px) {
	.awg-ptl-standalone .awg-ptl-bar__in { height: 56px; padding: 0 14px; }
	.awg-ptl-standalone .awg-ptl-bar__slot { height: 56px; }
	.awg-ptl-standalone .awg-ptl-logo img { height: 34px; }
	.awg-ptl .awg-ptl-hdnew, .awg-ptl-hdsep { display: none; }
	.awg-ptl-standalone .awg-ptl-bar__slot > .awg-ptl-user { gap: 6px; }
	.awg-ptl-bell__panel { position: fixed; left: 10px; right: 10px; top: 62px; width: auto; max-height: calc(100vh - 62px - var(--awg-ptl-tabbar, 62px) - 16px); }
	.admin-bar .awg-ptl-bell__panel { top: 108px; }
	/* Tab bar: drawn icons, the page you are on underlined at the top. */
	.awg-ptl-tabbar { padding: 6px 0 calc(8px + env(safe-area-inset-bottom)); }
	.awg-ptl .awg-ptl-tabbar button,
	.awg-ptl .awg-ptl-tabbar button:hover,
	.awg-ptl .awg-ptl-tabbar button:focus,
	.awg-ptl .awg-ptl-tabbar button:active { position: relative; display: grid !important; justify-items: center; gap: 3px; margin: 0; padding: 4px 2px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; color: #6B7680 !important; font: 600 11px/1.2 var(--sans) !important; text-transform: none !important; letter-spacing: 0 !important; }
	.awg-ptl .awg-ptl-tabbar button svg { color: #7B8790; }
	.awg-ptl .awg-ptl-tabbar button.on { color: var(--navy) !important; }
	.awg-ptl .awg-ptl-tabbar button.on svg { color: #2F5141; }
	.awg-ptl .awg-ptl-tabbar button.on::before { content: ""; position: absolute; top: -6px; left: 50%; width: 28px; margin-left: -14px; height: 3px; border-radius: 0 0 3px 3px; background: #2F5141; }
	.awg-ptl .awg-ptl-tabbar .awg-ptl-count { display: none; }
	.awg-ptl .awg-ptl-tabbar button > span { max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
}
/* 6.26.102: the site's cookie bar sits above the phone tab bar, not over it. */
@media (max-width: 760px) { .awg-ptl-has-tabbar #awg-cookie-consent.awg-cookie-consent--bottom { bottom: var(--awg-ptl-tabbar, 62px) !important; } }
/* 6.26.102: the round team-chat button. Its label shows only on hover (it no longer sits over
   the page when there are new messages), and pages leave room at the bottom so the last content
   can scroll clear of it. */
.awg-ptl-dock.has-new:not(.is-open):not(:hover) .awg-ptl-dock__label { opacity: 0; transform: translateX(6px); }
body:has(.awg-ptl-dock) .awg-ptl-shell__main { padding-bottom: 96px; }
@media (max-width: 600px) { .awg-ptl-dock__fab { width: 52px; height: 52px; } }

/* ===== 6.26.103: one style across the portal =====
   Headings: only page titles (h1) use the book serif; card titles, names and numbers use the sans.
   Buttons: three kinds (main, second, link) in two sizes. Status: one colour each, with a dot.
   The public profile and Team pages keep their own serif look. */
#awg-ptl-app h2, #awg-ptl-app h3, #awg-ptl-app h4,
.awg-ptl-dock h2, .awg-ptl-dock h3 { font-family: var(--sans); font-weight: 600; letter-spacing: -.005em; }
#awg-ptl-app .awg-ptl-box > h3, #awg-ptl-app .awg-ptl-boxhead h3 { font-size: 17px; }
#awg-ptl-app .awg-ptl-item__main strong { font: 600 15.5px/1.35 var(--sans); }
#awg-ptl-app .awg-ptl-account strong,
#awg-ptl-app .awg-ptl-sum__who strong,
#awg-ptl-app .awg-ptl-pcard__who strong { font-family: var(--sans); font-weight: 600; font-size: 16px; }
#awg-ptl-app .awg-pf-card h2 { font: 600 18px/1.25 var(--sans); }
#awg-ptl-app .awg-ptl-nopro h4 { font-family: var(--sans); font-size: 18px; }
/* Buttons */
#awg-ptl-app .awg-ptl-btn { min-height: 42px; padding: 0 18px; border-radius: 10px; font: 600 14.5px/1.2 var(--sans); }
#awg-ptl-app .awg-ptl-btn.is-line { background: #fff; color: var(--navy) !important; box-shadow: inset 0 0 0 1.5px #C9CFD6; }
#awg-ptl-app .awg-ptl-btn.is-line:hover { background: #F6F8F6; color: var(--navy) !important; box-shadow: inset 0 0 0 1.5px var(--navy); }
#awg-ptl-app .awg-ptl-sbtn { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; padding: 0 13px; border-radius: 9px; border: 1.5px solid #C9CFD6; background: #fff; color: var(--navy) !important; font: 600 13.5px/1.2 var(--sans); }
#awg-ptl-app .awg-ptl-sbtn:hover { background: #F6F8F6; border-color: var(--navy); color: var(--navy) !important; }
#awg-ptl-app .awg-ptl-sbtn.is-solid { background: var(--navy); border-color: var(--navy); color: #fff !important; }
#awg-ptl-app .awg-ptl-sbtn.is-solid:hover { background: var(--navy-hover); color: #fff !important; }
#awg-ptl-app .awg-ptl-link { color: #2F5141; }
/* Status: one colour each, with a dot */
.awg-ptl .awg-ptl-status { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; font: 600 12.5px/1.2 var(--sans); letter-spacing: 0; }
.awg-ptl .awg-ptl-status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; flex: none; }
.awg-ptl .awg-ptl-status { background: #EEF0F4; color: #4A5568; } /* new request, and anything not listed */
.awg-ptl .awg-ptl-status.st-quoted, .awg-ptl .awg-ptl-status.st-sent, .awg-ptl .awg-ptl-status.st-viewed, .awg-ptl .awg-ptl-status.st-tk-answered { background: #FFF1D6; color: #8A5A00; }
.awg-ptl .awg-ptl-status.st-active, .awg-ptl .awg-ptl-status.st-accepted, .awg-ptl .awg-ptl-status.st-tk-open { background: #DDEBFF; color: #1F4E9A; }
.awg-ptl .awg-ptl-status.st-delivered { background: #EDE4FA; color: #5B3A99; }
.awg-ptl .awg-ptl-status.st-completed, .awg-ptl .awg-ptl-status.st-signed, .awg-ptl .awg-ptl-status.st-countersigned, .awg-ptl .awg-ptl-status.st-tk-resolved, .awg-ptl .awg-ptl-status.st-tk-closed { background: #DDF3E4; color: #1F6B3A; }
.awg-ptl .awg-ptl-status.st-cancelled, .awg-ptl .awg-ptl-status.st-declined { background: #FBE3E1; color: #9B2C22; }
.awg-ptl .awg-ptl-status.st-expired, .awg-ptl .awg-ptl-status.st-replaced { background: #EEF0F2; color: #5D6675; }
.awg-ptl .awg-ptl-status.st-sample { background: #F5ECDC; color: #7A5A22; }

/* ===== 6.26.103: dashboard boxes you can click ===== */
.awg-ptl .awg-ptl-tile,
.awg-ptl .awg-ptl-tile:hover,
.awg-ptl .awg-ptl-tile:focus,
.awg-ptl .awg-ptl-tile:active { position: relative; display: block !important; width: 100%; margin: 0; padding: 16px 44px 16px 18px !important; text-align: left; background: #fff !important; border: 1px solid var(--line) !important; border-radius: 14px !important; box-shadow: none !important; color: var(--navy) !important; font: inherit; text-transform: none; letter-spacing: 0; cursor: default; transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.awg-ptl .awg-ptl-tile:not([disabled]) { cursor: pointer; }
.awg-ptl .awg-ptl-tile:not([disabled]):hover { border-color: #9DB3A6 !important; box-shadow: 0 10px 22px -16px rgba(28,36,57,.45) !important; transform: translateY(-1px); }
.awg-ptl .awg-ptl-tile:focus-visible { outline: 2px solid var(--sage) !important; outline-offset: 2px; }
.awg-ptl .awg-ptl-tile[disabled] { opacity: 1; }
.awg-ptl .awg-ptl-tile b { display: block; font: 700 26px/1.15 var(--sans); color: var(--navy); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.awg-ptl .awg-ptl-tile.is-text b { font-size: 19px; line-height: 1.35; padding-top: 3px; }
.awg-ptl .awg-ptl-tile .awg-ptl-tile__l { display: block; margin-top: 3px; font-size: 13.5px; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.awg-ptl .awg-ptl-tile .awg-ptl-tile__go { display: block; margin-top: 6px; font-size: 13px; color: var(--muted); }
.awg-ptl .awg-ptl-tile .awg-ptl-tile__go.is-link { color: #2F5141; font-weight: 600; }
.awg-ptl .awg-ptl-tile .awg-ptl-tile__go:empty { display: none; }
.awg-ptl .awg-ptl-tile__ic { position: absolute; top: 16px; right: 16px; color: #9AA6A0; display: block; margin: 0; }
@media (prefers-reduced-motion: reduce) { .awg-ptl .awg-ptl-tile { transition: none; } .awg-ptl .awg-ptl-tile:not([disabled]):hover { transform: none; } }
@media (max-width: 600px) { .awg-ptl .awg-ptl-tile, .awg-ptl .awg-ptl-tile:hover, .awg-ptl .awg-ptl-tile:focus, .awg-ptl .awg-ptl-tile:active { padding: 12px 36px 12px 14px !important; } /* 6.26.120: the same on hover, so the box does not grow. */ .awg-ptl .awg-ptl-tile b { font-size: 22px; } .awg-ptl .awg-ptl-tile__ic { top: 12px; right: 12px; } }
/* "How your portal works": a close button */
.awg-ptl-how { position: relative; }
.awg-ptl-how > h3 { padding-right: 40px; }
.awg-ptl .awg-ptl-how__x,
.awg-ptl .awg-ptl-how__x:hover,
.awg-ptl .awg-ptl-how__x:focus { position: absolute; top: 14px; right: 14px; display: grid !important; place-items: center; width: 32px; height: 32px; min-height: 0; margin: 0; padding: 0 !important; border: 1px solid var(--line) !important; border-radius: 8px !important; background: #fff !important; color: #6B7680 !important; box-shadow: none !important; cursor: pointer; }
.awg-ptl .awg-ptl-how__x:hover { background: #F6F8F6 !important; color: var(--navy) !important; border-color: #C9CFD6 !important; }
.awg-ptl-how__gone { margin: 0; padding: 10px 14px; font-size: 13px; color: var(--muted); }
/* One "new project" button: the header has it on desktop, the greeting keeps it on phones. */
@media (min-width: 761px) { .awg-ptl-standalone #awg-ptl-app .awg-ptl-hello > .awg-ptl-btn { display: none; } }
/* Phones: box labels wrap instead of being cut. */
@media (max-width: 600px) {
	.awg-ptl .awg-ptl-tile .awg-ptl-tile__l { white-space: normal; }
	.awg-ptl .awg-ptl-tile.is-text b { white-space: normal; font-size: 17px; }
}

/* ===== 6.26.103: the Account page ===== */
.awg-ac { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 24px; align-items: start; }
.awg-ac-side { position: sticky; top: 84px; display: grid; gap: 2px; }
.admin-bar .awg-ac-side { top: 116px; }
.awg-ptl .awg-ac-side a { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid transparent; border-radius: 10px; font: 600 14.5px var(--sans); color: #56616B !important; text-decoration: none !important; }
.awg-ptl .awg-ac-side a svg { color: #7B8790; }
.awg-ptl .awg-ac-side a:hover { background: #fff; color: var(--navy) !important; }
.awg-ptl .awg-ac-side a.on { background: #fff; border-color: var(--line); color: var(--navy) !important; }
.awg-ptl .awg-ac-side a.on svg { color: #2F5141; }
.awg-ac-main { display: grid; gap: 18px; min-width: 0; }
.awg-ac-box { scroll-margin-top: 84px; }
#awg-ptl-app .awg-ac-box h2 { font-size: 17px; margin: 0 0 4px; }
.awg-ac-lead { margin: 0 0 16px; font-size: 13.5px; color: var(--muted); }
.awg-ac-photo { display: flex; gap: 16px; align-items: center; margin-bottom: 18px; }
.awg-ptl .awg-ac-face { width: 64px; height: 64px; font-size: 22px; overflow: hidden; flex: none; }
.awg-ac-face img { width: 100%; height: 100%; object-fit: cover; display: block; }
.awg-ac-photo > div { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; }
.awg-ac-photo label.awg-ptl-sbtn { cursor: pointer; }
.awg-ac-photo .awg-ptl-file:focus-visible + label, .awg-ac-photo label:focus-within { outline: 2px solid var(--sage); outline-offset: 2px; }
.awg-ac-photo .awg-ptl-msg { flex-basis: 100%; margin: 0; }
.awg-ac-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 18px; margin-bottom: 14px; }
.awg-ac-f label { display: block; font: 600 13.5px var(--sans); color: var(--navy); margin-bottom: 6px; }
.awg-ptl .awg-ac-f input, .awg-ptl .awg-ac-f select { width: 100%; height: 44px; padding: 0 13px; border: 1px solid #D4DAD5; border-radius: 10px; background: #fff; font: 15px var(--sans); color: var(--navy); box-sizing: border-box; }
.awg-ptl .awg-ac-f input:focus, .awg-ptl .awg-ac-f select:focus { outline: none; border-color: var(--sage); box-shadow: 0 0 0 3px rgba(92,122,107,.18); }
.awg-ptl .awg-ac-f input.is-ro { background: #F7F8F7; color: #4A5560; }
.awg-ac-f small { display: block; margin-top: 6px; font-size: 12.5px; color: var(--muted); }
.awg-ac-emrow { position: relative; }
.awg-ptl .awg-ac-emrow input { padding-right: 84px; }
.awg-ptl .awg-ac-inline { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); padding: 4px 2px; font-size: 13.5px; }
.awg-ac-email { margin: 4px 0 14px; padding: 14px 16px; border: 1px dashed #B9C9BE; border-radius: 12px; background: #FAFCFA; }
.awg-ac-emflow { display: grid; gap: 10px; max-width: 420px; }
.awg-ptl .awg-ac-emflow > input { width: 160px; height: 44px; padding: 0 13px; border: 1px solid #D4DAD5; border-radius: 10px; font: 600 18px var(--sans); letter-spacing: .2em; }
.awg-ac-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; }
.awg-ac-actions .awg-ptl-msg { margin: 0; }
/* Switches */
.awg-ac-sw { display: flex; align-items: center; gap: 16px; padding: 13px 0; border-top: 1px solid #EEF0EE; cursor: pointer; position: relative; }
.awg-ac-lead + .awg-ac-sw { border-top: 0; padding-top: 0; }
.awg-ac-sw__t { flex: 1; min-width: 0; }
.awg-ac-sw__t b { display: block; font: 600 14.5px var(--sans); color: var(--navy); }
.awg-ac-sw__t small { display: block; font-size: 13px; color: var(--muted); }
.awg-ac-sw input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.awg-ac-sw__ui { flex: none; position: relative; width: 44px; height: 26px; border-radius: 99px; background: #CDD3CF; transition: background .15s ease; }
.awg-ac-sw__ui::after { content: ""; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.2); transition: left .15s ease; }
.awg-ac-sw input:checked + .awg-ac-sw__ui { background: #2F5141; }
.awg-ac-sw input:checked + .awg-ac-sw__ui::after { left: 21px; }
.awg-ac-sw input:focus-visible + .awg-ac-sw__ui { outline: 2px solid var(--sage); outline-offset: 2px; }
.awg-ac-sw input:disabled + .awg-ac-sw__ui { opacity: .6; }
.awg-ac-box > .awg-ptl-msg { margin: 8px 0 0; }
.awg-ac-two { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.awg-ac-zone { margin: 10px 0 4px; font-size: 13px; color: var(--muted); }
.awg-ac-zone.is-ok { color: #1F6B3A; font-weight: 600; }
.awg-ac-chip { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 14px; padding: 9px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; font: 600 14px var(--sans); color: var(--navy); max-width: 100%; }
.awg-ac-chip svg { color: #2F5141; flex: none; }
.awg-ac-chip span { overflow-wrap: anywhere; }
@media (prefers-reduced-motion: reduce) { .awg-ac-sw__ui, .awg-ac-sw__ui::after { transition: none; } }
@media (max-width: 900px) {
	.awg-ac { grid-template-columns: minmax(0, 1fr); }
	.awg-ac-side { position: static; display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin: 0 -2px; padding: 0 2px 2px; }
	.awg-ac-side::-webkit-scrollbar { display: none; }
	.awg-ptl .awg-ac-side a { flex: none; background: #fff; border-color: var(--line); padding: 8px 12px; font-size: 13.5px; }
	.awg-ac-two { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) { .awg-ac-grid { grid-template-columns: minmax(0, 1fr); } }
#awg-ptl-app .awg-ac-main > .awg-ptl-box, #awg-ptl-app .awg-ac-two > .awg-ptl-box { margin: 0; }
.awg-ac .awg-ptl-msg:empty { display: none; }
/* 6.26.104: the email is shown, locked. */
.awg-ac-emrow.is-locked { position: relative; }
.awg-ptl .awg-ac-emrow.is-locked input { padding-right: 40px; }
.awg-ac-emrow.is-locked svg { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); color: #8A96A0; }
.awg-ptl .awg-ac-inlink { padding: 0; font-size: 12.5px; }
.awg-ac-note { display: block; font-size: 13px; color: var(--muted); flex-basis: 100%; }
/* 6.26.105: text links keep their own look on hover, focus and click, so a theme that
   paints every button (for example green) cannot put a block behind them. */
#awg-ptl-app .awg-ptl-link,
#awg-ptl-app .awg-ptl-link:hover,
#awg-ptl-app .awg-ptl-link:focus,
#awg-ptl-app .awg-ptl-link:active,
.awg-ptl-dock .awg-ptl-link,
.awg-ptl-dock .awg-ptl-link:hover,
.awg-ptl-dock .awg-ptl-link:focus,
.awg-ptl-dock .awg-ptl-link:active { background: transparent !important; background-color: transparent !important; box-shadow: none !important; border-color: transparent !important; color: #2F5141 !important; text-transform: none !important; letter-spacing: 0 !important; }
#awg-ptl-app .awg-ptl-link:hover, .awg-ptl-dock .awg-ptl-link:hover { color: var(--navy) !important; text-decoration-thickness: 2px; }
#awg-ptl-app .awg-ptl-link:focus:not(:focus-visible), .awg-ptl-dock .awg-ptl-link:focus:not(:focus-visible) { outline: none; }
#awg-ptl-app .awg-ptl-link:focus-visible, .awg-ptl-dock .awg-ptl-link:focus-visible { outline: 2px solid var(--sage) !important; outline-offset: 2px; border-radius: 3px; }
/* The small white buttons and the side menu, too. */
#awg-ptl-app .awg-ptl-sbtn:not(.is-solid):focus, #awg-ptl-app .awg-ptl-sbtn:not(.is-solid):active { background: #F6F8F6 !important; color: var(--navy) !important; }
#awg-ptl-app .awg-ac-side a:focus, #awg-ptl-app .awg-ac-side a:active { background: #fff !important; color: var(--navy) !important; }
/* 6.26.106: the Account phone box with the flag. */
.awg-ac-f .iti { display: block; width: 100%; }
.awg-ptl .awg-ac-f .iti--separate-dial-code input[type=tel] { padding-left: 92px; }
.awg-ac-f .iti--separate-dial-code .iti__selected-flag { border-radius: 10px 0 0 10px; background: #F4F7F4; }
.awg-ac-f .iti__country-list { z-index: 90; }

/* ===== 6.26.112 ===== */
/* Tablets and small laptops (761–1180px): the header fits without sideways scroll. */
@media (min-width: 761px) and (max-width: 1180px) {
	.awg-ptl .awg-ptl-barnav { margin-left: 16px; }
	.awg-ptl .awg-ptl-barnav button,
	.awg-ptl .awg-ptl-barnav button:hover,
	.awg-ptl .awg-ptl-barnav button:focus,
	.awg-ptl .awg-ptl-barnav button:active { padding: 0 9px !important; gap: 6px; }
	.awg-ptl .awg-ptl-barnav button.on::after { left: 6px; right: 6px; }
	.awg-ptl .awg-ptl-acct__who { display: none; }
}
@media (min-width: 761px) and (max-width: 1040px) {
	.awg-ptl .awg-ptl-barnav button svg { display: none; }
	.awg-ptl .awg-ptl-hdnew span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
	.awg-ptl .awg-ptl-hdnew, .awg-ptl .awg-ptl-hdnew:hover, .awg-ptl .awg-ptl-hdnew:focus { width: 38px; padding: 0 !important; justify-content: center; }
}
/* Sample project banner: normal text size, whatever the theme sets for paragraphs. */
.awg-ptl .awg-ptl-demo p { font-size: 15px !important; line-height: 1.55 !important; }
.awg-ptl .awg-ptl-demo p.awg-ptl-small { font-size: 13.5px !important; }
/* Calls page: the page title already says Calls, so "Your calls" is for screen readers only. */
#awg-ptl-app #awg-bk-up { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; margin: 0; }

@media (min-width: 761px) and (max-width: 860px) {
	.awg-ptl .awg-ptl-barnav { margin-left: 8px; }
	.awg-ptl .awg-ptl-barnav button,
	.awg-ptl .awg-ptl-barnav button:hover,
	.awg-ptl .awg-ptl-barnav button:focus,
	.awg-ptl .awg-ptl-barnav button:active { padding: 0 7px !important; font-size: 13.5px !important; }
}

/* 6.26.113: phones: the project chat fits the screen, so the typing box sits at the bottom and the
   round team-chat button (always in the same place) sits in the empty space beside it. */
@media (max-width: 600px) {
	/* 6.26.118: svh (the screen with the browser's address bar showing) never changes while you scroll; dvh
	   changed as Android Chrome's address bar slid away, so the chat resized and the typing box jumped. */
	#awg-ptl-app .awg-ptl-chatcard.is-full { display: flex; flex-direction: column; height: calc(100vh - 56px - var(--awg-ptl-tabbar, 62px) - 24px); height: calc(100svh - 56px - var(--awg-ptl-tabbar, 62px) - 24px); min-height: 420px; }
	#awg-ptl-app .awg-ptl-chatcard.is-full > .awg-ptl-chat { flex: 1 1 auto; min-height: 0; max-height: none; }
	#awg-ptl-app .awg-ptl-chatcard.is-full .awg-ptl-compose { padding-right: 76px; }
}
/* 6.26.114: desktop and tablet: the project chat is as tall as the screen allows, so header, messages and typing box fit together. */
@media (min-width: 601px) {
	#awg-ptl-app .awg-ptl-chatcard.is-full { display: flex; flex-direction: column; height: min(760px, calc(100vh - 64px - 32px)); min-height: 440px; }
	#awg-ptl-app .awg-ptl-chatcard.is-full > .awg-ptl-chat { flex: 1 1 auto; min-height: 0; max-height: none; }
}
/* 6.26.115: 601–760px wide (a phone held sideways, small tablets) shows the bottom menu, so the chat
   leaves room for it and the typing box is never under the menu or below the screen. */
@media (min-width: 601px) and (max-width: 760px) {
	#awg-ptl-app .awg-ptl-chatcard.is-full { height: calc(100vh - 66px - var(--awg-ptl-tabbar, 62px) - 16px); height: calc(100svh - 66px - var(--awg-ptl-tabbar, 62px) - 16px); min-height: 240px; } /* svh: 6.26.118 */
}
/* 6.26.115: tablets: the four dashboard boxes go two by two, so no label is cut off. */
@media (min-width: 601px) and (max-width: 1000px) {
	.awg-ptl .awg-ptl-tiles { grid-template-columns: 1fr 1fr; }
}
/* Scrolling the messages never moves the page behind them.
   6.26.117: only while there are more messages to scroll. On a touch screen, a swipe at the top or end
   of the messages moves the page (portal.js), so the page no longer seems to hang. */
.awg-ptl .awg-ptl-chat.is-scroll { overscroll-behavior: contain; }
/* "New messages" button above the typing box while you read older messages. */
.awg-ptl .awg-ptl-jumpwrap { position: relative; height: 0; }
.awg-ptl .awg-ptl-jump, .awg-ptl .awg-ptl-jump:hover, .awg-ptl .awg-ptl-jump:focus { position: absolute; left: 50%; bottom: 12px; transform: translateX(-50%); z-index: 3; display: inline-flex; align-items: center; height: 34px; margin: 0; padding: 0 16px !important; border: 0 !important; border-radius: 999px !important; background: #1C2439 !important; color: #fff !important; font: 600 13px var(--sans); white-space: nowrap; box-shadow: 0 6px 18px rgba(28, 36, 57, .22); cursor: pointer; }
.awg-ptl .awg-ptl-jump[hidden] { display: none !important; }

/* ===== 6.26.117 / 6.26.118 ===== */
/* Phones and small tablets: the typing box and Send button use the full width of the chat. 6.26.118:
   the team chat is a tab in the bottom menu (Team chat), so there is no round button over the page. */
@media (max-width: 760px) {
	body:has(.awg-ptl-dock:not(.is-open)) .awg-ptl-chatcard:not(.is-dock) .awg-ptl-compose,
	#awg-ptl-app .awg-ptl-chatcard.is-full .awg-ptl-compose { padding-right: 12px; }
	.awg-ptl-teamtab .awg-ptl-dock:not(.is-open) .awg-ptl-dock__fab,
	.awg-ptl-teamtab .awg-ptl-dock:not(.is-open) .awg-ptl-dock__label { display: none !important; }
	.awg-ptl .awg-ptl-tabbar .awg-ptl-tabbar__team .awg-ptl-count:not([hidden]) { display: inline-grid; position: absolute; top: 0; left: 50%; right: auto; margin-left: 4px; }
	.awg-ptl-tabbar__ic { position: relative; display: inline-grid; place-items: center; }
	.awg-ptl-tabbar__ic .awg-ptl-tabbar__dot { position: absolute; top: auto; right: -3px; bottom: 0; width: 9px; height: 9px; border: 2px solid #fff; }
	.awg-ptl-tabbar__ic .awg-ptl-tabbar__dot:not(.is-on) { display: none; }
	.awg-ptl .awg-ptl-tabbar button[hidden] { display: none !important; }
}
/* ===== 6.26.119 ===== */
/* Phones: the photo button at the top right keeps one size and place. Two older rules gave it padding
   when the menu was closed and none when it was open, so it moved a little on every tap. Open and hover
   now show a soft ring around the photo instead. */
@media (max-width: 760px) {
	.awg-ptl .awg-ptl-acct__btn,
	.awg-ptl .awg-ptl-acct__btn:hover,
	.awg-ptl .awg-ptl-acct__btn:focus,
	.awg-ptl .awg-ptl-acct__btn:active,
	.awg-ptl .awg-ptl-acct.is-open .awg-ptl-acct__btn { padding: 0 !important; border: 0 !important; background: transparent !important; transform: none !important; }
	.awg-ptl .awg-ptl-acct__btn .awg-ptl-avatar { transition: box-shadow .15s ease; }
	.awg-ptl .awg-ptl-acct.is-open .awg-ptl-acct__btn .awg-ptl-avatar { box-shadow: 0 0 0 3px #DCE5DE; }
}
@media (max-width: 760px) and (hover: hover) {
	.awg-ptl .awg-ptl-acct__btn:hover .awg-ptl-avatar { box-shadow: 0 0 0 3px #DCE5DE; }
}

/* ===== 6.26.122 ===== */
/* Computers: a bigger team chat with a steady size. 420px wide and about 520px of messages, less
   on short screens; it no longer grows and shrinks as messages arrive. */
.awg-ptl-dock__panel { width: min(420px, calc(100vw - 32px)); }
.awg-ptl-dock.is-open .awg-ptl-dock__panel .awg-ptl-chatcard { flex: 1 1 auto; }
.awg-ptl-dock.is-open .awg-ptl-dock__panel .awg-ptl-chat { height: min(520px, calc(100vh - 240px)); height: min(520px, calc(100dvh - 240px)); max-height: none; }
/* "Make the chat bigger": a large window in the middle of the screen, with the page dimmed behind. */
.awg-ptl-dock.is-open.is-max { left: 0; right: 0; top: 0; bottom: 0; z-index: 62; align-items: center; justify-content: center; background: rgba(28,36,57,.35); padding: 24px; }
.awg-ptl-dock.is-open.is-max .awg-ptl-dock__panel { width: min(880px, 100%); height: calc(100vh - 48px); height: calc(100dvh - 48px); max-height: none; }
.awg-ptl-dock.is-open.is-max .awg-ptl-dock__panel .awg-ptl-chat { height: auto; }
html.awg-ptl-dock-open:has(.awg-ptl-dock.is-max), html.awg-ptl-dock-open:has(.awg-ptl-dock.is-max) body { overflow: hidden; }
/* Phones and short screens: the chat opens at about 85% of the screen, whatever the number of
   messages, with a strip of the page above it (a tap there closes it). No Bigger button. */
@media (max-width: 600px), (max-height: 500px) {
	.awg-ptl-dock.is-open .awg-ptl-dock__panel, .awg-ptl-has-tabbar .awg-ptl-dock.is-open .awg-ptl-dock__panel { height: 85vh; height: 85dvh; }
	.awg-ptl-dock.is-open .awg-ptl-dock__panel .awg-ptl-chat { height: auto; }
	.awg-ptl-dock__max { display: none !important; }
	.awg-ptl-dock.is-open.is-max { padding: 0; align-items: stretch; justify-content: flex-end; }
	.awg-ptl-dock.is-open.is-max .awg-ptl-dock__panel { width: 100%; height: 85vh; height: 85dvh; }
}
@media (max-height: 500px) { .awg-ptl-dock.is-open .awg-ptl-dock__panel, .awg-ptl-has-tabbar .awg-ptl-dock.is-open .awg-ptl-dock__panel { height: 100vh; height: 100dvh; } }

/* ===== 6.26.123 ===== */
/* Computers: the menu and header no longer shift when you change page. A long page has a scrollbar
   and a short one (Calls, Agreements, a page still loading) did not, so the page got wider or
   narrower by the scrollbar and the bottom menu stretched. The scrollbar's space is now always kept.
   Phones are not affected (their scrollbars float over the page). */
html:has(> body.awg-ptl-standalone) { scrollbar-gutter: stable; }

/* ===== 6.26.125 ===== */
/* Support in the photo menu is for phones only (computers have it in the top menu). */
@media (min-width: 761px) { .awg-ptl .awg-ptl-acct__item.is-phone { display: none !important; } }
/* Welcome guide on phones: a long button ("Explore the sample project") wraps instead of running into
   the card's edge. */
.awg-gd .awg-gd-acts .awg-ptl-btn { min-width: 0; white-space: normal; text-align: center; line-height: 1.25; }

/* ===== 6.26.127 ===== */
/* "New project" inside the portal: the team grid and profiles keep their own layout. */
#awg-ptl-app .awg-ptl-teamlead { margin: -6px 0 18px; color: #5D6675; font-size: 15px; max-width: 640px; }
#awg-ptl-app .awg-ptl-teamview { min-width: 0; }
#awg-ptl-app .awg-ptl-teamview .awg-ptl-team, #awg-ptl-app .awg-ptl-teamview .awg-pp { margin-left: 0; margin-right: 0; }
/* The profile's section tabs stick below the portal header, not under it. */
#awg-ptl-app .awg-ptl-teamview .awg-pp-tabs { top: calc(var(--awg-ptl-barh, 64px) + 8px); }


/* ===== 6.26.128 ===== */
/* [awg_portal_menu] in the site header: the brand's navy, not the theme's link colour (it was blue on
   GeneratePress). "Sign in" is a navy outline button that fills on hover; "My portal" (signed in) is
   solid navy with the unread count. Every colour rule covers :visited too, so a visited link looks the
   same (a white "Sign in" on white came from a visited rule winning). */
html body a.awg-ptl-menu, html body a.awg-ptl-menu:visited {
	display: inline-flex; align-items: center; gap: 8px; box-sizing: border-box;
	min-height: 40px; height: auto; margin: 0 0 0 8px; padding: 8px 18px !important; line-height: 1.2 !important;
	border: 1.5px solid #1C2439 !important; border-radius: 8px !important;
	background: #1C2439 !important; color: #fff !important;
	font-family: Inter, -apple-system, "Segoe UI", Roboto, sans-serif; font-size: 15px !important; font-weight: 600 !important;
	text-decoration: none !important; text-transform: none !important; letter-spacing: normal !important; white-space: nowrap;
	box-shadow: none !important; transition: background .15s ease, color .15s ease;
}
html body a.awg-ptl-menu.awg-ptl-menu--in, html body a.awg-ptl-menu.awg-ptl-menu--in:visited {
	background: #1C2439 !important; border-color: #1C2439 !important; color: #fff !important; /* 6.26.131: solid navy, like the site's main buttons. */
}
html body a.awg-ptl-menu:hover, html body a.awg-ptl-menu:focus-visible,
html body a.awg-ptl-menu:visited:hover, html body a.awg-ptl-menu:visited:focus-visible {
	background: #2A3552 !important; border-color: #2A3552 !important; color: #fff !important;
}
html body a.awg-ptl-menu.awg-ptl-menu--in:hover, html body a.awg-ptl-menu.awg-ptl-menu--in:focus-visible,
html body a.awg-ptl-menu.awg-ptl-menu--in:visited:hover, html body a.awg-ptl-menu.awg-ptl-menu--in:visited:focus-visible {
	background: #2A3552 !important; border-color: #2A3552 !important; color: #fff !important;
}
html body a.awg-ptl-menu:focus-visible { outline: 2px solid #5C7A6B !important; outline-offset: 2px; }
html body a.awg-ptl-menu .awg-ptl-count { margin: 0; min-width: 20px; height: 20px; font-size: 11.5px; background: #B42318; color: #fff; border: 0; }

/* ===== 6.26.130 ===== */
/* Sign-in popup: the close (×) keeps its own look. A theme that styles every button (green fill,
   padding) made it a small × in a green blob pushed into the card's corner. */
.awg-ptl-auth .awg-ptl-auth__x, .awg-ptl-auth .awg-ptl-auth__x:focus, .awg-ptl-auth .awg-ptl-auth__x:active {
	position: absolute !important; right: 16px !important; top: 16px !important; left: auto !important; bottom: auto !important;
	display: grid !important; place-items: center; box-sizing: border-box !important;
	width: 36px !important; height: 36px !important; min-width: 0 !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important;
	border: 1px solid #DCE4DE !important; border-radius: 50% !important; background: #fff !important; color: #5D6675 !important;
	font: 400 22px/1 Inter, -apple-system, "Segoe UI", Roboto, sans-serif !important; text-transform: none !important; letter-spacing: 0 !important;
	box-shadow: none !important; cursor: pointer; transition: background .15s ease, color .15s ease; z-index: 2;
}
.awg-ptl-auth .awg-ptl-auth__x:hover, .awg-ptl-auth .awg-ptl-auth__x:focus-visible { background: #F1F4F1 !important; color: #1C2439 !important; border-color: #C9D3CC !important; }
.awg-ptl-auth .awg-ptl-auth__x:focus-visible { outline: 2px solid #5C7A6B !important; outline-offset: 2px; }

/* ===== 6.26.131 ===== */
/* Sign-in popup: the card keeps the same width whether or not it needs its own scrollbar. When the
   "Create account" form was just taller than the window, the scrollbar came and went, the Google button
   redrew at each width and the card shook. */
.awg-ptl-auth-overlay .awg-ptl-auth { scrollbar-gutter: stable both-edges; }


/* ===== 6.26.132 ===== */
/* Sign-in popup: the Google button's slot is always 44px tall. Google's button loads a little taller
   for a moment and then shrinks, which made the whole card grow, re-centre and jump each time the
   form appeared. */
.awg-ptl-auth .awg-ptl-auth__google { height: 44px; min-height: 44px; overflow-x: visible; overflow-y: clip; }
