*{box-sizing:border-box}body{margin:0;background:#e7eef1;color:#334b59;font:15px/1.55 Verdana,"PingFang TC","Microsoft JhengHei",sans-serif}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a,button.link{color:#255b88}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e99427;outline-offset:3px}button:disabled{cursor:wait;opacity:.65}.frame{max-width:1080px;margin:22px auto 30px;background:white;border:1px solid #9aafbc;box-shadow:0 2px 8px #3f5b6520}.utility{height:30px;padding:3px 26px;display:flex;align-items:center;justify-content:space-between;background:#eff5f7;border-bottom:1px solid #c7d7df;font-size:12px;color:#586c78}.utility i{display:inline-block;width:7px;height:7px;background:#74a652;border:1px solid #648c46;margin:0 5px 1px 0}.utility button,.breadcrumb button{background:none;border:0;color:#315e7f;padding:0}.mast{min-height:105px;display:flex;align-items:center;padding:0 27px;gap:24px;background:url('/art/sky.svg') right bottom/auto 95% no-repeat,linear-gradient(#c9e1ef,#f1f9fb);border-top:1px solid white}.brand{display:inline-flex;align-items:baseline;gap:8px;line-height:1;text-decoration:none;position:relative;white-space:nowrap}.funp-logo{display:block;width:144px;height:auto}.brand-name{transform:translateY(-.42em);font-size:27px;font-weight:900;color:#4a5d65;letter-spacing:-1.5px;text-shadow:1px 1px white;position:relative}.tagline{color:#526f83;letter-spacing:.13em;font-size:13px;border-left:1px solid #9fb9c7;padding-left:20px;margin-top:11px}.bar{display:flex;align-items:stretch;padding:0 20px;background:linear-gradient(#4c789b,#315c7f);border-block:1px solid #315574}.bar button{border:0;border-right:1px solid #7793aa;background:none;color:#fff;padding:10px 17px;font-weight:bold;font-size:14px}.bar .active{background:linear-gradient(#f9fbf6,#e7eee5);color:#344e62;border-top:3px solid #e36128;padding-top:7px}.bar .postnav{margin-left:auto;color:#fff3c8;border:0}.categories{display:flex;gap:5px;flex-wrap:wrap;background:#eaf1f4;padding:7px 25px;border-bottom:1px solid #afc4d0}.categories button,.periods button{border:0;color:#43657f;background:none;padding:3px 10px;font-size:13px}.categories .on{background:#d6e4ea;border:1px solid #a9c1cc;padding:2px 9px;font-weight:bold;color:#264b62}.frame main,.frame #storyPage:not([hidden]){padding:20px 25px 30px;display:grid;grid-template-columns:minmax(0,1fr) 244px;gap:25px}.breadcrumb{color:#677e88;font-size:12px;margin:0 0 10px}.breadcrumb span{margin-left:5px}.sectionTitle{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #83a6ba;padding:0 0 8px}h1{font-size:24px;letter-spacing:1px;color:#273f51;line-height:1.3;margin:0}.feedIcon{color:#839cac}.periods{display:flex;gap:3px;background:#f4f8fa;border-bottom:1px solid #c8d7df;min-height:36px}.periods .on{color:#a3522e;font-weight:bold}.row{display:grid;grid-template-columns:160px minmax(0,1fr) 56px;gap:14px;padding:17px 0 16px;border-bottom:1px dotted #acbec7}.thumb img{display:block;width:100%;border:1px solid #a4b6bf;padding:3px;background:white}.entry h2{margin:0 0 5px;font-size:17px;line-height:1.4}.entry a{text-decoration:none;color:#235783}.entry a:hover,.ranklink:hover{text-decoration:underline}.meta{font-size:11px;color:#687d86}.entry p{font-size:13px;color:#455963;margin:6px 0}.chip{background:none;border:none;color:#51728a;padding:0 6px 0 0;font-size:12px}.actions{display:flex;align-items:center;flex-direction:column;gap:6px}.push{padding:0;min-width:49px;background:#f1f6fa;border:1px solid #9eb6c5;border-radius:3px;color:#2e5979;overflow:hidden}.push.yes{background:#eef2da;color:#4d6738}.save{border:0;background:none;color:#697a7f;font-size:12px;padding:1px}.box{border:1px solid #b8cbd5;margin-bottom:14px;background:#fbfdfe}.box h2{margin:0;padding:6px 10px;border-bottom:1px solid #bbced9;background:linear-gradient(#eff6f9,#dce9ee);color:#365970;font-size:14px}.box h2 span{color:#bd842e;margin-right:5px}.inner{padding:12px}.welcome{background:#fcfcf5}.welcome .inner strong{font-size:15px;color:#4f5d3d}.welcome p{font-size:13px;margin:5px 0 12px}.google,.formButton,#search button,.pagesBtn{border:1px solid #9fb5c2;background:linear-gradient(#fff,#e3edf2);color:#2e4e66;padding:5px 11px;border-radius:3px}.google{display:flex;align-items:center;gap:9px;justify-content:center;width:100%;font-size:13px}.google span{font:bold 18px Arial;color:#3974bd}.tags{display:flex;align-items:baseline;gap:7px 10px;flex-wrap:wrap}.chip{font-size:14px;padding:0;text-decoration:none;overflow-wrap:anywhere}.chip:hover{text-decoration:underline}.chip:first-child{font-weight:bold;font-size:18px;color:#396e92}#ranks{list-style:none;padding:0 12px}.rank-item{padding:6px 0;display:flex;gap:7px;align-items:flex-start}.ranklink{font-size:13px;text-decoration:none}.rank-score{text-decoration:none;flex:none;align-self:flex-start;background:#e4edf2;border:1px solid #bdced8;font:bold 11px/17px Verdana;color:#59748a;min-width:19px;padding:0 3px;text-align:center;white-space:nowrap}.rank-title{min-width:0;overflow-wrap:anywhere}#search{display:flex;gap:4px;padding:11px}#search input{min-width:0;width:100%;border:1px solid #a7bbc6;padding:4px;font-size:12px}#search button{font-size:12px;white-space:nowrap;padding:4px 7px}footer{border-top:1px solid #beced7;background:#eef4f6;display:flex;gap:12px;padding:10px 25px;color:#627986;font-size:12px}.empty{padding:30px 10px;color:#6e7d82;font-size:14px}.empty button{margin:8px}#pages{padding:10px 0}.pagesBtn{font-size:12px;margin-right:5px}.pagesBtn[aria-current]{font-weight:bold;background:#dae8ef}dialog{width:min(445px,94vw);border:1px solid #7696aa;box-shadow:0 6px 30px #20384b55;color:#374f5c;padding:22px}dialog::backdrop{background:#223a4b66}dialog h2{font-size:20px;color:#31566e;margin:0 20px 10px 0}dialog p{font-size:14px}#close{float:right;border:0;background:none;font-size:21px;color:#607b8b}dialog label{display:block;font-size:13px;margin:9px 0}dialog input,dialog textarea,dialog select{display:block;width:100%;border:1px solid #9fb5c2;padding:6px}dialog textarea{min-height:64px}.error{color:#9a402c}.formButton{font-weight:bold}#status:not(:empty){position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:#224761;color:white;padding:8px 16px;border-radius:4px}.hidden,[hidden]{display:none!important}
@media(max-width:760px){.frame{margin:0 auto;border-inline:0}.frame main,.frame #storyPage:not([hidden]){grid-template-columns:minmax(0,1fr);padding:14px;gap:18px}.frame aside{display:grid;grid-template-columns:1fr 1fr;gap:9px}.box{margin:0}.mast{padding-inline:15px;background-size:auto 68%,auto}.bar{padding:0}.bar button{padding:9px 10px;font-size:13px}.categories{padding:6px 10px;gap:2px}.row{grid-template-columns:clamp(96px,19vw,136px) minmax(0,1fr) 47px;gap:9px}.thumb img{margin-top:3px}.funp-logo{width:clamp(90px,23vw,128px)}.tagline{display:none}.entry h2{font-size:16px}.utility{padding-inline:14px}.categories button{padding-inline:7px}.push{min-width:43px}}
@media(max-width:430px){.bar button{padding-inline:7px;font-size:12px}.row{grid-template-columns:clamp(80px,23vw,98px) minmax(0,1fr) 43px;gap:7px}.entry p{font-size:12px}.entry h2{font-size:15px}.frame aside{grid-template-columns:1fr}.mast{background-size:auto 52%,auto}h1{font-size:21px}}

#previewStatus{color:#486472;font-size:.85rem;line-height:1.45;margin:3px 0 10px}
.edition-mark {
  display: block;
  width: clamp(74px, 12vw, 110px);
  height: auto;
  margin-left: auto;
  border: 3px solid #fff;
  outline: 1px solid #2d2922;
  box-shadow: 2px 3px 0 #27344360;
  transform: rotate(-3deg);
}
footer { align-items: center; }
.edition-label {
  padding: 1px 8px;
  border-inline: 4px solid #de5924;
  background: #fff;
  color: #211e19;
  font-weight: bold;
  letter-spacing: .08em;
}
@media (max-width:430px) {
  .mast { gap: 12px; }
}
.postSteps{display:flex;list-style:none;margin:0 0 16px;padding:0;border-bottom:1px solid #b8cbd5}
.postSteps li{flex:1 1 0;display:flex;align-items:center;justify-content:center;gap:5px;padding:6px 0 8px;color:#586d78;font-size:13px;white-space:nowrap;border-bottom:3px solid transparent}
.postSteps li span{display:inline-grid;place-items:center;width:20px;height:20px;border:1px solid #a7bbc6;border-radius:50%;font:bold 12px Verdana}
.postSteps li[aria-current]{border-color:#397195;color:#234f6e;font-weight:bold}
.postSteps li[aria-current] span{background:#315e7b;border-color:#315e7b;color:white}
.postSteps li.done span{background:#e5eff3;color:#315e7b}
.postReview{border-left:3px solid #8faa72;background:#f4f7ef;padding:8px 11px;overflow-wrap:anywhere}
.postReview small,.postReview strong,.postReview span{display:block}
.postReview small{color:#526243}.postReview span{font-size:12px;color:#516575}
.postReview p{margin:5px 0 0;font-size:13px;white-space:pre-line}
.postNav{display:flex;align-items:center;gap:12px;border-top:1px solid #d2dfe5;margin-top:17px;padding-top:12px}
#postBack{border:0;background:transparent;color:#315e7b;padding:5px 0;text-decoration:underline}
#postNext{margin-left:auto}
#formError:empty{display:none}
.push button,.push .vote-count{display:block;width:100%;text-align:center;border:0;background:transparent;color:inherit}
.push .vote-count{padding:0 3px;font:bold 22px/30px Georgia,serif;text-decoration:underline dotted 1px;text-underline-offset:3px}
.push .vote-action{min-height:24px;padding:2px 4px;border-top:1px solid #bdcdd6;background:linear-gradient(#fff,#d7e6ed);font-size:11px}
.push .vote-count:hover{background:#e1edf4}
.push :focus-visible{outline-offset:-3px}
.category-help{font-size:12px;color:#526879;line-height:1.5;margin:-4px 0 10px}
dialog:has(#submitStory){width:min(520px,94vw)}
@media(max-width:520px){dialog:has(#submitStory){max-width:calc(100% - 16px);padding-inline:14px}}
#postCover{margin:8px 0 12px}
#postCover figcaption{font-size:12px;color:#526879;margin-bottom:4px}
#postCover img{display:block;width:100%;height:auto;max-height:min(270px,45dvh);object-fit:contain;border:1px solid #acbdc5;background:#f3f6f7}
#postCover img.videoCover{aspect-ratio:16/9;object-fit:cover}
.thumb img[data-remote-thumb]{aspect-ratio:4/3;object-fit:cover}

.forum-link{margin-inline-start:auto;display:inline-flex;align-items:center;gap:6px;padding:3px 8px;color:#254c60;background:#fff;border:1px solid #a9bcc6;border-radius:3px;text-decoration:none;font-weight:bold;white-space:nowrap}
.forum-link:hover,.forum-link:focus-visible{color:#242525;border-color:#de5924}
.forum-open main,.forum-open .bar,.forum-open .categories,.forum-open .forum-link{display:none}
#forum{padding:22px clamp(16px,4vw,50px) 36px;min-height:350px;overflow-wrap:anywhere}
.forum-nav{display:flex;gap:18px;margin-bottom:20px}.forum-nav a,.forum-list a{color:#245470}.forum-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:20px;border-bottom:2px solid #282828}
#forum h1{margin:4px 0 8px;font-size:clamp(25px,4vw,34px);line-height:1.25;color:#212729}#forum h2{font-size:18px}#forum small{border-left:5px solid #ef6327;padding-left:7px;font-weight:bold;letter-spacing:.08em}#forum p{margin:6px 0}
.forum-head button{flex:none}.forum-list{padding:0;list-style:none}.forum-list li,.forum-reply{padding:14px 0;border-bottom:1px dotted #a9bac1}.forum-list a{font-size:18px;font-weight:bold}.forum-list span{float:right;font-size:13px}.forum-meta{font-size:13px;color:#536976}.forum-empty{padding:28px 0}.forum-topic{border-bottom:2px solid #282828;padding-bottom:18px}.forum-body{white-space:pre-wrap}.forum-reply+.formButton{margin-top:18px}.forum-form{margin:18px 0;padding:16px;border:1px solid #acbec7;background:#f5f8f8}.forum-form label{display:block;font-weight:bold;margin-bottom:12px}.forum-form input,.forum-form textarea{display:block;box-sizing:border-box;width:100%;font:inherit;padding:8px;border:1px solid #8da8b8}.forum-form textarea{resize:vertical}.forum-cancel{background:none;border:0;color:#365970;text-decoration:underline}
@media(max-width:520px){.forum-head{align-items:flex-start;flex-direction:column}footer{padding-inline:12px;gap:8px}}

.utility nav{display:flex;align-items:center;gap:14px}
dialog:has(#categoryEditor){width:min(480px,94vw)}
.category-row{display:grid;grid-template-columns:minmax(60px,1fr) auto auto auto;align-items:center;gap:6px;padding:7px 0;border-bottom:1px dotted #b3c4cd}
.category-row label{display:flex;align-items:center;gap:3px;white-space:nowrap}.category-row input[type=checkbox]{width:auto}.category-row small{grid-column:1/-1;color:#536976}
.category-row button,.category-add{padding:5px 8px;border:1px solid #acbfca;border-radius:3px;background:#f3f7f9;color:#254e65}
.category-row button:disabled{opacity:.4}.category-add{margin-top:12px}.category-row [data-remove]{grid-column:1/-1;justify-self:start}

.post-categories{margin:12px 0;padding:10px 12px;border:1px solid #adc1cd}
.post-categories legend{font-weight:bold}
.post-categories p{margin:0 0 6px}
.post-categories div{display:flex;flex-wrap:wrap;gap:6px}
.post-categories label{display:inline-flex;align-items:center;gap:5px;margin:0;padding:5px 8px;border:1px solid #b7c8d1;border-radius:3px;cursor:pointer}
.post-categories input{width:auto;margin:0}
.post-categories label:has(:checked){background:#e3f0f5;border-color:#5086a1}
.post-categories label:has(:disabled){opacity:.55}

.admin-list{padding:0;list-style:none}
.admin-list li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #d2dfe5}
.admin-list span{color:#536976;font-size:13px}
.admin-list button{margin-inline-start:auto}

.board-settings{border:1px solid #b5c7ce;margin:14px 0;background:#f4f8f9;padding:8px 12px}
.board-settings summary{cursor:pointer;color:#29556b;font-weight:bold}
.board-settings form{margin-top:10px}
.board-settings input{display:block;max-width:100%;padding:6px;margin:4px 0}
.board-settings [role=alert]{color:#9b331c}
.pin-badge{display:inline-block;vertical-align:middle;background:#ffe4d2;color:#73331c;padding:1px 5px;margin-inline-end:7px;font-size:12px;border:1px solid #d9a086;border-radius:2px}

.story-open main,.story-open .bar,.story-open .categories{display:none}
#storyPage > * {grid-column:1}
.frame #storyPage:not([hidden]) {row-gap:0}
#storyPage .story-number {font-size:14px;margin:0;color:#536976}
#storyPage section > h2 {font-size:19px;margin:20px 0 8px}
.story-source {font-size:13px;color:#536976;margin-top:8px}
#storyPage {overflow-wrap:anywhere}
.discussion-link{display:block;text-align:center;font-size:13px;white-space:nowrap}

.forum-actions {display:flex; flex-wrap:wrap; gap:.5rem}
.status-badge {display:inline-block; margin-right:.5em; padding:.15em .5em; border:1px solid #a6b5bd; border-radius:.2em; color:#344955; background:#eef2f3; font-size:.8rem; vertical-align:middle}

.forum-topic-row {display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:3px 12px}
.forum-topic-title {grid-area:1/1; overflow-wrap:anywhere}
.forum-topic-row > .pin-badge {grid-area:1/2; justify-self:end; margin-inline-end:0; white-space:nowrap}
.forum-topic-row > .forum-meta {grid-area:2/1; overflow-wrap:anywhere}
.forum-topic-row > span {grid-area:2/2; justify-self:end}

.story-labels {display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 10px; margin-top:6px}
.entry .story-label {max-width:100%; padding:0; border:0; background:none; color:#315f78; font:inherit; font-size:13px; line-height:1.5; overflow-wrap:anywhere; text-align:start}
.entry :is(a,button).story-label:hover {text-decoration:underline}
.entry span.story-label {color:#586e78}
.tag-editor,.content-editor {margin-top:10px}
.tag-editor summary,.content-editor summary {cursor:pointer; color:#255b88}

.row .meta {display:flex;align-items:center;flex-wrap:wrap;gap:0 4px}
.row .publication-age {white-space:nowrap}
.member-avatar {vertical-align:middle; border-radius:50%; margin-inline-end:5px; object-fit:cover; background:#e2eeef}
#memberMenuLabel .member-avatar {width:20px;height:20px}
.avatar-preview {display:flex;align-items:center;gap:12px;margin-bottom:12px}
.avatar-preview img {border-radius:50%;background:#e2eeef}
#avatarForm fieldset {margin:0 0 14px;border:1px solid #bdcdd6}
.avatar-choices {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
#avatarForm .avatar-choices label {display:grid;justify-items:center;position:relative;margin:0;padding:4px;border:2px solid transparent;border-radius:5px;cursor:pointer;font-size:13px}
.avatar-choices input {position:absolute;opacity:0}
.avatar-choices label:has(:checked) {background:#dfefee;border-color:#247265 !important}
.avatar-choices label:focus-within {outline:2px solid #255b88}

.avatar-crop {margin:12px 0}
.crop-stage {position:relative;max-width:100%;margin:0 auto 10px;overflow:hidden;background:#e3e9ec;user-select:none}
.crop-stage > img {display:block;width:100%;height:auto;pointer-events:none}
.crop-square {position:absolute;border:2px solid white;box-shadow:0 0 0 1px #204653,0 0 0 500px #08233380;cursor:move;touch-action:none}
.crop-square:focus-visible {outline:2px solid #f49a3c;outline-offset:-4px}
.crop-handle {position:absolute;bottom:0;right:0;width:24px;height:24px;cursor:nwse-resize;background:linear-gradient(135deg,transparent 55%,white 56%,white 68%,#245470 69%)}
#avatarForm .avatar-crop input[type=range] {padding:0;accent-color:#247265}

.utility-menu {position:relative}
.utility-menu summary {display:flex;align-items:center;gap:3px;min-height:26px;padding:1px 5px;cursor:pointer;color:#315e7f;list-style:none}
.utility-menu summary::-webkit-details-marker {display:none}
.utility-menu summary::after {content:'';margin-left:3px;border:4px solid transparent;border-bottom:0;border-top-color:currentColor}
.utility-menu[open] summary,.utility-menu summary:hover {background:#deebef}
.utility-menu summary:focus-visible {outline:2px solid #e99427;outline-offset:-2px}
.utility-options {position:absolute;z-index:10;inset-inline-end:0;top:100%;min-width:9rem;padding:4px;background:#fff;border:1px solid #a4bac4;box-shadow:0 3px 8px #334b5930}
.utility-options button {display:block;width:100%;padding:7px 10px;text-align:start;white-space:nowrap}
.utility-options button:hover,.utility-options button:focus-visible {background:#edf5f7}
@media(max-width:520px){.utility {height:auto;min-height:30px;flex-wrap:wrap;gap:3px}.utility nav {margin-left:auto;gap:4px}}

.board-row {display:flex;align-items:center;justify-content:space-between;gap:6px 20px;flex-wrap:wrap;overflow-wrap:anywhere}
.board-activity {margin-inline-start:auto;text-align:end;font-size:13px;color:#536976}
.forum-list .latest-reply {font:inherit;text-decoration:none}
.forum-list .latest-reply:hover {text-decoration:underline}
.latest-reply .member-avatar {width:20px;height:20px}

.utility-options a {display:block;padding:7px 10px;text-align:start;text-decoration:none;white-space:nowrap}
.utility-options a[hidden],#socialNotice[hidden],#socialNotice:empty {display:none}
.utility-options a:hover,.utility-options a:focus-visible {background:#edf5f7;text-decoration:underline}
.member-link {display:inline-flex;align-items:center;gap:4px;text-decoration:none}
.member-link:hover,.member-link:focus-visible {text-decoration:underline}
.social-open main,.social-open .bar,.social-open .categories {display:none}
#social {padding:clamp(16px,4vw,40px);min-height:400px;color:#344e5d}
.social-nav {display:flex;flex-wrap:wrap;gap:1em;margin-bottom:1.8em}
#social h1 {margin:.25em 0 .65em;color:#233d49}
#social h2:not(.entry h2) {font-size:1.12rem;border-bottom:1px solid #b2c9d5;padding-bottom:.4em;margin:1.6em 0 .5em}
.social-profile {display:flex;align-items:center;gap:14px}
.social-profile>.member-avatar {width:64px;height:64px}
.social-actions {padding:12px 0}
.social-list,.messages {list-style:none;padding:0}
.social-list li {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;border-bottom:1px dotted #abc1ce;padding:12px 0}
.social-list small,.messages small,.social-empty {color:#536e7e}
.social-preview {display:block;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;max-width:min(70vw,480px)}
.messages {max-width:760px;max-height:48vh;overflow:auto;overflow-anchor:none}
.messages li {width:fit-content;max-width:88%;background:#f0f5f7;border-radius:8px;padding:9px 14px;margin-bottom:10px}
.messages .sent {margin-left:auto;background:#e6f0f6}
.messages p {white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0}
#social textarea {display:block;width:min(100%,760px);margin:6px 0}
#social [role=alert] {color:#932d20}
.report-link {font-size:.8em}
#reportQueue details {padding:.7em 0;border-top:1px dotted #b6c9d4}
#reportQueue summary {cursor:pointer;font-weight:bold}
.report-detail,.system-notices p {white-space:pre-wrap;overflow-wrap:anywhere}
.report-state {padding:.5em .8em;background:#fff5da}

/* The member directory uses the same blue ink and orange tab as the main navigation. */
#social:has(.friends-nav) {padding:0;min-height:0}
.friends-nav {display:flex;align-items:stretch;padding:0 clamp(14px,3vw,30px);gap:4px;border-block:1px solid #b9cbd4;background:#eef4f6}
.friends-nav a {display:flex;align-items:center;padding:9px 13px;color:#48677a;font-size:14px;text-decoration:none}
.friends-nav a:first-child {padding-left:0;margin-right:8px}
.friends-nav a[aria-current] {background:white;color:#234b67;font-weight:700;box-shadow:inset 0 -3px #dd672c}
.friends-nav a:hover {color:#1b5074;text-decoration:underline}
.friend-book,.mail-book {padding:24px clamp(16px,3vw,30px) 30px}
#social :is(.friend-book,.mail-book) h1 {margin:0 0 18px;line-height:1.25;font-size:26px}
.friend-columns {display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,27%);align-items:start;gap:22px}
.friend-directory {border:1px solid #b7cbd6;min-width:0}
:is(.friend-filters,.mail-tabs,.profile-tabs) {display:flex;background:#edf3f6;border-bottom:1px solid #bdced8}
:is(.friend-filters,.mail-tabs,.profile-tabs)>:is(button,a) {display:flex;text-decoration:none;line-height:1.55;align-items:center;gap:5px;padding:10px 13px;color:#4c6778;border:0;border-right:1px solid #cbd9e1;background:none;font-size:14px}
:is(.friend-filters,.mail-tabs,.profile-tabs)>:is([aria-pressed=true],[aria-current=page]) {background:#fff;color:#234b67;box-shadow:inset 0 3px #527d98;font-weight:bold}
:is(.friend-filters,.mail-tabs,.profile-tabs)>:is(button,a)>:is(span,b) {color:#345568;background:#dae6ec;border-radius:3px;padding:0 5px;font:12px/18px Verdana,sans-serif}
.friend-empty {padding:24px 16px 26px;text-align:center;color:#2e5066}
.friend-empty img {display:block;margin:0 auto 7px}
.friend-empty strong {display:block;font-size:17px}
.friend-empty p {margin:4px auto 0;max-width:32em;color:#536d7a;font-size:14px}
.friend-rows {list-style:none;margin:0;padding:0 14px}
.friend-rows li {display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:14px 0}
.friend-rows li+li {border-top:1px dotted #b5c9d5}
.friend-rows .member-link {gap:8px;font-weight:bold}
.friend-rows .member-avatar {width:32px;height:32px}
.friend-rows .formButton {display:inline-block;text-decoration:none;font-size:13px}
.friend-rows [data-social=remove],.friend-rows [data-social=decline] {background:none;border-color:transparent;font-weight:normal}
.friend-search {padding:15px;border:1px solid #b7cbd6;border-top:3px solid #527d98;background:#f3f8fa}
#social .friend-search h2 {margin:0 0 12px;border:0;padding:0;font-size:17px;color:#2f536b}
.friend-search>label {display:block;font-size:13px;color:#526b79;margin-bottom:3px}
.friend-search input {width:100%;min-width:0;padding:7px 9px;border:1px solid #95adba;background:white;border-radius:2px}
.friend-search button {margin-top:10px;padding:6px 12px;border:1px solid #2e5875;border-radius:2px;background:#356686;color:white;font-weight:bold}
.friend-search button:hover {background:#254e6a}
#social:has(.friends-nav)>:is(h1,p,button):not([role=alert]) {margin-inline:24px}
#social:has(.friends-nav)>[role=alert]:empty {display:none}
@media(max-width:680px){
 .friend-columns {grid-template-columns:1fr;gap:14px}
 .friend-search {grid-row:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;align-items:end}
 #social .friend-search h2 {grid-column:1/-1;margin:0}
 .friend-search>label {position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
 .friend-search button {margin:0}
 .friends-nav a {padding:8px;font-size:13px}
 :is(.friend-filters,.mail-tabs,.profile-tabs)>:is(button,a) {flex:1;justify-content:center;padding:9px 4px}
}

.brand-king {display:inline-block;position:relative}
.brand-crown {position:absolute;left:50%;bottom:100%;width:.86em;height:auto;transform:translateX(-50%);pointer-events:none}

.profile-book {padding:24px clamp(16px,3vw,30px) 30px}
.profile-identity {display:flex;gap:14px;align-items:center;padding:0 0 18px;border-bottom:2px solid #9bb7c8}
.profile-identity>.member-avatar {width:48px;height:48px;flex:none;margin:0}
.profile-name {min-width:0}
.profile-name small {color:#536c79;font-size:12px}
#social .profile-name h1 {margin:0;font-size:clamp(21px,3vw,28px);letter-spacing:0;overflow-wrap:anywhere}
.profile-controls {margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.profile-controls .formButton {text-decoration:none;white-space:nowrap}
.profile-controls [data-social=remove],.profile-controls [data-social=decline] {font-weight:normal;background:white}
.profile-columns {display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:22px;align-items:start;margin-top:20px}
.profile-stories,.profile-sidebar {min-width:0}
.profile-tabs {border:1px solid #b7cbd6;flex-wrap:wrap}
.profile-tabs>a {white-space:nowrap}
.profile-pages {display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px;font-size:13px}
.profile-pages a {text-decoration:none;padding:4px 8px}
#social .profile-sidebar .box>h2 {font-size:14px;margin:0;padding:8px 12px;border-bottom:1px solid #bbced9}
.profile-sidebar .box {margin:0 0 16px}
.profile-tags,.profile-friends {list-style:none;padding:6px 12px;margin:0}
.profile-friends li+li {border-top:1px dotted #c5d6df}
.profile-tags {display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;padding:14px 12px}
.profile-tags li {max-width:100%}
.profile-tags a {display:block;line-height:1.5;padding:2px 0;text-decoration:none;overflow-wrap:anywhere;color:#396e92;font-weight:600}
.profile-tags a:hover {text-decoration:underline;color:#234b67}
.profile-friends li {padding:7px 0}
.profile-friends .member-link {font-size:13px;max-width:100%;overflow-wrap:anywhere}
.profile-friends .member-avatar {width:28px;height:28px;flex:none}
.profile-side-empty {font-size:13px;margin:0;padding:14px 12px;color:#607985}
.profile-manage-friends {display:block;border-top:1px solid #d7e3e9;padding:8px 12px;font-size:13px}
.profile-more-friends summary {padding:8px 12px;cursor:pointer;color:#315e7f;font-size:13px}
.profile-sidebar .box h2 .profile-friend-count {font-weight:normal;font-size:12px;color:#607985;margin-left:4px}
@media(max-width:900px){
 .profile-columns {grid-template-columns:minmax(0,1fr)}
 .profile-sidebar {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
}
@media(max-width:480px){
 .profile-sidebar {grid-template-columns:minmax(0,1fr);gap:0}
}
.profile-blank {margin:10px 0 0;background:#f3f7f9;padding:14px;color:#4e6877}
@media(max-width:600px){
 .profile-identity {flex-wrap:wrap;gap:8px 12px}
 .profile-controls {flex-basis:100%;justify-content:flex-start}
}

.mail-tabs {border:1px solid #b7cbd6;border-bottom-color:#bdced8}
.notice-pane {border:1px solid #bdced8;border-top:0}
.mail-contact b,.mail-notices b {background:#ffe9c7;color:#77450c;font-size:12px;padding:1px 5px;border-radius:3px}
.mail-columns {display:grid;grid-template-columns:minmax(180px,30%) minmax(0,1fr);border:1px solid #bdced8;border-top:0}
.mail-people {min-width:0;border-right:1px solid #bdced8;background:#f4f8fa}
#social .mail-people h2 {font-size:14px;margin:0;padding:10px 14px;border-bottom:1px solid #cad8de}
.mail-people ul,.mail-notices {list-style:none;padding:0;margin:0}
.mail-contact {display:flex;align-items:center;gap:8px;padding:10px 12px;text-decoration:none;border-bottom:1px solid #d8e3e9}
.mail-contact:hover,.mail-contact[aria-current] {background:#dfeef4}
.mail-contact[aria-current] {box-shadow:inset 3px 0 #df692d}
.mail-contact>span {flex:1;min-width:0}
.mail-contact strong,.mail-contact small {display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mail-contact small,.mail-notices small {font-size:12px;color:#536e7e}
.mail-chat,.notice-pane {padding:14px;min-width:0}
.mail-prompt {text-align:center;padding:28px 8px;color:#536e7e}
.chat-heading {display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid #ccdce5;padding-bottom:8px}
#social .chat-heading h2 {margin:0;padding:0;border:0;font-size:16px}
.chat-heading>a {font-size:13px}
.mail-chat [data-composer] {border-top:1px solid #ccdce5;padding-top:10px}
#social .mail-chat textarea {width:100%;min-height:64px;padding:7px;border:1px solid #a6bcc8}
.mail-chat .messages {max-height:42vh}
.mail-empty,.mail-chat [data-empty] {padding:8px 12px;color:#526c7b}
.mail-notices li {padding:12px 0;border-bottom:1px dotted #acc2ce}
.mail-notices p {margin:4px 0;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:640px){
 .mail-columns {display:block}
 .mail-people {border:0}
 .mail-selected .mail-people,.mail-columns:not(.mail-selected) .mail-chat {display:none}
 .mail-chat,.notice-pane {padding:10px}
}

@media(max-width:480px){
 .friends-nav {flex-wrap:wrap}
 .friends-nav a:first-child {flex-basis:100%;padding-block:6px}
 .friends-nav a:not(:first-child) {flex:1;justify-content:center;padding-inline:5px;white-space:nowrap}
}

/* The reader keeps the original document mounted while site actions update. */
body.reader-open {overflow:hidden}
.reader-open .frame {max-width:none;width:100%;margin:0;border:0;box-shadow:none}
.reader-open .frame>header,.reader-open .frame>footer {display:none}
.reader-open .frame #storyPage:not([hidden]) {display:flex;flex-direction:column;gap:0;padding:0;height:100vh;height:100dvh;min-height:0}
.reader-toolbar {display:flex;align-items:center;gap:18px;flex:none;padding:10px 18px;background:#edf5f8;border-bottom:2px solid #527d98}
.reader-home {white-space:nowrap;text-decoration:none;font-size:14px;font-weight:bold}
.reader-title {flex:1;min-width:0;font-size:16px;letter-spacing:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin:0;line-height:1.5}
.reader-actions {display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.reader-actions button,.reader-actions a {display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:5px 10px;font-size:13px;white-space:nowrap;border:1px solid #a8bfcd;border-radius:3px;background:white;color:#2e5979;text-decoration:none}
.reader-actions button[aria-pressed=true] {background:#eef2da;color:#4d6738;border-color:#adb990}
.reader-actions button[aria-expanded=true] {background:#dcebf3;border-color:#527d98}
.reader-actions .reader-original {color:white;background:#356686;border-color:#2e5875}
.reader-workspace {display:grid;grid-template-columns:minmax(0,1fr);flex:1;min-height:0}
.reader-workspace.has-discussion {grid-template-columns:minmax(0,1fr) clamp(300px,30vw,380px)}
.reader-document {min-width:0;min-height:0;background:white}
.reader-document iframe {display:block;width:100%;height:100%;border:0;background:white}
.reader-document.reader-media {display:flex;background:#142532;overflow:hidden}
.reader-player {width:100%;height:100%;min-width:0;min-height:0;background:#000}
.reader-placeholder {padding:24px;color:#526e7d}
.reader-preview-area {overflow-y:auto;background:#f2f6f8;padding:clamp(20px,4vw,56px)}
.reader-preview {max-width:960px;margin:0 auto;background:white;border:1px solid #bfd0da;box-shadow:0 3px 14px #233e4a0a}
.reader-preview-cover {display:block;width:100%;max-height:420px;object-fit:contain;background:#e5edf1}
.reader-preview-cover[hidden] {display:none}
.reader-preview-content {padding:clamp(20px,3vw,36px)}
.reader-preview-source {margin:0 0 10px;color:#607b8c;font-size:14px;overflow-wrap:anywhere}
.reader-preview h2 {margin:0 0 20px;font-size:clamp(22px,2.3vw,30px);line-height:1.5;color:#244f69;overflow-wrap:anywhere}
.reader-preview-summary {font-size:17px;line-height:1.9;white-space:pre-line;overflow-wrap:anywhere;margin:0 0 24px}
.reader-preview-note {border-left:3px solid #e86b25;padding:2px 16px;margin-bottom:24px;background:#f5f8fa;color:#526e7d;font-size:14px;line-height:1.7}
.reader-preview-note p {margin:8px 0}
.reader-preview-original {display:inline-flex;text-decoration:none;background:#356686;color:white;border:1px solid #2e5875;padding:11px 18px}
.reader-discussion {min-width:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;border-left:1px solid #adc3d0;padding:0 16px 18px;background:#fbfdfe}
.reader-discussion-heading {position:sticky;top:0;background:#fbfdfe;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #bdced8;padding:10px 0;z-index:1}
.reader-discussion-heading h2 {margin:0;font-size:17px;color:#2f536b}
.reader-discussion-heading button {background:none;border:0;color:#526e7d;font-size:24px;min-width:36px;min-height:36px}
.reader-comments .forum-reply {padding:12px 0}
.reader-comments .forum-meta {font-size:12px;line-height:1.8}
.reader-comments .member-link {vertical-align:middle}
.reader-comments .forum-body {font-size:14px;margin:8px 0 0}
.reader-no-comments {font-size:14px;color:#607785;margin:18px 0}
.reader-composer {margin-top:16px;border-top:1px solid #c5d6df;padding-top:14px;font-size:14px}
.reader-composer label {display:block;font-weight:bold}
.reader-composer textarea {display:block;width:100%;resize:vertical;padding:8px;margin:7px 0;border:1px solid #a5bdcc;min-height:80px}
.reader-composer .error:empty {display:none}
.reader-error {margin:0;padding:10px 18px;background:#fff2e9;color:#8b4026;font-size:14px;flex:none}
.reader-retry {align-self:flex-start;margin:8px 18px}
.reader-open #status {z-index:5;max-width:90vw}
@media(max-width:760px){
 .reader-toolbar {flex-wrap:wrap;gap:7px 12px;padding:8px 12px}
 .reader-title {font-size:14px}
 .reader-actions {flex-basis:100%;gap:6px}
 .reader-actions button,.reader-actions a {flex:1;padding:6px 5px;min-height:40px}
 .reader-workspace.has-discussion {grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,48%)}
 .reader-discussion {border-left:0;border-top:2px solid #527d98;padding-inline:12px}
}

/* Provider SDK wrappers fill all available reading space. */
.reader-player .fb-video,.reader-player .fb-video>span,.reader-player .fb-video iframe {display:block!important;width:100%!important;height:100%!important}

/* A dedicated publishing page uses the same masthead and restrained blue rules. */
.bar a.postnav {display:flex;align-items:center;gap:5px;text-decoration:none;padding:10px 17px;font-size:14px;font-weight:bold}
.compose-open main,.compose-open .bar,.compose-open .categories {display:none}
#composePage:not([hidden]) {max-width:800px;margin:0 auto;padding:22px 32px 36px;min-height:460px}
.compose-nav {margin-bottom:22px;font-size:14px}
.compose-heading {margin-bottom:22px}
.compose-heading h1 {font-size:27px;color:#273f51}
.compose-heading p {margin:7px 0 0;color:#607785;font-size:14px}
.publishing-form .postSteps {margin-bottom:24px}
.publishing-form .postSteps li {padding:12px 4px;font-size:14px}
.publishing-form label {display:block;margin:14px 0;color:#365970;font-weight:bold}
.publishing-form input:not([type=checkbox]),.publishing-form textarea {display:block;width:100%;margin-top:6px;padding:10px 12px;background:white;color:#334b59;border:1px solid #9fb5c2;border-radius:3px;font-weight:normal;font-size:16px;line-height:1.5}
.publishing-form textarea {min-height:160px;resize:vertical}
.publishing-form .post-categories label {display:inline-flex;margin:0;font-weight:normal}
.publishing-form .postNav {margin-top:26px;padding-top:18px}
.publishing-form .postReview {padding:16px 18px}
.publishing-form #previewStatus {font-size:13px;color:#607785}
.publishing-form .error:empty {display:none}
.compose-draft {color:#607785;font-size:12px;margin:14px 0 0}
@media(max-width:600px){
 #composePage:not([hidden]) {padding:18px 16px 28px;min-height:400px}
 .compose-heading h1 {font-size:24px}
 .publishing-form .postSteps li {font-size:12px;gap:4px}
 .publishing-form .postSteps li span {width:18px;height:18px;font-size:11px}
 .bar a.postnav {padding-inline:9px;font-size:12px}
}

.content-edit-link {display:inline-block;margin:6px 10px 6px 0;text-decoration:none}
.publishing-form .edit-context {padding:12px 16px;background:#f4f8fa;border-left:3px solid #83a6ba;overflow-wrap:anywhere;margin-bottom:22px}
.publishing-form .edit-context p {margin:5px 0;color:#607785;font-size:13px}
.publishing-form .edit-context strong {display:block}
.publishing-form [data-save-edit] {margin-left:auto}
.publishing-form .edit-notice {font-size:13px;color:#607785}
.publishing-form .edit-conflict {color:#8b4026;background:#fff3e7;padding:12px;border-left:3px solid #d87c3d}

.publishing-form textarea[name=reason] {min-height:80px}

.suggestion-compare {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}
.suggestion-compare section {border:1px solid #b8cbd5;padding:16px;min-width:0;overflow-wrap:anywhere}
.suggestion-compare section:last-child {border-top:3px solid #527d98;background:#f4f8fa}
.suggestion-compare h2 {font-size:15px;color:#526e7d;margin:0 0 16px}
.suggestion-compare h3 {font-size:18px;margin:0 0 10px}
.suggestion-compare p {font-size:14px}
.suggestion-success {background:#f4f7ef;border-left:3px solid #8faa72;padding:18px;margin:24px 0}
.suggestion-success h2 {font-size:20px;margin:0 0 10px}
#composePage>.edit-conflict {background:#fff3e7;padding:16px;border-left:3px solid #d87c3d;overflow-wrap:anywhere}
#suggestionDecision button[value="apply-suggestion"] {margin-left:auto}
@media(max-width:600px){.suggestion-compare {grid-template-columns:1fr;gap:12px}}
