/* Friends and guestbook: people first, one continuous conversation. */
body[data-ui-shell="community"] .forum-friends-page{--friends-brick:#a24933;--friends-ink:#382b24;--friends-muted:#8b786a;max-width:1000px;margin-inline:auto;min-width:0}
body[data-ui-shell="community"] .forum-friends-page .friend-hero{padding:18px 0 32px;min-height:0;margin:0 0 26px;border:0!important;background:transparent!important;gap:24px}
.forum-friends-page .friend-hero .detail-eyebrow{font-size:13px;font-weight:500;letter-spacing:.06em;color:#8b786a}
.forum-friends-page .friend-hero h1{margin:15px 0 14px;font-size:clamp(32px,4vw,46px);line-height:1.35;font-weight:650;letter-spacing:-.04em;color:#382b24}
.forum-friends-page .friend-hero h1 em{font-style:normal;color:#a24933}
.forum-friends-page .friend-hero p{font-size:14px;line-height:1.8;color:#8b786a;margin:0 0 20px}
.forum-friends-page .friend-hero>.friend-art{display:block;position:static;width:240px;height:auto;opacity:.8;align-self:center}
.forum-friends-page .friend-art .friend-orbit{animation:friend-orbit 16s linear 1}
.forum-friends-page .friend-art :is(.friend-person,.friend-dot){animation:friend-float 4s ease-in-out 2}
body[data-ui-shell="community"] .forum-friends-page .button,body[data-ui-shell="community"] dialog[data-kind="friend-dialog"] .button{background:#a24933!important;border:1px solid #a24933!important;color:#fffaf4!important;box-shadow:none!important;border-radius:8px!important;min-height:44px;font-size:13px;padding:10px 17px}
body[data-ui-shell="community"] .forum-friends-page .button.outline,body[data-ui-shell="community"] dialog[data-kind="friend-dialog"] .button.outline{background:transparent!important;border-color:#a16d5030!important;color:#8b6751!important;box-shadow:none!important}
body[data-ui-shell="community"] .forum-friends-page .friend-book{background:none;border:0;box-shadow:none;padding:0}
body[data-ui-shell="community"] .forum-friends-page .friend-section-head{margin:0 0 8px;gap:20px}
body[data-ui-shell="community"] .forum-friends-page .friend-section-head h2{font-size:21px;font-weight:650;letter-spacing:-.02em;color:#382b24}
.forum-friends-page .friend-scope-note{font-size:13px;line-height:1.8;color:#8b786a;margin:6px 0 0}
body[data-ui-shell="community"] .forum-friends-page :is(.gather-refresh,.friend-visit,.gather-more){background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:#8b6751!important;min-height:44px;font-size:13px;padding:8px 0}
body[data-ui-shell="community"] .forum-friends-page .friend-tabs{display:flex;gap:28px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:0;margin:14px 0 0;border:0;border-bottom:1px solid #91745c22;background:transparent}
body[data-ui-shell="community"] .forum-friends-page .friend-tabs>button{position:relative;flex:0 0 auto;flex-wrap:nowrap;min-height:54px;padding:14px 0;gap:7px;border:0;border-radius:0;background:transparent!important;color:#8b786a;box-shadow:none;font-weight:500;font-size:14px}
body[data-ui-shell="community"] .forum-friends-page .friend-tabs>button.active{color:#a24933;background:transparent!important;box-shadow:none;font-weight:650}
.forum-friends-page .friend-tabs>button::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:#a24933;transform:scaleX(0);transform-origin:left;transition:transform .24s ease}
.forum-friends-page .friend-tabs>button.active::after{transform:scaleX(1)}
.forum-friends-page .friend-tabs svg{width:17px;height:17px}
body[data-ui-shell="community"] .forum-friends-page .friend-tabs small{font-size:12px;font-weight:400;font-variant-numeric:tabular-nums;min-width:0;height:auto;padding:0;background:none;color:inherit;opacity:.75}
.friend-roster-tools{display:flex;align-items:center;gap:20px;justify-content:space-between;margin:16px 0 4px}
.friend-roster-search{display:flex;align-items:center;gap:10px;min-width:0;max-width:420px;flex:1;border-bottom:1px solid #91745c22;transition:border-color .2s;padding:0 0 2px}
.friend-roster-search:focus-within{border-color:#a24933}
.friend-roster-search>svg{width:18px;height:18px;flex:none;color:#a16d50}
body[data-ui-shell="community"] .friend-roster-search input{display:block;flex:1;width:100%;min-width:0;min-height:44px;border:0;border-radius:0;background:transparent;box-shadow:none;outline:0;padding:8px 0;font:inherit;font-size:16px;color:#382b24}
.friend-roster-search input::placeholder{color:#998575;font-size:14px}
.friend-roster-search button{display:grid;place-items:center;flex:none;width:44px;height:44px;border:0;background:transparent;color:#8b786a;border-radius:50%;cursor:pointer}
.friend-roster-search button svg{width:17px;height:17px}
.friend-roster-count{font-size:12px;line-height:1.6;color:#8b786a;white-space:nowrap;font-variant-numeric:tabular-nums}
.friend-roster-no-match{padding:24px 0 32px;color:#756254;font-size:14px}
.friend-roster-no-match button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 0;border:0;background:transparent;color:#a24933;font:inherit;cursor:pointer}
.friend-roster-no-match small{display:block;font-size:12px;color:#8b786a;margin-top:8px}
body[data-ui-shell="community"] .forum-friends-page .friend-card{grid-template-columns:minmax(180px,1fr) auto;gap:5px 26px;padding:25px 0;border-bottom:1px solid #91745c18;transition:background .2s;animation:friends-surface-in .28s ease both}
body[data-ui-shell="community"] .forum-friends-page .friend-card:last-child{border-bottom:0}
.forum-friends-page .friend-identity strong{font-size:19px;font-weight:650;line-height:1.5;letter-spacing:-.02em;color:#382b24}
.forum-friends-page .friend-identity small{font-size:13px;color:#8b786a;margin-top:4px}
.forum-friends-page .friend-identity .friend-avatar{width:52px;height:52px;border:0;box-shadow:0 0 0 3px #fffaf3,0 0 0 4px #d8c3ad55;background:#eadccd}
.forum-friends-page .friend-identity>svg{opacity:.5;transition:opacity .2s,transform .2s}
.forum-friends-page .friend-uid{margin-left:64px;font-size:11px;letter-spacing:.02em;color:#998575;line-height:1.7}
body[data-ui-shell="community"] .forum-friends-page .friend-card blockquote{margin:9px 0 0 64px;padding:4px 0;border:0;max-width:620px;font-size:14px;color:#756254;line-height:1.85}
body[data-ui-shell="community"] .forum-friends-page .friend-card footer{gap:12px}
.forum-friends-page .friend-card .friend-muted{font-size:12px}
body[data-ui-shell="community"] .forum-friends-page .friend-visit{font-size:12px;color:#8b786a!important;padding-inline:4px}
.forum-friends-page .friend-empty{padding:28px 0 34px;text-align:left;max-width:600px}
.forum-friends-page .friend-empty .friend-art{width:146px;height:auto;margin:0 0 14px;opacity:.7}
.forum-friends-page .friend-empty h3,.forum-friends-page .friend-empty h2{font-size:22px;color:#382b24;line-height:1.5}
.forum-friends-page .friend-empty p{font-size:14px;line-height:1.85;color:#8b786a}
body[data-ui-shell="community"] .forum-friends-page .connect-next{margin-top:22px;padding-top:22px;border-color:#91745c22}
.forum-friends-page .connect-next .destination-section-heading small{font-size:12px;color:#8b786a}
.forum-friends-page .connect-next .destination-section-heading h2{font-size:20px;font-weight:600;color:#756254}
body[data-ui-shell="community"] dialog[data-kind="friend-dialog"]{background:#fffaf3;color:#382b24;border-radius:18px}
body[data-ui-shell="community"] dialog[data-kind="friend-dialog"] .friend-find-intro{text-align:left}
dialog[data-kind="friend-dialog"] .friend-find-intro .friend-art{width:130px;height:auto;display:block;margin-bottom:14px}
dialog[data-kind="friend-dialog"] .friend-find-intro h3{font-size:25px;line-height:1.5;letter-spacing:-.02em;font-weight:650;color:#382b24}
dialog[data-kind="friend-dialog"] .friend-find-intro p{font-size:14px;color:#8b786a;line-height:1.8}
body[data-ui-shell="community"] dialog[data-kind="friend-dialog"] .friend-search{padding:6px 0 10px;border:0;border-bottom:1px solid #a16d5055;border-radius:0;background:none;gap:12px}
body[data-ui-shell="community"] dialog[data-kind="friend-dialog"] .friend-search input{font-size:16px;min-height:44px}
body[data-ui-shell="community"] dialog[data-kind="friend-dialog"] .friend-search-result{padding:14px 0;background:none;border-radius:0;line-height:1.6}
dialog[data-kind="friend-dialog"] .friend-search-result small{font-size:13px;color:#8b786a}
body[data-ui-shell="community"] dialog[data-kind="friend-dialog"] textarea{border:0;border-bottom:1px solid #a16d5055;border-radius:0;background:transparent;padding:12px 0;font:inherit;font-size:16px;line-height:1.85;min-height:130px;box-shadow:none}
dialog[data-kind="friend-dialog"] .friend-muted{font-size:13px;line-height:1.8}
/* Guestbook typography follows the public profile, with the reply nested under its author. */
body[data-ui-shell="community"] .personal-space-document .space-board .space-section-title{padding:26px 0 16px}
body[data-ui-shell="community"] .personal-space-document .space-board .space-section-title h2{font-size:22px!important;color:#382b24;font-weight:650;letter-spacing:-.02em}
.personal-space-document .space-board .space-section-title h2 small{font-size:13px;font-weight:400;margin-left:8px;color:#8b786a}
body[data-ui-shell="community"] .personal-space-document .space-compose-invite{width:100%;padding:15px 0;margin-bottom:12px;border:0;background:linear-gradient(90deg,#edddcb44,transparent);border-radius:0;gap:14px;min-height:80px;transition:background .2s,transform .2s}
.personal-space-document .space-invite-copy strong{font-size:16px;font-weight:600;color:#756254}
.personal-space-document .space-invite-copy small{font-size:13px;line-height:1.6;color:#8b786a}
.personal-space-document .space-invite-action{font-size:13px;color:#a24933;margin-left:auto;min-height:44px}
body[data-ui-shell="community"] .personal-space-document .space-board :is(.space-compose-editor,.space-reply-form){border:0;padding:16px 0 22px;animation:friends-surface-in .24s ease both}
body[data-ui-shell="community"] .personal-space-document .space-board .space-compose-heading{justify-content:flex-start;gap:12px;margin:0 0 12px}
body[data-ui-shell="community"] .personal-space-document .space-board :is(.space-compose-heading label,.space-reply-form label){font-size:14px;color:#756254;margin:0;line-height:1.7}
body[data-ui-shell="community"] .personal-space-document .space-board textarea{background:transparent;min-height:120px;border:0;border-bottom:1px solid #bfa18a80;padding:14px 0;border-radius:0;font-size:16px;line-height:1.9;color:#382b24;box-shadow:none}
body[data-ui-shell="community"] .personal-space-document .space-board textarea:focus{border-color:#a24933;box-shadow:0 1px 0 #a24933}
.personal-space-document .space-board :is(.space-compose-footer>span,.space-reply-meta){font-size:12px;line-height:1.8;color:#8b786a}
body[data-ui-shell="community"] .personal-space-document .space-board :is(.space-compose-cancel,.space-reply-actions>button:not(.button),.space-text-button){min-height:44px;font-size:13px;color:#8b6751}
body[data-ui-shell="community"] .personal-space-document .space-board .button{min-height:44px!important;font-size:13px;border-radius:8px!important;background:#a24933!important;border-color:#a24933!important;padding:10px 17px;box-shadow:none}
body[data-ui-shell="community"] .personal-space-document .space-management{padding-top:12px}
body[data-ui-shell="community"] .personal-space-document .space-message-filters{gap:24px!important;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
body[data-ui-shell="community"] .personal-space-document .space-message-filters button{position:relative;flex:none;min-height:46px;border-radius:0;background:none!important;padding:10px 0;border-bottom:2px solid transparent;font-size:14px;color:#8b786a}
body[data-ui-shell="community"] .personal-space-document .space-message-filters button[aria-pressed="true"]{color:#a24933;border-color:#a24933}
.personal-space-document .space-message-filters small{font-size:12px;font-variant-numeric:tabular-nums}
body[data-ui-shell="community"] .personal-space-document .space-management-note{font-size:11px;color:#998575;line-height:1.8;margin:6px 0 0}
body[data-ui-shell="community"] .personal-space-document .space-board .space-message{padding:28px 0;gap:16px;border:0;background:transparent;position:relative}
body[data-ui-shell="community"] .personal-space-document .space-board .space-message+.space-message::before{content:'';position:absolute;top:0;left:56px;right:0;height:1px;background:linear-gradient(90deg,#91745c22,transparent)}
body[data-ui-shell="community"] .personal-space-document .space-board .space-avatar{width:40px;height:40px;flex-basis:40px}
.personal-space-document .space-board .space-message-avatar{flex-basis:40px}
.personal-space-document .space-board .space-message header{gap:8px 14px}
.personal-space-document .space-board .space-message header a{font-size:16px;font-weight:650;color:#382b24;line-height:1.6}
.personal-space-document .space-board .space-message time{font-size:12px;color:#998575;line-height:1.6}
.personal-space-document .space-board .space-message-body{font-size:17px;line-height:1.9;color:#59483b;margin:12px 0 8px}
body[data-ui-shell="community"] .personal-space-document .space-board .space-owner-reply{border:0;padding:14px 16px;margin:14px 0 4px;background:linear-gradient(90deg,#edddcb55,transparent);border-radius:0}
.personal-space-document .space-board .space-owner-reply strong{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:#a24933}
.personal-space-document .space-owner-reply strong svg{width:15px;height:15px}
.personal-space-document .space-board .space-owner-reply p{font-size:15px;line-height:1.9;color:#756254;margin:7px 0}
.personal-space-document .space-board .space-reply-status{font-size:11px;color:#8b786a;margin:3px 0}
.personal-space-document .space-board .space-reply-status.is-pending{color:#a24933}
.personal-space-document .space-board .space-message-tools{gap:24px;margin:8px 0 0;justify-content:flex-start}
.personal-space-document .space-board .space-message-tools button{min-height:44px;font-size:13px;color:#8b786a;padding:8px 0;display:inline-flex;align-items:center;gap:7px;background:transparent}
.personal-space-document .space-board .space-message-tools button[data-space=reply]{color:#a24933}
.personal-space-document .space-board .space-message-tools svg{width:16px;height:16px}
.personal-space-document .space-board .space-remove-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:8px;padding:12px 0;border:0;background:none;font-size:13px;color:#756254;animation:friends-surface-in .2s both}
.personal-space-document .space-remove-confirm span{flex-basis:100%}
.personal-space-document .space-board .space-remove-confirm button{font-size:13px;min-height:44px;padding:8px 0}
body[data-ui-shell="community"] .personal-space-document .space-board .space-message-target{background:linear-gradient(90deg,#edddcb55,transparent);box-shadow:inset 2px 0 #a24933;padding-inline:16px}
.personal-space-document .space-board .space-login span{font-size:13px;color:#8b786a;line-height:1.8}
.personal-space-document .space-board .space-empty{padding:28px 0}
.personal-space-document .space-board .space-empty>span{font-size:19px;color:#756254}
.personal-space-document .space-board .space-more{font-size:13px;min-height:44px}
.forum-friends-page :is(a,button),.personal-space-document .space-board :is(a,button){touch-action:manipulation;transition:color .2s,background .2s,transform .18s}
body[data-ui-shell="community"] :is(.forum-friends-page,.personal-space-document .space-board) :is(a,button):active{transform:scale(.98)}
:is(.friend-roster-search,.friend-roster-no-match,.forum-friends-page,.personal-space-document .space-board) :is(a,button):focus-visible{outline:2px solid #a2493380;outline-offset:4px}
.friend-roster-search .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body[data-ui-shell="community"] :is(.friend-roster [hidden],.friend-roster-search [hidden],.friend-roster-no-match[hidden]){display:none!important}
@keyframes friends-surface-in{from{opacity:.15;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(hover:hover){
 .forum-friends-page .friend-identity:hover>svg{opacity:1;transform:translate(2px,-2px)}
 body[data-ui-shell="community"] .forum-friends-page .friend-card:hover{background:linear-gradient(90deg,#edddcb22,transparent);transform:none;box-shadow:none}
 .forum-friends-page .friend-hero .button:hover,.forum-friends-page .friend-card .button:hover{transform:translateY(-2px)}
 .personal-space-document .space-compose-invite:hover .space-invite-action svg{transform:rotate(90deg)}
 .personal-space-document .space-invite-action svg{transition:transform .25s ease}
}
@media(max-width:750px){
 body[data-ui-shell="community"] .forum-friends-page .friend-hero{padding:14px 0 24px;margin-bottom:16px;align-items:flex-start;position:relative}
 .forum-friends-page .friend-hero>div{width:100%}
 .forum-friends-page .friend-hero h1{font-size:34px;max-width:72%;margin-top:10px}
 .forum-friends-page .friend-hero>.friend-art{position:absolute;right:0;top:18px;width:108px;opacity:.45;pointer-events:none}
 .forum-friends-page .friend-hero p{font-size:13px;margin-bottom:18px}
 body[data-ui-shell="community"] .forum-friends-page .friend-tabs{display:flex;gap:20px}
 body[data-ui-shell="community"] .forum-friends-page .friend-tabs>button{font-size:13px;min-height:50px;padding:12px 0;gap:6px}
 .forum-friends-page .friend-tabs>button>svg{display:none}
 .forum-friends-page .friend-scope-note{font-size:13px;max-width:none}
 .friend-roster-tools{gap:12px;margin-top:12px;flex-wrap:wrap}
 .friend-roster-search{flex-basis:220px}
 .friend-roster-count{font-size:11px}
 body[data-ui-shell="community"] .forum-friends-page .friend-card{grid-template-columns:minmax(0,1fr);padding:22px 0;gap:5px}
 .forum-friends-page .friend-identity strong{font-size:18px}
 .forum-friends-page .friend-identity small{font-size:12px}
 body[data-ui-shell="community"] .forum-friends-page .friend-card blockquote{margin:8px 0 0 64px!important;font-size:14px}
 body[data-ui-shell="community"] .forum-friends-page .friend-card footer{grid-column:1;grid-row:4;gap:10px;margin-top:11px;justify-content:flex-start}
 body[data-ui-shell="community"] .forum-friends-page .friend-card footer .button{font-size:13px;padding:9px 14px}
 .forum-friends-page .friend-card footer .friend-visit{margin-right:auto}
 body[data-ui-shell="community"] .personal-space-document .space-board .space-section-title h2{font-size:21px!important}
 body[data-ui-shell="community"] .personal-space-document .space-compose-invite{gap:10px;flex-wrap:wrap}
 .personal-space-document .space-invite-copy strong{font-size:15px}
 .personal-space-document .space-invite-copy small{font-size:12px}
 .personal-space-document .space-invite-action{font-size:12px}
 body[data-ui-shell="community"] .personal-space-document .space-board .space-message{gap:12px;padding:24px 0}
 body[data-ui-shell="community"] .personal-space-document .space-board .space-message+.space-message::before{left:46px}
 body[data-ui-shell="community"] .personal-space-document .space-board .space-avatar{width:34px;height:34px;flex-basis:34px}
 .personal-space-document .space-board .space-message-avatar{flex-basis:34px}
 .personal-space-document .space-board .space-message header a{font-size:15px}
 .personal-space-document .space-board .space-message time{font-size:11px}
 .personal-space-document .space-board .space-message-body{font-size:16px;line-height:1.85}
 body[data-ui-shell="community"] .personal-space-document .space-board .space-owner-reply{padding:12px;margin-top:12px}
 .personal-space-document .space-board .space-owner-reply p{font-size:14px}
 .personal-space-document .space-board .space-reply-meta{gap:4px 12px;flex-wrap:wrap}
 .personal-space-document .space-board .space-compose-footer{gap:8px;flex-wrap:wrap}
 .personal-space-document .space-board .space-compose-footer>span{font-size:11px}
 body[data-ui-shell="community"] .personal-space-document .space-message-filters{gap:20px!important}
 body[data-ui-shell="community"] .personal-space-document .space-message-filters button{font-size:13px}
}
@media(prefers-reduced-motion:reduce){:is(.forum-friends-page,.personal-space-document .space-board,dialog[data-kind="friend-dialog"]) *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Keep the selected category visible when a narrow roster repaints. */
body[data-ui-shell="community"] .forum-friends-page .friend-tabs{overscroll-behavior-inline:contain;scroll-padding-inline:4px}
body[data-ui-shell="community"] .forum-friends-page .friend-tabs>button:focus-visible{outline-offset:-3px}
.forum-friends-page .friend-identity strong,.personal-space-document .space-board .space-message header a{min-width:0;overflow-wrap:anywhere}
.forum-friends-page .friend-uid{overflow-wrap:anywhere}
