/* Community Progress Hub · independent, responsive, deliberately scoped */
.cph-app{--cph-bg:#f6f8fc;--cph-surface:#fff;--cph-surface-soft:#f9fafc;--cph-ink:#152337;--cph-muted:#768397;--cph-border:#e8ecf3;--cph-accent:#6456d8;--cph-hover:#efedff;--cph-shadow:0 16px 48px rgba(22,34,62,.055);color:var(--cph-ink);background:var(--cph-bg);font:400 14px/1.5 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-sizing:border-box;width:100%;max-width:none;margin:0;padding:18px clamp(14px,2.7vw,36px) 22px;border-radius:22px;isolation:isolate}
.cph-app *, .cph-app *:before,.cph-app *:after{box-sizing:border-box}.cph-app button,.cph-app input,.cph-app textarea,.cph-app select{font:inherit}.cph-app button{cursor:pointer}.cph-app a{color:inherit;text-decoration:none}.cph-app :focus-visible{outline:3px solid #9c96fa;outline-offset:3px}.cph-app [hidden]{display:none!important}
.cph-topbar{display:flex;align-items:center;justify-content:space-between;padding:6px 1px 19px;gap:12px}.cph-wordmark{display:flex;align-items:center;gap:11px;letter-spacing:.13em;font-size:12px;font-weight:850}.cph-wordmark em{font-style:normal;font-weight:500;color:var(--cph-muted)}.cph-mark{width:34px;height:34px;background:#1e2e49;border-radius:11px;color:#fff;display:grid;place-items:center;box-shadow:0 5px 13px #13244926}.cph-topbar-note{font-size:12px;color:var(--cph-muted);display:flex;gap:8px;align-items:center}.cph-live-dot{width:7px;height:7px;background:#39c4a2;border-radius:50%;box-shadow:0 0 0 3px #36c4a21c}
.cph-hero{display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;border-radius:20px;padding:clamp(27px,4vw,52px) clamp(23px,4vw,52px);min-height:270px;color:#fff;background:radial-gradient(circle at 92% -20%,#5868d2aa,transparent 48%),linear-gradient(110deg,#172744,#222d61 62%,#33346f);box-shadow:0 16px 42px #19224f24}.cph-hero:after{content:"";position:absolute;inset:auto -20% -130px 30%;height:170px;transform:rotate(-6deg);background:#7f83e510;filter:blur(25px)}.cph-hero-inner{position:relative;z-index:2;max-width:680px}.cph-overline{font-size:10px;font-weight:760;letter-spacing:.21em;color:#b8befd}.cph-hero h1{margin:9px 0 10px!important;font-size:clamp(28px,3.4vw,47px)!important;line-height:1.14!important;letter-spacing:-.035em;font-weight:780!important;color:#fff!important}.cph-intro{font-size:14px;color:#cbd3ee;max-width:570px;line-height:1.65}.cph-intro p{margin:0}.cph-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.cph-button{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:39px;border-radius:10px;padding:9px 15px;border:1px solid transparent;font-weight:700;font-size:12px;white-space:nowrap;transition:transform .18s,background .18s,border-color .18s}.cph-button:hover{transform:translateY(-2px)}.cph-button-primary{background:#fff;color:#273154!important;box-shadow:0 6px 14px #151c4215}.cph-button-primary:hover{background:#edefff}.cph-button-ghost{background:#ffffff16;color:#fff!important;border-color:#ffffff30}.cph-button-ghost:hover{background:#ffffff25}.cph-hero-orbit{height:235px;width:235px;flex:0 0 235px;position:relative;opacity:.85;margin-right:35px}.cph-ring{position:absolute;border:1px solid #a8aaff3d;border-radius:50%;transform:rotate(-28deg)}.cph-ring-one{width:185px;height:185px;top:24px;left:25px}.cph-ring-two{width:255px;height:130px;top:51px;left:-8px}.cph-hero-glyph{position:absolute;top:50px;left:83px;transform:rotate(-9deg);font:200 118px/1 Arial,sans-serif;color:#d7daffcf;text-shadow:0 0 40px #8d8cff66}
.cph-board-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:19px 0 4px}.cph-board-nav-label,.cph-section-eyebrow{font-size:10px;letter-spacing:.13em;font-weight:850;color:var(--cph-muted);margin-right:7px}.cph-board-tab{padding:8px 14px;border:1px solid var(--cph-border);border-radius:20px;color:var(--cph-muted)!important;background:var(--cph-surface);font-size:12px;font-weight:650;transition:background .2s}.cph-board-tab:hover{background:var(--cph-hover)}.cph-board-tab.is-active{background:#292b58;color:#fff!important;border-color:#292b58}
.cph-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(180px,.92fr);gap:12px;margin:18px 0 36px}.cph-stat{border-radius:14px;background:var(--cph-surface);border:1px solid var(--cph-border);padding:17px 19px;display:flex;gap:13px;align-items:center;min-width:0}.cph-stat-icon{height:39px;width:39px;border-radius:11px;display:grid;place-items:center;font-size:21px;font-weight:550;flex:0 0 39px}.cph-purple{background:#efedff;color:#806bf0}.cph-amber{background:#fff2df;color:#ca8a2f}.cph-green{background:#dff9ee;color:#159c73}.cph-stat strong{display:block;line-height:1.05;font-size:24px;font-weight:780;letter-spacing:-.04em}.cph-stat span:not(.cph-stat-icon){color:var(--cph-muted);font-size:11px;white-space:nowrap}.cph-stat-note{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;background:#ebeafa;border-color:#e6e4fa}.cph-stat-note>span{font-size:9px!important;letter-spacing:.12em;color:#786fad!important;font-weight:800}.cph-stat-note strong{font-size:14px;letter-spacing:0;color:#3c397e;line-height:1.3}
.cph-content-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:0 0 17px;scroll-margin-top:24px}.cph-content-head h2{font-size:24px!important;line-height:1.2!important;letter-spacing:-.035em;color:var(--cph-ink)!important;font-weight:780!important;margin:7px 0 0!important}.cph-count{font-size:12px;font-weight:700;background:#e8e9f2;color:#616987;display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:7px;vertical-align:middle;margin-left:5px}.cph-views{display:inline-flex;gap:2px;padding:4px;background:var(--cph-surface);border:1px solid var(--cph-border);border-radius:11px}.cph-views button{padding:8px 12px;border:0;background:transparent;border-radius:7px;color:var(--cph-muted);font-size:12px;font-weight:680;display:flex;gap:6px;align-items:center;white-space:nowrap}.cph-views button.is-active{background:var(--cph-ink);color:#fff;box-shadow:0 3px 10px #19233b20}.cph-toolbar{display:flex;align-items:center;gap:11px;margin-bottom:19px;flex-wrap:wrap}.cph-search{display:flex;align-items:center;gap:10px;flex:1 1 270px;max-width:100%;border:1px solid var(--cph-border);border-radius:10px;background:var(--cph-surface);padding:0 14px;min-height:43px;color:var(--cph-muted)}.cph-search:focus-within{border-color:#a59beb;box-shadow:0 0 0 3px #a59beb17}.cph-search input{border:0!important;background:transparent!important;box-shadow:none!important;min-height:39px;padding:0!important;font-size:12px!important;color:var(--cph-ink)!important;width:100%;outline:none!important;min-width:0}.cph-search input::placeholder{color:#9ba5b3}.cph-filter{display:flex;align-items:center;gap:9px;min-height:43px;border-radius:10px;border:1px solid var(--cph-border);padding:0 12px;background:var(--cph-surface)}.cph-filter span{color:var(--cph-muted);font-size:9px;letter-spacing:.07em;font-weight:850}.cph-filter select{min-height:39px;border:0!important;box-shadow:none!important;background:transparent!important;color:var(--cph-ink)!important;font-size:12px!important;max-width:145px;padding-right:17px!important}.cph-reset{background:transparent;border:0;color:var(--cph-muted);font-size:12px;padding:8px;font-weight:670}.cph-reset:hover{color:var(--cph-accent)}
.cph-lanes{display:grid;grid-auto-columns:minmax(238px,1fr);grid-auto-flow:column;gap:13px;overflow-x:auto;padding:2px 2px 20px;scrollbar-width:thin;scrollbar-color:#d6dced transparent;align-items:stretch}.cph-lane{border:1px solid var(--cph-border);border-radius:13px;background:#eff2f8a3;padding:10px;min-height:220px;min-width:0}.cph-lane-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 4px 13px}.cph-lane-head>div{display:flex;align-items:center;gap:8px;min-width:0}.cph-stage-dot{height:9px;width:9px;border-radius:50%;background:var(--cph-stage-color);box-shadow:0 0 0 4px color-mix(in srgb,var(--cph-stage-color) 15%,transparent);flex:0 0 9px}.cph-lane-head h3{margin:0!important;font-size:12px!important;font-weight:780!important;color:var(--cph-ink)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cph-lane-count{background:var(--cph-surface);border-radius:7px;color:var(--cph-muted);font-size:11px;font-weight:800;min-width:23px;text-align:center;padding:2px 5px}.cph-lane-cards{display:flex;flex-direction:column;gap:9px}.cph-card{background:var(--cph-surface);border:1px solid var(--cph-border);padding:15px 14px 12px;border-radius:11px;box-shadow:0 2px 3px #131e3b05;transition:transform .16s,box-shadow .16s,border-color .16s;min-width:0}.cph-card:hover{transform:translateY(-2px);border-color:#d2d8e5;box-shadow:var(--cph-shadow)}.cph-card-top{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px}.cph-type-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:6px;font-size:10px;color:var(--cph-type-color);background:color-mix(in srgb,var(--cph-type-color) 10%,var(--cph-surface));font-weight:760}.cph-type-pill span{width:5px;height:5px;border-radius:50%;background:var(--cph-type-color)}.cph-featured{font-size:10px;font-weight:750;color:#b78a35;margin-left:auto}.cph-card-title{text-align:left;display:block;width:100%;background:none!important;border:0!important;padding:0!important;color:var(--cph-ink)!important;font-size:14px!important;font-weight:780!important;letter-spacing:-.017em;line-height:1.4;white-space:normal}.cph-card-title:hover{color:var(--cph-accent)!important}.cph-card-excerpt{font-size:11px;color:var(--cph-muted);line-height:1.65;margin:7px 0 13px!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cph-date-row{display:flex;align-items:center;gap:6px;margin:0 0 12px;font-size:10px;color:#697e94;font-weight:550}.cph-progress{margin:12px 0}.cph-progress-label{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--cph-muted);margin-bottom:6px}.cph-progress-label strong{font-size:10px;color:var(--cph-ink)}.cph-progress-track{height:5px;background:#e8eaf3;border-radius:4px;overflow:hidden}.cph-progress-track span{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#7865df,#4cbaa9)}.cph-card-foot{padding-top:11px;margin-top:12px;border-top:1px solid var(--cph-border);display:flex;gap:8px;align-items:center}.cph-avatar{width:24px;height:24px;flex:0 0 24px;border-radius:8px;background:#e6e9f5;color:#65739a;display:grid;place-items:center;font-size:11px;font-weight:850}.cph-card-meta{font-size:10px;color:var(--cph-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cph-card-spacer{flex:1}.cph-vote{background:var(--cph-surface-soft);border:1px solid var(--cph-border);padding:5px 7px;display:flex;align-items:center;gap:3px;color:var(--cph-muted);font-size:11px;font-weight:750;border-radius:7px;min-width:42px;justify-content:center}.cph-vote:hover,.cph-vote.is-voted{color:#5f52cc;border-color:#cfc9ff;background:#f0edff}.cph-vote:disabled{opacity:.6;cursor:progress}.cph-no-match{font-size:11px;color:var(--cph-muted);text-align:center;padding:20px 7px}
.cph-view-list .cph-lanes{display:flex;flex-direction:column;gap:8px;overflow:visible}.cph-view-list .cph-lane{border:0;padding:0;min-height:0;background:transparent}.cph-view-list .cph-lane-head{padding:7px 2px 10px}.cph-view-list .cph-lane-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cph-view-list .cph-card-excerpt{-webkit-line-clamp:2}
.cph-schedule{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.cph-schedule-group{border:1px solid var(--cph-border);border-radius:14px;padding:15px;background:var(--cph-surface)}.cph-schedule-group>h3{font-size:12px!important;color:var(--cph-muted)!important;font-weight:800!important;letter-spacing:.09em;margin:0 0 13px!important;text-transform:uppercase}.cph-schedule-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cph-schedule-empty,.cph-empty-filter{padding:36px;text-align:center;color:var(--cph-muted);border:1px dashed var(--cph-border);border-radius:12px;background:var(--cph-surface)}.cph-empty-first{text-align:center;background:var(--cph-surface);border:1px solid var(--cph-border);border-radius:16px;padding:54px 24px;color:var(--cph-muted)}.cph-empty-icon{font-size:36px;color:#8e7cea}.cph-empty-first h3{margin:5px 0!important;font-size:22px!important;color:var(--cph-ink)!important}.cph-empty-first p{max-width:440px;margin:8px auto}.cph-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;border-top:1px solid var(--cph-border);padding:23px 2px 3px;margin-top:25px;color:var(--cph-muted);font-size:11px}.cph-footer span:last-child{font-weight:690}
.cph-app .cph-dialog{position:fixed;inset:0;margin:auto;padding:0;max-height:min(88vh,850px);width:min(95vw,650px);max-width:650px;overflow:auto;border:1px solid var(--cph-border);border-radius:20px;background:var(--cph-surface);color:var(--cph-ink);box-shadow:0 30px 90px #121a3190}.cph-dialog::backdrop{background:#111a2c9e;backdrop-filter:blur(5px)}.cph-dialog-head{display:flex;justify-content:space-between;align-items:center;padding:17px 25px;border-bottom:1px solid var(--cph-border)}.cph-dialog-eyebrow{color:var(--cph-muted);letter-spacing:.16em;font-size:10px;font-weight:850}.cph-dialog-head button{background:var(--cph-surface-soft);border:1px solid var(--cph-border);border-radius:8px;width:32px;height:32px;line-height:1;color:var(--cph-ink);font-size:23px}.cph-dialog-body,.cph-submit-form{padding:26px}.cph-detail-tag{display:flex;align-items:center;gap:10px}.cph-detail-stage{font-size:11px;color:var(--cph-muted);font-weight:670}.cph-detail-prose{line-height:1.7;color:var(--cph-ink);font-size:14px;overflow-wrap:anywhere}.cph-detail-prose img{height:auto;max-width:100%}.cph-detail-data{display:flex;gap:12px;flex-wrap:wrap;margin:23px 0}.cph-detail-data span{padding:10px 13px;background:var(--cph-surface-soft);border:1px solid var(--cph-border);border-radius:10px;font-size:12px}.cph-detail-data b{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--cph-muted);margin-bottom:4px}.cph-dialog-body h2,.cph-submit-form h2{font-size:27px!important;color:var(--cph-ink)!important;line-height:1.22!important;margin:12px 0!important}.cph-dialog-body>.cph-button,.cph-submit-form>.cph-button{background:#5649cc;color:#fff!important}.cph-submit-form>p{color:var(--cph-muted);font-size:13px;line-height:1.6;margin-bottom:22px}.cph-submit-form label{display:flex;flex-direction:column;font-weight:750;font-size:12px;gap:7px;margin-bottom:17px}.cph-submit-form input,.cph-submit-form select,.cph-submit-form textarea{width:100%;border:1px solid var(--cph-border)!important;background:var(--cph-surface-soft)!important;border-radius:10px;padding:12px;color:var(--cph-ink)!important;box-shadow:none!important;outline:none}.cph-submit-form textarea{resize:vertical}.cph-form-status{font-size:12px;color:#b65348;margin-bottom:9px;min-height:1.4em}.cph-form-status.is-success{color:#22906e}
@media(max-width:1050px){.cph-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.cph-stat-note{display:none}.cph-hero-orbit{margin-right:0;flex-basis:170px}.cph-ring-one{left:0}.cph-ring-two{left:-25px}.cph-hero-glyph{left:51px}.cph-lanes{grid-auto-columns:minmax(250px,270px)}}
@media(max-width:700px){.cph-app{padding:13px;border-radius:13px}.cph-topbar{padding-bottom:13px}.cph-topbar-note{display:none}.cph-hero{padding:27px 20px;min-height:235px;border-radius:15px}.cph-hero h1{font-size:30px!important}.cph-hero-orbit{display:none}.cph-stats{gap:8px;margin:12px 0 27px}.cph-stat{padding:12px 8px;gap:8px;flex-direction:column;text-align:center}.cph-stat-icon{width:30px;height:30px;flex:0 0 30px;border-radius:9px;font-size:16px}.cph-stat strong{font-size:22px}.cph-stat span:not(.cph-stat-icon){font-size:10px;white-space:normal;line-height:1.1;display:block;margin-top:4px}.cph-content-head{align-items:flex-start;flex-direction:column}.cph-content-head h2{font-size:22px!important}.cph-views{width:100%;justify-content:space-around}.cph-views button{flex:1;justify-content:center}.cph-toolbar{gap:8px}.cph-search{flex:1 1 100%}.cph-filter{flex:1;min-width:0}.cph-filter select{max-width:105px}.cph-lanes{margin-right:-13px;grid-auto-columns:minmax(255px,82vw)}.cph-view-list .cph-lane-cards,.cph-schedule-cards{grid-template-columns:1fr}.cph-dialog-body,.cph-submit-form{padding:20px}.cph-footer{font-size:10px}.cph-board-nav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.cph-board-tab{white-space:nowrap;flex:0 0 auto}}
/* Follow explicit portal mode when the shortcode is rendered inside a site that provides it. */
[data-color-mode="dark"] .cph-app,.dark .cph-app{--cph-bg:#101521;--cph-surface:#1b2331;--cph-surface-soft:#202b3b;--cph-ink:#eaf0fc;--cph-muted:#9caac0;--cph-border:#303c50;--cph-hover:#333151;--cph-shadow:0 16px 50px #060a1490}.dark .cph-app .cph-lane,[data-color-mode="dark"] .cph-app .cph-lane{background:#17202d}.dark .cph-app .cph-stat-note,[data-color-mode="dark"] .cph-app .cph-stat-note{background:#262346}.dark .cph-app .cph-stat-note strong,[data-color-mode="dark"] .cph-app .cph-stat-note strong{color:#dfdcff}.dark .cph-app .cph-stat-note>span,[data-color-mode="dark"] .cph-app .cph-stat-note>span{color:#bcb5f6!important}.dark .cph-app .cph-vote.is-voted,[data-color-mode="dark"] .cph-app .cph-vote.is-voted{background:#343052;color:#d7d1ff}
@media(prefers-color-scheme:dark){.cph-app:not([data-theme="light"]){--cph-bg:#101521;--cph-surface:#1b2331;--cph-surface-soft:#202b3b;--cph-ink:#eaf0fc;--cph-muted:#9caac0;--cph-border:#303c50;--cph-hover:#333151;--cph-shadow:0 16px 50px #060a1490}.cph-app .cph-lane{background:#17202d}.cph-app .cph-stat-note{background:#262346}.cph-app .cph-stat-note strong{color:#dfdcff}.cph-app .cph-stat-note>span{color:#bcb5f6!important}}

@media(max-width:700px){.cph-toolbar .cph-filter{flex:1 1 calc(50% - 6px)}.cph-toolbar .cph-filter select{width:100%;min-width:0;max-width:none}.cph-toolbar .cph-filter span{flex:0 0 auto}.cph-toolbar .cph-reset{margin-left:auto}}

/* Alpha 2 · community backing / non-binding interest */
.cph-funding{margin:15px 0 2px;display:grid;gap:10px;border-radius:14px;border:1px solid color-mix(in srgb,var(--cph-accent) 22%,var(--cph-border));background:linear-gradient(135deg,color-mix(in srgb,var(--cph-accent) 7%,var(--cph-surface)),var(--cph-surface));padding:14px;min-width:0}
.cph-funding-heading{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:11px;font-weight:800;color:var(--cph-ink)}.cph-funding-icon{display:grid;place-items:center;width:23px;height:23px;border-radius:7px;background:#6255d9;color:#fff;font-size:14px}.cph-interest-status{margin-left:auto;font-size:9px;line-height:1.3;font-weight:750;background:var(--cph-surface);border:1px solid var(--cph-border);padding:5px 7px;border-radius:100px;color:var(--cph-muted);white-space:normal;text-align:right}.cph-interest-status.is-met{background:#e3f9ed;color:#18774f;border-color:#bbefd2}
.cph-funding-amounts{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;color:var(--cph-muted);font-size:11px}.cph-funding-amounts strong{font-size:23px;letter-spacing:-.045em;line-height:1.1;color:var(--cph-ink);font-weight:850;font-variant-numeric:tabular-nums}.cph-funding-track{height:9px;width:100%;border-radius:100px;background:color-mix(in srgb,var(--cph-accent) 13%,var(--cph-border));overflow:hidden}.cph-funding-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6556dd,#22aa95);transition:width .25s ease}.cph-funding-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:3px 10px;color:var(--cph-muted);font-size:10px;line-height:1.45}.cph-funding-foot b{color:var(--cph-ink);font-variant-numeric:tabular-nums}.cph-funding-pledge{display:flex;align-items:center;justify-content:center;gap:6px;background:var(--cph-ink)!important;color:var(--cph-surface)!important;border:1px solid var(--cph-ink)!important;width:100%;border-radius:9px;padding:9px 10px;font-size:11px;font-weight:800;transition:transform .15s,opacity .15s}.cph-funding-pledge:hover{opacity:.88;transform:translateY(-1px)}.cph-funding-pledge span:last-child{margin-left:auto}.cph-interest-disclaimer{font-size:9px;line-height:1.45;color:var(--cph-muted)!important;margin:0!important}
.cph-funding-detail{margin:22px 0;padding:20px;border-radius:15px;gap:15px}.cph-funding-detail .cph-funding-amounts strong{font-size:32px}.cph-funding-detail .cph-funding-foot,.cph-funding-detail .cph-interest-disclaimer{font-size:12px}.cph-funding-detail .cph-funding-pledge{font-size:13px;padding:13px 15px}.cph-reward-heading{font-size:12px;font-weight:800;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.cph-reward-heading small{color:var(--cph-muted);font-weight:500}.cph-reward-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cph-reward{padding:13px;text-align:left;background:var(--cph-surface)!important;color:var(--cph-ink)!important;border:1px solid var(--cph-border)!important;border-radius:12px;min-width:0;display:grid;gap:6px;transition:border-color .2s,transform .2s}.cph-reward:hover:not(:disabled){border-color:var(--cph-accent)!important;transform:translateY(-2px)}.cph-reward:disabled{opacity:.6;cursor:default}.cph-reward strong{font-size:15px;font-weight:850}.cph-reward span{font-size:11px;color:var(--cph-muted);line-height:1.5}
.cph-app .cph-interest-dialog{max-width:540px}.cph-interest-form{padding:25px;display:flex;flex-direction:column;gap:12px}.cph-interest-kicker{font-weight:850;letter-spacing:.13em;color:var(--cph-accent);font-size:10px}.cph-interest-form h2{font-size:25px!important;line-height:1.15!important;color:var(--cph-ink)!important;margin:0!important}.cph-interest-name{font-size:14px;color:var(--cph-ink);font-weight:700;line-height:1.5;margin:0}.cph-interest-legal{font-size:12px;color:var(--cph-muted);line-height:1.6;border:1px solid var(--cph-border);padding:12px;border-radius:10px;background:var(--cph-surface-soft);margin:4px 0!important}.cph-interest-legal b{color:var(--cph-ink)}.cph-interest-amount-label{display:grid;gap:8px;font-size:12px;font-weight:800}.cph-interest-amount-wrap{display:flex;align-items:center;background:var(--cph-surface-soft);border:1px solid var(--cph-border);border-radius:10px;padding:0 12px;gap:6px}.cph-interest-amount-wrap>span{font-size:21px;color:var(--cph-muted);font-weight:750}.cph-interest-amount-wrap input{flex:1;width:100%;padding:13px 0;border:0!important;background:transparent!important;outline:0!important;color:var(--cph-ink)!important;font-size:23px!important;font-weight:750;box-shadow:none!important;min-width:0}.cph-interest-form-stats{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:11px;color:var(--cph-muted)}.cph-interest-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.cph-interest-actions>.cph-button{flex:1;min-width:150px}.cph-interest-actions .cph-interest-withdraw{background:transparent!important;color:var(--cph-muted)!important;border:1px solid var(--cph-border)!important}.cph-interest-actions button[hidden]{display:none!important}.cph-interest-form .cph-form-status{margin:0;min-height:1.2em}.cph-funding [hidden]{display:none!important}
@media(max-width:700px){.cph-funding{padding:12px;gap:9px}.cph-funding-detail{padding:15px;margin:18px 0}.cph-reward-grid{grid-template-columns:1fr}.cph-interest-form{padding:19px}.cph-interest-status{font-size:9px}}
@media(prefers-reduced-motion:reduce){.cph-funding-track>span,.cph-funding-pledge,.cph-reward{transition:none!important}}

/* Alpha 0.0.003: full-width page/frame and conversations */
body.cph-hub-page .entry-header,body.cph-hub-page .entry-title,body.cph-hub-page .page-title,body.cph-hub-page .wp-block-post-title,body.cph-hub-page h1.page-title,body.cph-hub-page .post-title{display:none!important}
body.cph-hub-page .site-main,body.cph-hub-page .entry-content,body.cph-hub-page .content-area,body.cph-hub-page .wp-site-blocks,body.cph-hub-page main#main,body.cph-hub-page .wp-block-post-content{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
body.cph-hub-page .entry-content{padding:0!important}
.cph-standalone body,.cph-standalone{margin:0;min-height:100vh;background:#f6f8fc}
.cph-standalone .cph-app{border-radius:0;min-height:100vh;padding:22px clamp(14px,2.8vw,48px) 36px}
.cph-comments-list{display:grid;gap:13px;max-height:340px;overflow-y:auto;padding:2px 4px 4px 0}
.cph-discussion{margin-top:26px;padding-top:20px;border-top:1px solid var(--cph-border)}
.cph-discussion-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:17px}
.cph-discussion-heading h3{font-size:17px!important;font-weight:800!important;margin:0!important;color:var(--cph-ink)!important}
.cph-discussion-heading span{font-size:11px;color:var(--cph-muted)}
.cph-comment{display:flex;gap:11px;padding:11px;background:var(--cph-surface-soft);border:1px solid var(--cph-border);border-radius:12px}
.cph-comment-avatar{width:36px;height:36px;flex:0 0 36px;object-fit:cover;border-radius:50%}
.cph-comment-main{min-width:0;flex:1}.cph-comment-meta{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.cph-comment-meta strong{font-size:12px;color:var(--cph-ink)}.cph-comment-meta time{color:var(--cph-muted);font-size:10px}
.cph-comment-content{font-size:12px;line-height:1.6;color:var(--cph-ink);overflow-wrap:anywhere}.cph-comment-content p{margin:7px 0 0!important}
.cph-comment-form{margin-top:16px;display:grid;gap:9px}.cph-comment-form label{font-size:12px;font-weight:800;color:var(--cph-ink)}.cph-comment-form textarea{width:100%;border:1px solid var(--cph-border)!important;border-radius:10px;padding:11px 12px;min-height:92px;background:var(--cph-surface)!important;color:var(--cph-ink)!important;resize:vertical}
.cph-comment-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:9px}.cph-comment-foot .cph-form-status{flex:1;min-width:100px;margin:0}.cph-comment-send{background:#584cca!important;color:#fff!important}.cph-comments-empty,.cph-comment-login{color:var(--cph-muted);font-size:12px}.cph-comment-login a{color:var(--cph-accent);font-weight:800}
.cph-app .cph-comments-empty[hidden]{display:none!important}

.cph-avatar{overflow:hidden}.cph-avatar img{display:block;width:100%;height:100%;object-fit:cover}.cph-comment-meta a{color:inherit;text-decoration:none}.cph-comment-meta a:hover{color:var(--cph-accent)}.cph-just-added{border-color:#29a181!important;box-shadow:0 0 0 3px #29a18135!important}

/* 0.0.004: FluentCommunity layout fixes and member-activity tabs */
.cph-app.cph-in-fcom{border-radius:0;padding:0 clamp(8px,1.8vw,26px) 30px;min-width:0;max-width:100%;overflow-x:clip}
.cph-app.cph-in-fcom .cph-topbar{display:none!important}
.cph-app.cph-in-fcom .cph-hero{margin-top:0}
.cph-app.cph-in-fcom .cph-hero h1{margin-top:9px!important}
.cph-activity-filters{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:0 0 14px;padding:1px 0}
.cph-activity-filters button{font-size:12px;font-weight:700;border:1px solid var(--cph-border);border-radius:999px;padding:7px 13px;background:var(--cph-surface);color:var(--cph-muted);transition:background .16s,border-color .16s}
.cph-activity-filters button:hover{background:var(--cph-hover);color:var(--cph-accent)}
.cph-activity-filters button.is-active{background:var(--cph-ink);color:#fff;border-color:var(--cph-ink)}
.cph-empty-action{background:#554bd0!important;color:#fff!important;margin-top:12px;border-color:#554bd0}
body.cph-hub-page .brxe-container:has(.cph-app),body.cph-hub-page .brxe-section:has(.cph-app),body.cph-hub-page .brxe-block:has(.cph-app){max-width:100%!important;width:100%!important}
@media(max-width:767px){.cph-app.cph-in-fcom{padding:0 9px 24px}.cph-app.cph-in-fcom .cph-hero{border-radius:14px}.cph-activity-filters{gap:6px}.cph-activity-filters button{font-size:11px;padding:7px 11px}}

/* FCom frame: compact hero, full-width content and consistent button alignment.
   No global #wpadminbar/html top margins — FCom/WordPress usually offset this correctly. */
.cph-app.cph-in-fcom{width:100%;max-width:100%;border:0;padding:0 clamp(10px,1.5vw,24px) 28px;border-radius:0;overflow:visible}
.cph-app.cph-in-fcom .cph-hero{min-height:0;padding:clamp(20px,2.1vw,30px) clamp(22px,2.4vw,36px);border-radius:15px;box-shadow:none;gap:12px}
.cph-app.cph-in-fcom .cph-hero-inner{max-width:min(100%,780px)}
.cph-app.cph-in-fcom .cph-overline{font-size:9px;letter-spacing:.14em}
.cph-app.cph-in-fcom .cph-hero h1{font-size:clamp(25px,2.35vw,34px)!important;line-height:1.12!important;margin:5px 0 5px!important}
.cph-app.cph-in-fcom .cph-intro{font-size:13px;line-height:1.45;max-width:680px}
.cph-app.cph-in-fcom .cph-hero-actions{margin-top:13px;gap:9px;align-items:center}
.cph-app.cph-in-fcom .cph-hero-orbit{display:none}
.cph-app.cph-in-fcom .cph-hero-actions .cph-button{min-height:37px;line-height:1.3;padding:8px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:normal;text-align:center;vertical-align:middle}
.cph-app.cph-in-fcom .cph-stats{margin:13px 0 23px}
.cph-app.cph-in-fcom .cph-stat{padding:13px 15px}
/* If FCom emits an extra empty title wrapper, remove ONLY that wrapper on the hub page. */
.cph-app.cph-in-fcom :is(.cph-topbar){display:none!important}
@media(max-width:767px){
 .cph-app.cph-in-fcom .cph-hero{padding:19px 18px;border-radius:12px}
 .cph-app.cph-in-fcom .cph-hero h1{font-size:25px!important}
 .cph-app.cph-in-fcom .cph-hero-actions{gap:7px}
 .cph-app.cph-in-fcom .cph-hero-actions .cph-button{flex:1 1 auto;padding:9px 11px;font-size:11px}
 .cph-app.cph-in-fcom .cph-stats{margin:12px 0 20px}
}
@media(prefers-reduced-motion:reduce){.cph-activity-filters button{transition:none}}

/* Alpha 0.0.005 — authors, member gate, admin quick editing, predictable button contrast */
.cph-app .cph-card-identity{display:flex;flex-direction:column;gap:1px;min-width:0;max-width:calc(100% - 48px);line-height:1.3}
.cph-app .cph-card-author{color:var(--cph-ink);font-size:11px;font-weight:760;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cph-app .cph-card-author a{color:inherit!important;text-decoration:none}.cph-app .cph-card-author a:hover{text-decoration:underline;color:var(--cph-accent)!important}
.cph-app .cph-card-meta{font-size:10px;color:var(--cph-muted)}
.cph-app .cph-detail-author{display:flex;align-items:center;gap:9px;margin:12px 0 22px;color:var(--cph-muted);font-size:12px;flex-wrap:wrap}
.cph-app .cph-detail-author img{width:30px;height:30px;border-radius:50%;object-fit:cover}
.cph-app .cph-detail-author strong,.cph-app .cph-detail-author a{color:var(--cph-ink)!important;font-weight:800}
.cph-app .cph-detail-author time{margin-left:auto;color:var(--cph-muted);font-size:11px}
.cph-app .cph-card-manage{margin-left:auto;background:var(--cph-surface-soft)!important;color:var(--cph-ink)!important;border:1px solid var(--cph-border)!important;border-radius:7px;padding:4px 9px;font-size:10px;font-weight:700;line-height:1.5}
.cph-app .cph-card-manage:hover{border-color:var(--cph-accent)!important}
.cph-app .cph-quick-status{border-top:1px solid var(--cph-border);margin-top:12px;padding-top:10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.cph-app .cph-quick-status label{font-size:10px;font-weight:750;color:var(--cph-muted)}
.cph-app .cph-quick-status select{flex:1;min-width:110px;max-width:100%;padding:6px 8px;font-size:11px!important;border:1px solid var(--cph-border)!important;background:var(--cph-surface-soft)!important;color:var(--cph-ink)!important;border-radius:7px;min-height:31px}
.cph-app .cph-quick-status-msg{flex-basis:100%;font-size:10px;color:var(--cph-muted)}
.cph-app .cph-detail-admin{border:1px solid var(--cph-border);background:var(--cph-surface-soft);padding:12px;border-radius:12px;margin:16px 0 24px;display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.cph-app .cph-detail-admin>span{color:var(--cph-muted);font-size:11px}
.cph-app .cph-detail-admin .cph-manage,.cph-app .cph-admin-save{background:#584cca!important;color:#fff!important;border-color:#584cca!important}
.cph-app .cph-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 13px}
.cph-app .cph-edit-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
.cph-app .cph-edit-actions .cph-form-status{flex:1;margin:0}
.cph-app .cph-edit-dialog{width:min(96vw,720px);max-width:720px}
.cph-app .cph-submit-identity{display:flex;align-items:center;gap:11px;padding:11px 13px;margin:13px 0 17px;background:var(--cph-surface-soft);border:1px solid var(--cph-border);border-radius:11px;font-size:12px;color:var(--cph-muted)}
.cph-app .cph-submit-identity img{width:38px;height:38px;border-radius:50%;object-fit:cover}
.cph-app .cph-submit-identity strong{color:var(--cph-ink);font-size:13px}
.cph-app .cph-guest-gate{display:flex;gap:12px;flex-wrap:wrap;padding:16px;background:var(--cph-surface-soft);border:1px solid var(--cph-border);border-radius:12px}
.cph-app .cph-guest-gate p{color:var(--cph-ink);margin:0 0 5px;flex-basis:100%;font-size:13px}
.cph-app .cph-button-outline{background:var(--cph-surface)!important;color:var(--cph-ink)!important;border:1px solid var(--cph-border)!important}
/* Do not let inherited FCom/Bricks dark mode button rules hide text. */
.cph-app .cph-hero .cph-button-primary{background:#fff!important;color:#273154!important;border-color:#fff!important}
.cph-app .cph-hero .cph-button-ghost{background:#ffffff16!important;color:#fff!important;border-color:#ffffff40!important}
.cph-app .cph-submit-form .cph-button-primary,
.cph-app .cph-guest-gate .cph-button-primary,
.cph-app .cph-interest-form .cph-button-primary,
.cph-app .cph-detail-body>.cph-button-primary,
.cph-app .cph-comment-send,
.cph-app .cph-admin-save{background:#584cca!important;color:#fff!important;border-color:#584cca!important}
.cph-app .cph-views button.is-active,
.cph-app .cph-activity-filters button.is-active{background:#5144b8!important;border-color:#5144b8!important;color:#fff!important}
.cph-app .cph-views button:not(.is-active),
.cph-app .cph-activity-filters button:not(.is-active){color:var(--cph-ink)!important}
.cph-app .cph-comment-meta strong,.cph-app .cph-comment-meta strong a{color:var(--cph-ink)!important}
.cph-app .cph-dialog-head button{color:var(--cph-ink)!important}
.cph-app :is(button,a).cph-button:disabled{opacity:.58;cursor:wait}
.cph-fcom-shortcut,.cph-fcom-shortcut a{white-space:nowrap!important;line-height:1.3!important;min-width:0}
.cph-fcom-shortcut svg{width:18px;height:18px;flex-shrink:0}
@media(max-width:650px){.cph-app .cph-edit-grid{grid-template-columns:1fr}.cph-app .cph-card-author{font-size:10px}.cph-app .cph-quick-status select{max-width:195px}}

.cph-app .cph-guest-gate .cph-registration-disabled{font-size:11px;color:var(--cph-muted);margin:3px 0 0}

/* Alpha 0.0.006: configurable seven-view experience */
.cph-app .cph-content-head{align-items:center;flex-wrap:wrap;row-gap:14px}
.cph-app .cph-views{display:flex;max-width:100%;min-width:0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--cph-border) transparent;flex-wrap:nowrap;white-space:nowrap;gap:3px;padding:5px;border-radius:12px}
.cph-app .cph-views button{flex:0 0 auto;min-height:36px;padding:8px 12px;font-size:11px!important;display:flex;gap:6px;align-items:center;justify-content:center;border-radius:8px}
.cph-app .cph-view-icon{font-size:16px;line-height:1;font-weight:700;display:inline-block;min-width:15px;text-align:center}
.cph-app :is(.cph-calendar,.cph-timeline,.cph-gallery,.cph-activity)[hidden]{display:none!important}
.cph-app .cph-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:14px;align-items:start;margin:0 0 20px}
.cph-app .cph-gallery>.cph-card{padding:19px;border-radius:15px;min-height:212px;box-shadow:var(--cph-shadow)}
.cph-app .cph-gallery>.cph-card .cph-card-title{font-size:17px!important;line-height:1.35}
.cph-app .cph-gallery>.cph-card .cph-card-excerpt{-webkit-line-clamp:4;font-size:12px}
.cph-app .cph-view-empty{margin:0!important;padding:33px 20px;font-size:13px;text-align:center;color:var(--cph-muted);border:1px dashed var(--cph-border);background:var(--cph-surface);border-radius:13px}
.cph-app .cph-view-lead{font-size:10px;letter-spacing:.14em;font-weight:850;color:var(--cph-muted);padding:0 4px 12px}
.cph-app .cph-activity{display:flex;flex-direction:column;margin:0 0 25px;gap:0;padding:16px 20px;background:var(--cph-surface);border:1px solid var(--cph-border);border-radius:16px}
.cph-app .cph-activity-entry{display:flex;align-items:center;gap:13px;border-top:1px solid var(--cph-border);padding:16px 7px;min-width:0}
.cph-app .cph-activity-entry:nth-child(2){border-top:0}
.cph-app .cph-activity-dot{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;font-size:16px;background:color-mix(in srgb,var(--cph-type-color,#6b60d9) 13%,var(--cph-surface));color:var(--cph-type-color,#6b60d9);font-weight:900}
.cph-app .cph-activity-main{display:flex;flex-direction:column;gap:5px;flex:1;min-width:0}
.cph-app .cph-activity-title,.cph-app .cph-timeline-title{border:0!important;padding:0!important;background:transparent!important;color:var(--cph-ink)!important;font-size:14px!important;font-weight:760!important;text-align:left;line-height:1.5;overflow-wrap:anywhere}
.cph-app .cph-activity-title:hover,.cph-app .cph-timeline-title:hover{color:var(--cph-accent)!important}
.cph-app .cph-activity-meta{font-size:11px;color:var(--cph-muted)}
.cph-app .cph-activity-type{font-size:10px;font-weight:750;color:var(--cph-muted);padding:6px 9px;background:var(--cph-surface-soft);border-radius:8px}
.cph-app .cph-timeline{background:var(--cph-surface);border:1px solid var(--cph-border);border-radius:16px;padding:18px 20px;margin:0 0 24px;overflow-x:auto}
.cph-app .cph-timeline-head,.cph-app .cph-timeline-row{display:grid;grid-template-columns:minmax(120px,27%) minmax(280px,1fr);column-gap:16px;align-items:center;min-width:470px}
.cph-app .cph-timeline-head{font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--cph-muted);padding:0 0 14px;border-bottom:1px solid var(--cph-border)}
.cph-app .cph-timeline-row{padding:14px 0;border-bottom:1px solid var(--cph-border)}
.cph-app .cph-timeline-row:last-of-type{border-bottom:0}
.cph-app .cph-timeline-label{display:flex;flex-direction:column;gap:4px;min-width:0}
.cph-app .cph-timeline-label small{font-size:11px;color:var(--cph-muted)}
.cph-app .cph-timeline-track{height:26px;border-radius:7px;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),var(--cph-border) calc(25% - 1px),var(--cph-border) 25%),var(--cph-surface-soft);position:relative;overflow:hidden}
.cph-app .cph-timeline-bar{position:absolute;top:5px;height:16px;border-radius:7px;min-width:12px;padding:0!important;box-shadow:none!important;border:1px solid color-mix(in srgb,var(--cph-type-color) 50%,transparent)!important;background:var(--cph-type-color)!important;cursor:pointer;transition:filter .15s,transform .15s}
.cph-app .cph-timeline-bar:hover{filter:brightness(1.12);transform:scaleY(1.12)}
.cph-app .cph-undated{padding:18px 0 2px}.cph-app .cph-undated h3{font-size:12px!important;color:var(--cph-muted)!important;margin:0 0 12px!important}
.cph-app .cph-undated-items{display:flex;flex-wrap:wrap;gap:7px}
.cph-app .cph-undated-chip{padding:8px 11px!important;border-radius:8px!important;border:1px solid var(--cph-border)!important;background:var(--cph-surface-soft)!important;color:var(--cph-ink)!important;text-align:left;font-size:11px!important}
.cph-app .cph-undated-chip:hover{border-color:var(--cph-accent)!important}
.cph-app .cph-calendar{background:var(--cph-surface);border:1px solid var(--cph-border);border-radius:16px;margin:0 0 25px;padding:20px;min-width:0}
.cph-app .cph-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.cph-app .cph-calendar-toolbar h3{margin:0!important;color:var(--cph-ink)!important;font-size:22px!important;font-weight:790!important}
.cph-app .cph-calendar-controls{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.cph-app .cph-calendar-controls button{font-size:11px!important;font-weight:750!important;padding:9px 12px!important;border:1px solid var(--cph-border)!important;color:var(--cph-ink)!important;background:var(--cph-surface-soft)!important;border-radius:8px!important}
.cph-app .cph-calendar-controls button:hover{background:var(--cph-hover)!important}
.cph-app .cph-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:0;border-top:1px solid var(--cph-border);border-left:1px solid var(--cph-border);border-radius:8px;overflow:hidden}
.cph-app .cph-cal-weekday{padding:11px 5px;text-align:center;font-size:10px;font-weight:850;color:var(--cph-muted);background:var(--cph-surface-soft);border-right:1px solid var(--cph-border);border-bottom:1px solid var(--cph-border)}
.cph-app .cph-cal-cell{min-height:100px;padding:7px;min-width:0;border-right:1px solid var(--cph-border);border-bottom:1px solid var(--cph-border);display:flex;flex-direction:column;gap:5px}
.cph-app .cph-cal-outside{background:color-mix(in srgb,var(--cph-surface-soft) 42%,transparent)}
.cph-app .cph-cal-today{background:color-mix(in srgb,var(--cph-accent) 7%,var(--cph-surface))}
.cph-app .cph-cal-day{font-size:11px;color:var(--cph-muted);font-weight:780;align-self:flex-start;width:21px;height:21px;display:grid;place-items:center;border-radius:7px}
.cph-app .cph-cal-today .cph-cal-day{background:var(--cph-accent);color:#fff}
.cph-app .cph-cal-item{font-size:10px!important;line-height:1.35!important;text-align:left!important;font-weight:700!important;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%;border:1px solid var(--cph-border)!important;border-radius:6px!important;padding:5px 6px!important;background:var(--cph-surface-soft)!important;color:var(--cph-ink)!important;display:block}
.cph-app .cph-cal-item:hover{border-color:var(--cph-accent)!important;color:var(--cph-accent)!important}
.cph-app .cph-cal-more{font-size:9px;color:var(--cph-muted);font-weight:700}
.cph-app .cph-calendar-caption{color:var(--cph-muted);font-size:11px;margin:13px 2px 0!important}
.cph-app button:focus-visible{outline:2px solid var(--cph-accent)!important;outline-offset:3px}
@media(max-width:1000px){.cph-app .cph-content-head{align-items:flex-start}.cph-app .cph-views{width:100%;justify-content:flex-start}}
@media(max-width:700px){.cph-app .cph-calendar{padding:12px}.cph-app .cph-calendar-toolbar h3{font-size:18px!important}.cph-app .cph-calendar-grid{overflow:visible}.cph-app .cph-cal-cell{min-height:66px;padding:4px;gap:3px}.cph-app .cph-cal-item{font-size:9px!important;padding:3px!important;line-height:1.2!important}.cph-app .cph-calendar-controls button{padding:7px 9px!important}.cph-app .cph-calendar-toolbar{gap:8px}.cph-app .cph-activity{padding:10px}.cph-app .cph-activity-entry{gap:9px;padding:12px 3px}.cph-app .cph-activity-type{display:none}.cph-app .cph-gallery{grid-template-columns:1fr}.cph-app .cph-timeline{padding:12px}}

/* Hidden views must stay hidden despite authored flex/grid layout rules. */
.cph-app [hidden]{display:none!important}

/* 0.0.007: the frame owns its header; never show an extra WP administrator bar. */
body.cph-fcom-frame-page #wpadminbar{display:none!important}
html:has(body.cph-fcom-frame-page){margin-top:0!important;--wp-admin--admin-bar--height:0px!important}
body.cph-fcom-frame-page{margin-top:0!important;--wp-admin--admin-bar--height:0px!important}
body.cph-fcom-frame-page.admin-bar{padding-top:0!important}
/* WP/Bricks theme typography must not override the bright subtitle on the dark hero. */
.cph-app .cph-hero .cph-intro,.cph-app .cph-hero .cph-intro p{color:#f2f5ff!important;opacity:1!important}
.cph-app .cph-hero .cph-overline{color:#cbd0ff!important}
.cph-app .cph-hero .cph-button-primary,.cph-app .cph-hero .cph-button-primary *{color:#273154!important}
.cph-app .cph-hero .cph-button-ghost,.cph-app .cph-hero .cph-button-ghost *{color:#fff!important}

/* Alpha 9 — curated multi-board gateway. Scoped to plugin DOM to avoid theme/FCom leakage. */
.cph-app.cph-multi-app{--cph-multi-border:rgba(124,145,183,.2);--cph-multi-muted:#a9b5cb;--cph-multi-ink:#f5f7ff;--cph-multi-card:#1a2436;min-height:60vh}
.cph-multi-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:clamp(27px,4.2vw,58px);border-radius:22px;background:radial-gradient(ellipse at 90% -10%,#5062bcb0,transparent 52%),linear-gradient(115deg,#19243b,#2c346b);color:#fff}
.cph-multi-hero h1{font-size:clamp(30px,4vw,49px)!important;line-height:1.14!important;color:#fff!important;letter-spacing:-.038em;font-weight:800!important;margin:14px 0!important}
.cph-multi-hero p{max-width:630px;font-size:15px;line-height:1.6;color:#f0f3ff!important;margin:0}
.cph-multi-hero-stat{display:grid;place-items:center;gap:0;min-width:126px;min-height:126px;border:1px solid #aabaff4a;border-radius:28px;background:#ffffff13;flex-shrink:0}
.cph-multi-hero-stat strong{font-size:47px;color:white;line-height:1.1}.cph-multi-hero-stat span{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#d3d9ff}
.cph-multi-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin:33px 0 17px}.cph-multi-heading h2{font-size:clamp(23px,2.8vw,30px)!important;color:inherit!important;margin:6px 0 0!important;letter-spacing:-.025em}.cph-multi-heading p{font-size:13px;opacity:.75;margin:0 0 5px}
.cph-multi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,305px),1fr));gap:17px}
.cph-multi-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--cph-multi-border);border-radius:19px;padding:25px;background:var(--cph-multi-card);color:var(--cph-multi-ink);box-shadow:0 12px 32px #050d1d12;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.cph-multi-card:hover{transform:translateY(-3px);border-color:#858bde88;box-shadow:0 15px 36px #080e2230}
.cph-multi-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.cph-multi-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#6d6ce71c;color:#b6afff}.cph-multi-icon svg{width:22px;height:22px}.cph-multi-stat{border:1px solid #ffffff18;border-radius:50px;padding:5px 11px;font-size:11px;color:#bec8df}
.cph-multi-card h3{font-size:21px!important;margin:18px 0 8px!important;line-height:1.22!important;font-weight:780!important;letter-spacing:-.025em}.cph-multi-card h3 a{color:#fff!important;text-decoration:none!important}.cph-multi-card h3 a:hover{color:#b7b8ff!important}
.cph-multi-card>p{font-size:13px;line-height:1.65;color:#b9c5dc!important;min-height:43px;margin:0 0 20px}
.cph-multi-track{height:7px;border-radius:20px;background:#53607845;overflow:hidden}.cph-multi-track>span{display:block;height:100%;background:linear-gradient(90deg,#746ce9,#40b6aa);border-radius:inherit;min-width:0}
.cph-multi-small{display:flex;justify-content:space-between;gap:12px;margin:10px 0 18px;font-size:11px;color:#acbad1}
.cph-multi-latest{margin-top:auto;border-top:1px solid #ffffff12;padding-top:18px;display:grid;gap:10px}.cph-multi-latest>b{font-size:10px;letter-spacing:.13em;color:#a4b5d0;text-transform:uppercase;margin-bottom:2px}.cph-multi-latest>div{display:flex;align-items:baseline;gap:9px;font-size:12px;color:#e3eaf9;line-height:1.4}.cph-multi-latest>div span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cph-multi-dot{width:6px;height:6px;border-radius:100%;background:#746ce9;flex-shrink:0}
.cph-multi-open{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;padding:12px 15px;border-radius:11px;background:#ffffff0f;color:#fff!important;font-size:12px;font-weight:760;text-decoration:none!important;border:1px solid #ffffff18}.cph-multi-open:hover{background:#7773e22c;color:#fff!important}.cph-multi-open span{font-size:20px;line-height:1}
.cph-app.cph-in-fcom .cph-multi-hero{padding:clamp(20px,2vw,32px);border-radius:15px}.cph-app.cph-in-fcom .cph-multi-hero h1{font-size:clamp(26px,2.8vw,36px)!important;margin:9px 0!important}.cph-app.cph-in-fcom .cph-multi-hero-stat{min-width:86px;min-height:86px;border-radius:20px}.cph-app.cph-in-fcom .cph-multi-hero-stat strong{font-size:34px}
.cph-detail-feed{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:17px 0;padding:14px;border:1px solid #7e82d837;border-radius:12px;background:#6e6ce911}.cph-detail-feed>span{font-size:12px;line-height:1.4;opacity:.85}
@media(max-width:650px){.cph-multi-hero{padding:27px 22px}.cph-multi-hero-stat{display:none}.cph-multi-heading{align-items:flex-start;flex-direction:column;gap:5px;margin-top:22px}.cph-multi-card{padding:21px}.cph-multi-grid{gap:12px}}
/* Use the Hub palette, not host theme button text rules, so cards stay legible in both modes. */
.cph-app.cph-multi-app .cph-multi-card{background:var(--cph-surface);color:var(--cph-ink);border-color:var(--cph-border)}
.cph-app.cph-multi-app .cph-multi-card h3 a{color:var(--cph-ink)!important}
.cph-app.cph-multi-app .cph-multi-card>p{color:var(--cph-muted)!important}
.cph-app.cph-multi-app .cph-multi-small,.cph-app.cph-multi-app .cph-multi-stat{color:var(--cph-muted)}
.cph-app.cph-multi-app .cph-multi-latest{border-top-color:var(--cph-border)}
.cph-app.cph-multi-app .cph-multi-latest>div{color:var(--cph-ink)}
.cph-app.cph-multi-app .cph-multi-open{background:var(--cph-surface-soft);color:var(--cph-accent)!important;border-color:var(--cph-border)}
.cph-app.cph-multi-app .cph-multi-open:hover{background:var(--cph-hover)}
.cph-app.cph-multi-app .cph-multi-latest>b{color:var(--cph-muted)}
.cph-app.cph-multi-app .cph-multi-icon{background:var(--cph-hover);color:var(--cph-accent)}

/* Alpha 10 · navigation, participation and completion affordances */
.cph-return-bar{display:flex;align-items:center;gap:12px;padding:12px 22px;font-size:13px;color:var(--cph-text,#273448);background:var(--cph-surface,#fff);border-bottom:1px solid var(--cph-border,rgba(128,138,152,.22));min-width:0;flex-wrap:wrap}
.cph-back-all{display:inline-flex;align-items:center;gap:5px;padding:7px 12px;border-radius:10px;text-decoration:none!important;background:rgba(104,101,185,.10);color:var(--cph-text,#273448)!important;font-weight:750;white-space:nowrap}
.cph-back-all:hover,.cph-back-all:focus-visible{background:rgba(104,101,185,.20)}
.cph-return-divider{opacity:.45}.cph-return-bar strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cph-finished-date{font-size:12px;color:#15956c;font-weight:750;margin:10px 0}.cph-comment-count{font-size:12px;white-space:nowrap;opacity:.8}
.cph-sort-filter{min-width:150px}.cph-guest-prompt{font-size:13px;color:#dbe6ff;padding:8px 12px;background:rgba(255,255,255,.12);border-radius:10px}.cph-guest-prompt a{color:#fff!important;text-decoration:underline!important;font-weight:700}
.cph-app .cph-hero-actions{flex-wrap:wrap}.cph-return-bar+header{margin-top:0}
@media(max-width:720px){.cph-return-bar{padding:9px 14px}.cph-sort-filter{min-width:130px}}

.cph-return-bar{color:var(--cph-ink,#273448);background:var(--cph-surface,#fff);border-color:var(--cph-border,#e5e7eb)}
.cph-back-all{color:var(--cph-ink,#273448)!important}
.cph-multi-tools{display:flex;align-items:center;gap:16px;justify-content:space-between;margin:16px 0 20px;flex-wrap:wrap}
.cph-multi-search{display:flex;align-items:center;gap:10px;border:1px solid var(--cph-border,#e5e7eb);background:var(--cph-surface,#fff);border-radius:12px;padding:10px 14px;width:min(100%,480px);color:var(--cph-muted,#76859b)}
.cph-multi-search input{flex:1;min-width:0;width:100%;border:0!important;box-shadow:none!important;outline:0;background:transparent!important;color:var(--cph-ink,#273448)!important;font:inherit;font-size:13px}
.cph-multi-tools>[data-board-search-count]{font-size:12px;color:var(--cph-muted,#76859b)}
.cph-multi-noresults{padding:26px;border:1px dashed var(--cph-border,#e5e7eb);border-radius:12px;color:var(--cph-muted,#76859b);text-align:center}
.cph-multi-card[hidden],.cph-multi-noresults[hidden]{display:none!important}

/* Alpha 11: link existing FCom feed post from public admin item detail */
.cph-detail-feed .cph-feed-connect{margin-top:12px;padding:12px;border:1px solid var(--cph-border,rgba(150,150,150,.25));border-radius:12px;background:rgba(127,127,127,.05)}
.cph-detail-feed .cph-feed-connect label{font-size:12px;font-weight:650;display:block;margin-bottom:8px}
.cph-detail-feed .cph-feed-connect-row{display:flex;gap:8px;flex-wrap:wrap}
.cph-detail-feed .cph-feed-connect-row input{flex:1 1 230px;min-width:0;max-width:100%;border:1px solid var(--cph-border,rgba(150,150,150,.25));border-radius:8px;padding:8px 10px;color:inherit;background:var(--cph-input-bg,transparent)}

.cph-detail-feed .cph-feed-create-label{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px;font-size:13px;font-weight:600}.cph-detail-feed .cph-feed-create-label select{max-width:100%;padding:7px 10px;border:1px solid var(--cph-border,rgba(150,150,150,.25));border-radius:8px;color:inherit;background:var(--cph-input-bg,transparent)}

/* Alpha 12 - progress update badges and inline moderation */
.cph-update-tag{display:inline-flex;align-items:center;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 7px;border-radius:99px;background:rgba(47,171,131,.14);color:#168563;margin-inline:7px}
.cph-comment-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:9px}
.cph-comment-actions button{border:0;background:transparent;color:var(--cph-muted,#6b7785);font:inherit;font-size:12px;cursor:pointer;padding:3px 2px;text-decoration:underline;text-underline-offset:2px}
.cph-comment-actions button:hover{color:var(--cph-text,#263446)}
.cph-inline-comment-editor{margin-top:8px}
.cph-inline-comment-editor textarea{display:block;width:100%;box-sizing:border-box;min-height:76px;padding:11px 12px;background:var(--cph-surface,#fff);color:var(--cph-text,#192434);border:1px solid var(--cph-border,#ccd5db);border-radius:10px}
.cph-inline-comment-controls{display:flex;gap:8px;margin-top:8px}
.cph-inline-comment-controls .cph-button{padding:8px 12px;font-size:12px}
.cph-update-option{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:12px 0;color:inherit;font-size:13px}
.cph-update-option small{display:block;flex-basis:100%;padding-left:25px;opacity:.7}

.cph-author-manage{border:1px solid currentColor;border-radius:99px;font-size:11px;padding:3px 9px;background:transparent;color:inherit;opacity:.73;cursor:pointer;margin-left:8px}.cph-author-manage:hover{opacity:1}

/* Alpha 13: selectable design source, FCom spacing, and pinned modal controls. */
.cph-app.cph-in-fcom .cph-hero,.cph-app.cph-in-fcom .cph-multi-hero{margin-top:clamp(14px,2vw,26px)!important}
.cph-app .cph-dialog-head{position:sticky;top:0;z-index:12;background:var(--cph-surface);border-radius:20px 20px 0 0;box-shadow:0 3px 12px rgba(15,23,42,.04)}
.cph-app .cph-dialog-head [data-close-dialog]{position:relative;z-index:15;flex-shrink:0}
.cph-app .cph-detail-feed{display:block;overflow:hidden;padding:0;border:1px solid var(--cph-border);background:var(--cph-surface-soft);margin:14px 0;border-radius:12px}
.cph-app .cph-detail-feed summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;cursor:pointer;color:var(--cph-ink);font-weight:750;font-size:12px;list-style:none}
.cph-app .cph-detail-feed summary::before{content:'▸';color:var(--cph-muted);margin-right:5px}
.cph-app .cph-detail-feed[open] summary::before{content:'▾'}
.cph-app .cph-detail-feed summary::-webkit-details-marker{display:none}
.cph-app .cph-detail-feed-inner{border-top:1px solid var(--cph-border);padding:14px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.cph-app .cph-feed-pill{margin-left:auto;padding:4px 8px;border:1px solid var(--cph-border);background:var(--cph-surface);border-radius:8px;font-weight:600;color:var(--cph-muted);font-size:10px}
.cph-app .cph-detail-feed:has([data-cph-feed-feedback]) [data-cph-feed-feedback]{overflow-wrap:anywhere}
/* Scoped banner appearance: leave the remainder of the Hub surfaces theme-aware. */
.cph-app[data-cph-appearance="theme"]{--cph-banner-start:var(--wp--preset--color--primary,var(--primary,#203753));--cph-banner-end:var(--wp--preset--color--secondary,var(--secondary,#45577c));--cph-banner-text:var(--wp--preset--color--base,#ffffff);--cph-banner-accent:var(--wp--preset--color--contrast,#dbe6ff)}
.cph-app[data-cph-appearance="fcom"]{--cph-banner-start:var(--fcom-primary-color,var(--fcom-primary,#1e2d4a));--cph-banner-end:var(--fcom-secondary-color,var(--fcom-accent-color,#3b4f7f));--cph-banner-text:var(--fcom-text-color,#ffffff);--cph-banner-accent:var(--fcom-primary-text-color,#dbe4ff)}
.cph-app[data-cph-appearance="theme"] .cph-hero,.cph-app[data-cph-appearance="fcom"] .cph-hero,.cph-app[data-cph-appearance="custom"] .cph-hero,
.cph-app[data-cph-appearance="theme"] .cph-multi-hero,.cph-app[data-cph-appearance="fcom"] .cph-multi-hero,.cph-app[data-cph-appearance="custom"] .cph-multi-hero{background:linear-gradient(115deg,var(--cph-banner-start),var(--cph-banner-end))!important;color:var(--cph-banner-text)!important}
.cph-app:is([data-cph-appearance="theme"],[data-cph-appearance="fcom"],[data-cph-appearance="custom"]) :is(.cph-hero,.cph-multi-hero) :is(h1,p,.cph-intro,.cph-intro p,.cph-multi-hero-stat strong){color:var(--cph-banner-text)!important}
.cph-app:is([data-cph-appearance="theme"],[data-cph-appearance="fcom"],[data-cph-appearance="custom"]) :is(.cph-hero,.cph-multi-hero) .cph-overline{color:var(--cph-banner-accent)!important}
.cph-app:is([data-cph-appearance="theme"],[data-cph-appearance="fcom"],[data-cph-appearance="custom"]) :is(.cph-hero,.cph-multi-hero) .cph-button-ghost{border-color:currentColor!important;color:var(--cph-banner-text)!important}
@media(max-width:767px){.cph-app.cph-in-fcom .cph-hero,.cph-app.cph-in-fcom .cph-multi-hero{margin-top:12px!important}.cph-app .cph-dialog-head{border-radius:16px 16px 0 0}}

/* Alpha 17: FCom top spacing belongs to the multi-board wrapper,
   NOT to the hero's internal content. This follows the site-tested selector.
   Keep the stand-alone view and single-board FCom pages unchanged. */
.cph-app.cph-multi-app.cph-in-fcom{padding-top:30px}
.cph-app.cph-multi-app.cph-in-fcom .cph-multi-hero{margin-top:0!important;padding-top:clamp(20px,2vw,32px)!important}
@media(max-width:767px){.cph-app.cph-multi-app.cph-in-fcom{padding-top:30px}.cph-app.cph-multi-app.cph-in-fcom .cph-multi-hero{padding-top:clamp(20px,2vw,32px)!important}}
/* Board counter should be an unobtrusive chip rather than a giant floating tile. */
.cph-app .cph-multi-hero-stat,.cph-app.cph-in-fcom .cph-multi-hero-stat{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;justify-content:center;min-width:0!important;min-height:0!important;width:auto;height:auto;gap:8px;padding:10px 14px;border-radius:999px;white-space:nowrap;flex:0 0 auto;align-self:flex-start;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3)}
.cph-app .cph-multi-hero-stat strong,.cph-app.cph-in-fcom .cph-multi-hero-stat strong{font-size:18px!important;line-height:1.2!important;margin:0!important;font-weight:800!important}
.cph-app .cph-multi-hero-stat span{font-size:10px!important;line-height:1.3!important;letter-spacing:.04em!important}
@media(max-width:650px){.cph-app .cph-multi-hero-stat{display:none!important}}
/* Changelog: reverse chronological release cards. */
.cph-changelog{display:flex;flex-direction:column;gap:13px;margin:0 0 24px}
.cph-release-entry{display:grid;grid-template-columns:108px minmax(0,1fr);gap:16px;background:var(--cph-surface);border:1px solid var(--cph-border);border-radius:17px;padding:19px 20px;box-shadow:var(--cph-shadow)}
.cph-release-date{font-size:12px;line-height:1.5;color:var(--cph-muted);font-weight:700;padding-top:4px}
.cph-release-main{min-width:0}.cph-release-header{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.cph-release-version{font-size:11px;font-weight:850;letter-spacing:.02em;padding:5px 9px;border-radius:7px;color:var(--cph-accent);background:var(--cph-hover)}
.cph-release-kind{font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--cph-muted)}
.cph-release-title{background:transparent!important;border:0!important;padding:0!important;margin:9px 0 5px!important;font-size:19px!important;line-height:1.35!important;color:var(--cph-ink)!important;text-align:left;font-weight:780!important;cursor:pointer}
.cph-release-notes{font-size:13px;line-height:1.65;color:var(--cph-muted);white-space:pre-line;overflow-wrap:anywhere}
.cph-release-meta{font-size:11px;color:var(--cph-muted);margin-top:8px}
.cph-changelog-empty{padding:20px;border:1px dashed var(--cph-border);border-radius:12px;color:var(--cph-muted)}
@media(max-width:600px){.cph-release-entry{grid-template-columns:1fr;gap:5px;padding:15px}.cph-release-date{padding:0}}
@media(max-width:650px){
  .cph-app .cph-multi-hero{flex-wrap:wrap}
  .cph-app .cph-multi-hero-stat{display:inline-flex!important;align-self:flex-start;padding:7px 11px}
  .cph-app .cph-multi-hero-stat strong{font-size:16px!important}
}

/* Alpha 15 — Dedicated release journal. Changelog boards do not use roadmap UI. */
.cph-release-site{--cph-log-ink:var(--cph-ink);--cph-log-muted:var(--cph-muted);--cph-log-line:var(--cph-border);--cph-log-panel:var(--cph-surface);width:100%;min-width:0;padding-bottom:36px}
.cph-release-site [hidden]{display:none!important}
.cph-release-site .cph-return-bar{margin-bottom:12px}
.cph-log-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:43px clamp(24px,4vw,70px);border-radius:22px;background:linear-gradient(112deg,var(--cph-banner-bg,#1e2c50),var(--cph-banner-alt,#424c9c));color:var(--cph-banner-text,#fff);margin:0 0 23px;overflow:hidden;position:relative}
.cph-log-hero::after{content:"";width:300px;height:300px;position:absolute;right:-125px;top:-195px;border-radius:50%;border:1px solid rgba(255,255,255,.15);pointer-events:none}
.cph-log-hero-content{position:relative;z-index:1;max-width:920px}
.cph-log-eyebrow{font-size:11px;font-weight:850;letter-spacing:.17em;color:inherit;opacity:.78;display:flex;align-items:center;gap:10px}
.cph-log-live{width:7px;height:7px;background:#65e2b8;border-radius:50%;box-shadow:0 0 0 5px rgba(101,226,184,.14)}
.cph-log-hero h1{font-size:clamp(29px,3.4vw,49px)!important;color:inherit!important;font-weight:800!important;line-height:1.16!important;margin:13px 0!important;letter-spacing:-.04em}
.cph-log-hero p{margin:0!important;font-size:clamp(14px,1.3vw,17px)!important;line-height:1.65!important;color:inherit!important;opacity:.88;max-width:740px}
.cph-log-hero-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:22px;font-size:12px;opacity:.95}
.cph-log-hero-meta span{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.09);padding:7px 11px;border-radius:99px}
.cph-log-add{z-index:1;white-space:nowrap;text-decoration:none!important;background:#fff;color:#1c2951!important;border-radius:11px;padding:13px 18px;font-size:13px;font-weight:800;box-shadow:0 12px 35px rgba(4,9,30,.13)}
.cph-log-toolbar{display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin:24px 0 24px;min-width:0}
.cph-log-search{display:flex;align-items:center;gap:12px;padding:0 17px;min-width:min(100%,340px);width:min(100%,530px);height:49px;border:1px solid var(--cph-log-line);border-radius:12px;background:var(--cph-log-panel);color:var(--cph-log-muted);font-size:21px}
.cph-log-search input{background:transparent!important;border:0!important;box-shadow:none!important;font:inherit;font-size:13px;width:100%;color:var(--cph-log-ink)!important;min-width:0;outline:0!important}
.cph-log-year-label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--cph-log-muted);font-weight:650}
.cph-log-year-label select{border:1px solid var(--cph-log-line)!important;border-radius:10px;padding:9px 30px 9px 10px;background:var(--cph-log-panel)!important;color:var(--cph-log-ink)!important}
.cph-log-count{margin-left:auto;font-size:12px;color:var(--cph-log-muted)}
.cph-log-feed{position:relative;max-width:1140px;margin:0 auto;padding-left:0}
.cph-log-feed::before{content:"";position:absolute;left:138px;top:22px;bottom:45px;border-left:2px solid var(--cph-log-line)}
.cph-log-release{display:grid;grid-template-columns:164px minmax(0,1fr);position:relative;margin-bottom:22px;scroll-margin-top:110px}
.cph-log-axis{display:flex;align-items:flex-start;gap:14px;padding:25px 15px 0 0;color:var(--cph-log-muted);font-size:12px;position:relative;z-index:1;justify-content:flex-end;text-align:right}
.cph-log-axis-dot{height:12px;width:12px;flex:0 0 12px;order:2;margin-right:4px;border:3px solid var(--cph-log-panel);background:#8583a6;border-radius:100%;box-shadow:0 0 0 2px #c0bdd9}
.cph-log-release.is-latest .cph-log-axis-dot{background:#6354d6;box-shadow:0 0 0 3px #aaa2ed}
.cph-log-axis time{max-width:120px;padding-top:1px;font-weight:650;line-height:1.4}
.cph-log-release-content{color:var(--cph-log-ink);background:var(--cph-log-panel);border:1px solid var(--cph-log-line);border-radius:18px;padding:27px clamp(20px,3vw,37px) 24px;min-width:0;box-shadow:0 7px 22px rgba(25,35,55,.025)}
.cph-log-release.is-latest .cph-log-release-content{border-color:color-mix(in srgb,#766ad4 38%,var(--cph-log-line))}
.cph-log-release.cph-log-linked .cph-log-release-content{outline:3px solid #7f71de;outline-offset:3px}
.cph-log-release-top{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.cph-log-version{background:color-mix(in srgb,var(--cph-accent) 16%,var(--cph-log-panel));color:color-mix(in srgb,var(--cph-accent) 40%,var(--cph-log-ink));border-radius:9px;padding:6px 10px;font:800 12px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.02em}
.cph-log-release-kind{font-size:11px;color:var(--cph-log-muted);background:var(--cph-bg,rgba(130,139,160,.08));padding:6px 10px;border-radius:9px}
.cph-log-latest{font-size:11px;font-weight:760;color:color-mix(in srgb,#27a17b 60%,var(--cph-log-ink));padding:6px 10px;border-radius:9px;background:rgba(41,183,136,.1)}
.cph-log-release h2{font-size:clamp(20px,2.3vw,26px)!important;color:var(--cph-log-ink)!important;font-weight:760!important;letter-spacing:-.026em!important;line-height:1.34!important;margin:16px 0!important}
.cph-log-description{font-size:14px;color:var(--cph-log-muted);line-height:1.7;overflow-wrap:anywhere}
.cph-log-description p{margin:0 0 12px}
.cph-log-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 28px;margin:20px 0 0}
.cph-log-group{min-width:0}.cph-log-group h3{font-size:12px!important;font-weight:790!important;display:flex;align-items:center;gap:9px;margin:0 0 11px!important;color:var(--cph-log-ink)!important;text-transform:uppercase;letter-spacing:.065em}
.cph-log-group-dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:#6858d9}
.cph-log-group-fixed .cph-log-group-dot{background:#2eaf8a}.cph-log-group-improved .cph-log-group-dot{background:#dc9c3f}.cph-log-group-security .cph-log-group-dot{background:#dc626a}.cph-log-group-removed .cph-log-group-dot{background:#999}
.cph-log-group ul{padding-left:18px;margin:0!important;display:grid;gap:8px}.cph-log-group li{font-size:13px;line-height:1.58;color:var(--cph-log-muted);overflow-wrap:anywhere}
.cph-log-release-actions{display:flex;align-items:center;gap:11px 18px;flex-wrap:wrap;margin-top:24px;border-top:1px solid var(--cph-log-line);padding-top:17px}
.cph-log-release-actions button,.cph-log-release-actions a{padding:3px 0;border:0!important;background:none!important;color:var(--cph-log-muted)!important;font-size:12px!important;box-shadow:none!important;text-decoration:none!important;cursor:pointer;font-weight:650}
.cph-log-release-actions button:hover,.cph-log-release-actions a:hover{color:color-mix(in srgb,var(--cph-accent) 56%,var(--cph-log-ink))!important}
.cph-log-discussion{margin:19px 0 0;padding-top:17px;border-top:1px solid var(--cph-log-line)}
.cph-log-no-results,.cph-log-empty{border:1px dashed var(--cph-log-line);border-radius:15px;padding:35px;text-align:center;color:var(--cph-log-muted)}
.cph-log-empty h2{color:var(--cph-log-ink);margin:10px 0;font-size:22px}.cph-log-empty>span{font-size:35px}.cph-log-empty p{margin-bottom:18px}
.cph-log-load{text-align:center;margin:20px 0 30px}.cph-log-load button{border:1px solid var(--cph-log-line);border-radius:10px;padding:12px 25px;background:var(--cph-log-panel);color:var(--cph-log-ink);font-weight:700;cursor:pointer}
.cph-multi-changelog .cph-multi-release-label{margin-top:25px;border-top:1px solid var(--cph-log-line);padding-top:16px}
.cph-in-fcom.cph-release-site{padding-top:0}
@media(max-width:800px){.cph-log-hero{padding:29px 25px;align-items:flex-start;flex-direction:column}.cph-log-hero h1{font-size:32px!important}.cph-log-feed::before{left:8px}.cph-log-release{display:block;margin-left:0;padding-left:26px}.cph-log-axis{padding:0 0 10px;justify-content:flex-start;text-align:left;flex-direction:row-reverse}.cph-log-axis-dot{margin-left:-23px;margin-right:9px}.cph-log-release-content{padding:21px}.cph-log-groups{grid-template-columns:1fr}.cph-log-count{margin-left:0}}
@media(max-width:480px){.cph-log-search{min-width:100%}.cph-log-year-label{flex:1}.cph-log-hero{border-radius:14px}.cph-log-hero-meta{gap:7px}.cph-log-release-content{padding:18px 16px}.cph-log-release h2{font-size:21px!important}}

/* Bounty boards have their own funding-first look, not roadmap chrome. */
.cph-bounty-experience .cph-hero{background:linear-gradient(125deg,#082b30 0%,#12656a 57%,#1a827c 100%)}
.cph-bounty-experience .cph-section-eyebrow{color:#188977}
.cph-bounty-experience .cph-stat-note{background:linear-gradient(135deg,color-mix(in srgb,#198b6d 10%,var(--cph-surface)),var(--cph-surface))}
.cph-bounty-experience .cph-card{border:1px solid var(--cph-border,#dce4e8);box-shadow:0 10px 28px #0f475412;border-radius:16px}
.cph-bounty-experience .cph-card .cph-funding{background:linear-gradient(145deg,color-mix(in srgb,#159876 10%,var(--cph-surface)),var(--cph-surface));border-radius:12px}
.cph-bounty-experience .cph-content-head h2{letter-spacing:-.03em}
.cph-multi-bounty .cph-multi-icon{background:#ddf4e9;color:#147b63}

.cph-release-update-stream{margin:18px 0;padding:16px 18px;background:var(--cph-surface,#f4f7fb);border:1px solid var(--cph-border,#e2e8ef);border-radius:14px}.cph-release-update-stream h3{font-size:13px;letter-spacing:.04em;text-transform:uppercase;margin:0 0 13px;color:var(--cph-log-ink)!important}.cph-release-update{padding:12px 0;border-top:1px solid var(--cph-border,#e1e5ed)}.cph-release-update-badge{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.04em;color:#15806c}.cph-release-update time{font-size:11px;color:var(--cph-muted,#607089);margin-left:10px}.cph-release-update p{margin:5px 0 0;line-height:1.55}

/* Changelog: latest updates before the dated release archive. */
.cph-log-latest-updates{margin:22px 0 28px;padding:20px 22px;border-radius:16px;border:1px solid var(--cph-log-line);background:var(--cph-log-panel);color:var(--cph-log-ink)}
.cph-log-latest-updates-heading{display:flex;align-items:center;gap:10px;margin-bottom:12px}.cph-log-latest-updates-heading h2{margin:0;font-size:17px;color:var(--cph-log-ink)!important}.cph-log-latest-updates-heading>span:last-child{margin-left:auto;color:var(--cph-muted,#718096);font-size:11px}
.cph-log-latest-update{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 0;text-decoration:none;color:var(--cph-log-ink)!important;border-top:1px solid var(--cph-log-line)}.cph-log-latest-update strong{font-weight:600;flex:1;min-width:160px}.cph-log-latest-update>span:last-child{font-size:12px;color:var(--cph-muted,#738094)}

.cph-update-only-note{padding:10px 12px;border:1px solid var(--cph-border,#dce4e8);border-radius:9px;font-size:12px;line-height:1.5;color:var(--cph-muted,#687386);background:var(--cph-surface,#f6f8fa);margin:9px 0}

/* Alpha 19: board palettes are scoped to the individual board and its multi-board tile. */
.cph-app[data-cph-board-style="custom"]{
  --cph-bg:var(--cph-board-bg);
  --cph-ink:var(--cph-board-ink);
  --cph-border:var(--cph-board-border);
  --cph-surface:color-mix(in srgb,var(--cph-board-bg) 91%,var(--cph-board-ink));
  --cph-surface-soft:color-mix(in srgb,var(--cph-board-bg) 95%,var(--cph-board-ink));
  --cph-muted:color-mix(in srgb,var(--cph-board-ink) 75%,var(--cph-board-bg));
  --cph-hover:color-mix(in srgb,var(--cph-board-bg) 84%,var(--cph-board-ink));
  background:var(--cph-board-bg);color:var(--cph-board-ink);border:1px solid var(--cph-board-border);
}
.cph-app[data-cph-board-style="custom"] .cph-hero,
.cph-app[data-cph-board-style="custom"] .cph-log-hero{
  background:radial-gradient(circle at 100% -10%,color-mix(in srgb,var(--cph-board-ink) 10%,transparent),transparent 55%),var(--cph-board-bg)!important;
  border:1px solid var(--cph-board-border);color:var(--cph-board-ink)!important;
}
.cph-app[data-cph-board-style="custom"] .cph-hero h1,
.cph-app[data-cph-board-style="custom"] .cph-hero .cph-intro,
.cph-app[data-cph-board-style="custom"] .cph-hero .cph-intro p,
.cph-app[data-cph-board-style="custom"] .cph-hero .cph-overline,
.cph-app[data-cph-board-style="custom"] .cph-log-hero h1,
.cph-app[data-cph-board-style="custom"] .cph-log-hero p{color:var(--cph-board-ink)!important;}
.cph-app[data-cph-board-style="custom"] .cph-hero .cph-button-ghost{color:var(--cph-board-ink)!important;border-color:var(--cph-board-border)!important;}
.cph-app[data-cph-board-style="custom"] .cph-lane{background:var(--cph-surface-soft);border-color:var(--cph-border);}
.cph-app[data-cph-board-style="custom"] .cph-card,
.cph-app[data-cph-board-style="custom"] .cph-calendar,
.cph-app[data-cph-board-style="custom"] .cph-dialog{background:var(--cph-surface);border-color:var(--cph-border);color:var(--cph-ink);}
.cph-app[data-cph-board-style="custom"] .cph-card-excerpt,
.cph-app[data-cph-board-style="custom"] .cph-card-meta,
.cph-app[data-cph-board-style="custom"] .cph-card-foot{color:var(--cph-muted);}
/* Changelog has its own token set; map it to the board palette as well. */
.cph-app.cph-release-site[data-cph-board-style="custom"]{
  --cph-log-panel:var(--cph-surface);
  --cph-log-line:var(--cph-board-border);
  --cph-log-ink:var(--cph-board-ink);
  --cph-log-muted:var(--cph-muted);
}
/* Tiles must not inherit a neighboring board's palette. */
.cph-app.cph-multi-app .cph-multi-card[data-cph-board-style="custom"]{
  background:var(--cph-board-bg)!important;color:var(--cph-board-ink)!important;border-color:var(--cph-board-border)!important;
  --cph-multi-border:var(--cph-board-border);
  --cph-multi-ink:var(--cph-board-ink);
  --cph-multi-muted:color-mix(in srgb,var(--cph-board-ink) 76%,var(--cph-board-bg));
}
.cph-app.cph-multi-app .cph-multi-card[data-cph-board-style="custom"] h3 a,
.cph-app.cph-multi-app .cph-multi-card[data-cph-board-style="custom"] > p,
.cph-app.cph-multi-app .cph-multi-card[data-cph-board-style="custom"] .cph-multi-small,
.cph-app.cph-multi-app .cph-multi-card[data-cph-board-style="custom"] .cph-multi-stat,
.cph-app.cph-multi-app .cph-multi-card[data-cph-board-style="custom"] .cph-multi-latest,
.cph-app.cph-multi-app .cph-multi-card[data-cph-board-style="custom"] .cph-multi-open{
  color:var(--cph-board-ink)!important;
}
.cph-app.cph-multi-app .cph-multi-card[data-cph-board-style="custom"] .cph-multi-open,
.cph-app.cph-multi-app .cph-multi-card[data-cph-board-style="custom"] .cph-multi-stat{
  border-color:var(--cph-board-border)!important;
}
.cph-app.cph-multi-app .cph-multi-card[data-cph-board-style="custom"] .cph-multi-icon{color:var(--cph-board-ink);}

/* Alpha 21: light surfaces need a discernible tile edge. Derive it from the Hub
 * foreground so the same rule stays legible in light, dark, and FCom modes.
 * Explicit per-board custom border colors take precedence. */
.cph-app.cph-multi-app .cph-multi-card:not([data-cph-board-style="custom"]){
  border:2px solid #b9c3d0;
  border-color:color-mix(in srgb,var(--cph-ink) 27%,var(--cph-surface));
  box-shadow:0 1px 3px rgba(22,34,62,.035),0 8px 23px rgba(22,34,62,.065);
}
.cph-app.cph-multi-app .cph-multi-card:not([data-cph-board-style="custom"]):hover,
.cph-app.cph-multi-app .cph-multi-card:not([data-cph-board-style="custom"]):focus-within{
  border-color:color-mix(in srgb,var(--cph-accent) 58%,var(--cph-ink));
  box-shadow:0 4px 9px rgba(22,34,62,.07),0 15px 35px rgba(22,34,62,.11);
}

/* Alpha 22 — Changelog contrast: use active Hub palette for every release surface.
 * The previous white fallback on --cph-card made dark-mode releases unreadable. */
.cph-app.cph-release-site .cph-log-release-content,
.cph-app.cph-release-site .cph-log-latest-updates,
.cph-app.cph-release-site .cph-log-search,
.cph-app.cph-release-site .cph-log-year-label select {
  background-color:var(--cph-log-panel);
  border-color:var(--cph-log-line);
  color:var(--cph-log-ink);
}
.cph-app.cph-release-site .cph-log-description,
.cph-app.cph-release-site .cph-log-group li,
.cph-app.cph-release-site .cph-log-release-actions button,
.cph-app.cph-release-site .cph-log-release-actions a {
  color:color-mix(in srgb,var(--cph-log-muted) 75%,var(--cph-log-ink))!important;
}
.cph-app.cph-release-site .cph-log-release-actions a:hover,
.cph-app.cph-release-site .cph-log-release-actions button:hover,
.cph-app.cph-release-site .cph-log-latest-update:hover {
  color:color-mix(in srgb,var(--cph-accent) 55%,var(--cph-log-ink))!important;
}
.cph-app.cph-release-site .cph-log-latest-update strong {color:inherit;}
.cph-app.cph-release-site .cph-release-update-stream {
  color:var(--cph-log-ink);
  background:var(--cph-surface-soft);
  border-color:var(--cph-log-line);
}
.cph-app.cph-release-site .cph-release-update-stream h3 {color:var(--cph-log-ink)!important;}
.cph-app.cph-release-site .cph-release-update p {color:var(--cph-log-ink);}
.cph-app.cph-release-site .cph-log-group li::marker {color:var(--cph-log-muted);}
.cph-app.cph-release-site .cph-log-search input::placeholder {
  color:var(--cph-log-muted);opacity:1;
}
.cph-app.cph-release-site .cph-log-release-content:focus-within {
  border-color:color-mix(in srgb,var(--cph-accent) 50%,var(--cph-log-line));
}
/* Alpha 23: Follow & Notify and quick admin management. All colors inherit Hub tokens. */
.cph-app .cph-follow-tools{position:relative;display:flex;justify-content:flex-end;z-index:12;margin:0 0 9px;min-height:28px}
.cph-app .cph-inbox-trigger,.cph-app .cph-follow-button{border:1px solid var(--cph-border);background:var(--cph-surface);color:var(--cph-ink);padding:7px 12px;border-radius:10px;font-size:12px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:5px;line-height:1.3}
.cph-app .cph-follow-button.is-following{color:var(--cph-accent);border-color:var(--cph-accent);background:var(--cph-surface-soft)}
.cph-app .cph-follow-button:focus-visible,.cph-app .cph-inbox-trigger:focus-visible{outline:2px solid var(--cph-accent);outline-offset:3px}
.cph-app .cph-follow-button:disabled{opacity:.6;cursor:progress}
.cph-app .cph-inbox-trigger [data-cph-unread]{min-width:18px;border-radius:14px;background:var(--cph-accent);color:white;padding:1px 5px;font-size:10px}
.cph-app .cph-inbox{position:absolute;right:0;top:calc(100% + 5px);width:min(370px,calc(100vw - 40px));max-height:440px;overflow:auto;border-radius:13px;box-shadow:var(--cph-shadow);border:1px solid var(--cph-border);background:var(--cph-surface);color:var(--cph-ink);padding:12px;z-index:80}
.cph-app .cph-inbox[hidden]{display:none}
.cph-app .cph-inbox header{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:4px 3px 10px;border-bottom:1px solid var(--cph-border)}
.cph-app .cph-inbox header button{border:0;background:transparent;color:var(--cph-accent);font-size:11px;cursor:pointer}
.cph-app .cph-inbox-item{display:flex;flex-direction:column;gap:5px;padding:12px 7px;border-bottom:1px solid var(--cph-border);text-decoration:none;color:var(--cph-ink);font-size:12px}
.cph-app .cph-inbox-item.is-unread{background:var(--cph-surface-soft)}
.cph-app .cph-inbox-item strong{font-size:12px;line-height:1.35}.cph-app .cph-inbox-item small,.cph-app .cph-inbox>small{color:var(--cph-muted)}
.cph-app .cph-inbox>small{display:block;padding:10px 4px 0}.cph-app .cph-inbox-empty{font-size:12px;color:var(--cph-muted);padding:10px 4px}
.cph-app .cph-detail-follow{display:flex;justify-content:flex-start;margin:10px 0 14px}
.cph-app .cph-multi-card>.cph-follow-button{align-self:flex-start;margin:10px 0 5px}
.cph-app .cph-log-release-actions>.cph-follow-button{margin-right:8px}
.cph-app .cph-draggable{cursor:grab}.cph-app .cph-draggable.is-dragging{opacity:.52;cursor:grabbing}
.cph-app .cph-lane.cph-drop-target{outline:2px dashed var(--cph-accent);outline-offset:-3px;background:var(--cph-surface-soft)}
.cph-follow-feedback{position:fixed;bottom:22px;right:22px;max-width:min(400px,calc(100vw - 40px));border-radius:9px;background:#263047;color:#fff;padding:12px 16px;box-shadow:0 10px 30px #0003;z-index:999999;font-size:13px;pointer-events:none}
@media(max-width:600px){.cph-app .cph-inbox{right:0;max-height:55vh}.cph-app .cph-multi-card>.cph-follow-button{margin-top:5px}}

/* Alpha 24: keep the Updates inbox within the changelog hero instead of a
   separate empty strip. The popover must not be clipped by the banner. */
.cph-app.cph-release-site .cph-log-hero{overflow:visible}
.cph-app.cph-release-site .cph-log-hero>.cph-follow-tools{
  position:absolute;top:22px;right:clamp(20px,3vw,46px);z-index:30;
  margin:0;min-height:0;
}
.cph-app.cph-release-site .cph-log-hero>.cph-follow-tools .cph-inbox-trigger{
  box-shadow:0 3px 12px #00000015;
}
.cph-app.cph-release-site .cph-log-hero>.cph-follow-tools .cph-inbox{
  z-index:90;text-align:left;
}
@media(max-width:800px){
  .cph-app.cph-release-site .cph-log-hero{padding-top:77px}
  .cph-app.cph-release-site .cph-log-hero>.cph-follow-tools{top:18px;right:20px}
}
@media(max-width:480px){
  .cph-app.cph-release-site .cph-log-hero>.cph-follow-tools .cph-inbox{
    width:min(340px,calc(100vw - 56px));
  }
}

/* Alpha 25: every board keeps Updates at the upper-right of its own banner. */
.cph-app .cph-hero{overflow:visible;isolation:isolate}
.cph-app .cph-hero>.cph-follow-tools{position:absolute;right:clamp(18px,2.6vw,36px);top:18px;margin:0;z-index:30;min-height:0}
.cph-app .cph-hero>.cph-follow-tools .cph-inbox{right:0;left:auto}
.cph-app .cph-hero>.cph-hero-inner{padding-top:20px}
.cph-app .cph-log-toolbar .cph-log-add{margin-left:auto;box-shadow:none;white-space:nowrap;background:var(--cph-banner-bg,#25345e);color:#fff!important;display:inline-flex;align-items:center;justify-content:center;min-height:42px}
@media(max-width:650px){.cph-app .cph-hero>.cph-follow-tools{top:11px;right:12px}.cph-app .cph-hero>.cph-hero-inner{padding-top:35px}.cph-app .cph-log-toolbar .cph-log-add{width:100%;margin-left:0}}

/* Alpha 27: multi-board Updates belongs under the board-count badge INSIDE the hero. */
.cph-app .cph-multi-hero{position:relative;overflow:visible;isolation:isolate;align-items:flex-start}
.cph-app .cph-multi-hero-copy{min-width:0;flex:1 1 auto}
.cph-app .cph-multi-hero-side{display:flex;flex-direction:column;align-items:flex-end;gap:11px;flex:0 0 auto;position:relative;z-index:40}
.cph-app .cph-multi-hero-side>.cph-follow-tools{position:relative;display:block;width:max-content;min-height:0;margin:0;z-index:40}
.cph-app .cph-multi-hero-side .cph-inbox{right:0;left:auto;top:calc(100% + 8px);text-align:left;z-index:90}
.cph-app .cph-multi-hero-side .cph-inbox-trigger{box-shadow:0 3px 12px rgba(0,0,0,.12)}
@media(max-width:650px){
  .cph-app .cph-multi-hero{align-items:flex-start;flex-wrap:wrap;gap:18px}
  .cph-app .cph-multi-hero-copy{flex-basis:100%}
  .cph-app .cph-multi-hero-side{margin-left:auto;align-items:flex-end;gap:9px}
  .cph-app .cph-multi-hero-side .cph-multi-hero-stat{display:inline-flex!important}
  .cph-app .cph-multi-hero-side .cph-inbox{width:min(340px,calc(100vw - 54px))}
}

/* Alpha 27 — optional work-management metadata, safe with theme/FCom colors. */
.cph-app .cph-work-chip{display:inline-flex;align-items:center;padding:4px 7px;border-radius:7px;font-size:10px;font-weight:750;line-height:1.25;border:1px solid var(--cph-border);background:var(--cph-surface-soft);color:var(--cph-ink)}
.cph-app .cph-priority-low{color:#34765f;border-color:#4b9d7755}.cph-app .cph-priority-normal{color:var(--cph-muted)}.cph-app .cph-priority-high{color:#ac6517;border-color:#b9833855}.cph-app .cph-priority-urgent{color:#bd3f4c;border-color:#bd3f4c66}.cph-app .cph-is-milestone{color:var(--cph-accent);border-color:var(--cph-accent)}
.cph-app .cph-work-blocked{font-size:11px;padding:7px 10px;margin:5px 0 9px;border:1px solid #b9833855;border-radius:8px;color:#ae7427;background:var(--cph-surface-soft);overflow-wrap:anywhere}
.cph-app .cph-work-assignee{color:var(--cph-muted);font-size:11px;margin:4px 0 8px}.cph-app .cph-work-assignee strong{color:var(--cph-ink)}
.cph-app .cph-milestone-field{justify-content:center}.cph-app .cph-milestone-field span{display:flex;align-items:center;gap:8px}.cph-app .cph-milestone-field input{width:16px!important;height:16px!important;flex:0 0 16px;padding:0!important;margin:0}.cph-app .cph-milestone-field small,.cph-app .cph-edit-help{color:var(--cph-muted);font-size:11px;line-height:1.5}
.cph-app .cph-card-top{flex-wrap:wrap;row-gap:5px}

/* Alpha 28 — shared portfolios and personal My Work. Scoped; no FCom overrides. */
.cph-portfolio{--cph-pf-border:var(--cph-border,rgba(128,145,173,.32));--cph-pf-muted:var(--cph-muted,#8290a3);max-width:1440px;margin-inline:auto;color:inherit}
.cph-portfolio [hidden],.cph-my-work [hidden]{display:none!important}
.cph-portfolio-hero{position:relative;display:flex;gap:2rem;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;padding:clamp(1.5rem,4vw,3.5rem);border:1px solid var(--cph-pf-border);border-radius:18px;background:linear-gradient(115deg,#1d2d53,#404789);color:#fff;isolation:isolate}
.cph-portfolio-hero h1{font-size:clamp(1.8rem,3.4vw,2.8rem);margin:.4rem 0 .65rem;color:#fff;line-height:1.2}
.cph-portfolio-hero p{max-width:63ch;margin:.4rem 0 1rem;color:#e0e7f3}
.cph-portfolio-hero .cph-overline{letter-spacing:.12em;font-size:.75rem;font-weight:700;color:#d6dcfa}
.cph-portfolio-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1rem}
.cph-portfolio-hero-actions a,.cph-portfolio-hero-actions button{color:#fff}
.cph-portfolio-hero-side{display:flex;flex-direction:column;align-items:flex-end;gap:1rem;min-width:130px}
.cph-portfolio-count{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.24);padding:.85rem 1.2rem;border-radius:14px;display:grid;text-align:center}
.cph-portfolio-count strong{font-size:2rem;line-height:1;color:#fff}.cph-portfolio-count span{font-size:.75rem;color:#e7e8fc;margin-top:.3rem}
.cph-portfolio-source-links{display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem 0}.cph-portfolio-source-links a{padding:.45rem .8rem;border:1px solid var(--cph-pf-border);border-radius:30px;text-decoration:none;color:inherit;font-size:.88rem}
.cph-portfolio-tools{display:flex;align-items:end;flex-wrap:wrap;gap:1rem;padding:1rem 0}
.cph-portfolio-tools label,.cph-my-work-top label{display:grid;gap:.35rem;font-size:.82rem;font-weight:650;min-width:170px}
.cph-portfolio-tools input,.cph-portfolio-tools select,.cph-my-work-top input{min-height:42px;border-radius:10px;border:1px solid var(--cph-pf-border);background:var(--cph-input-bg,transparent);color:inherit;padding:.6rem .75rem;max-width:100%}
.cph-portfolio-tools [data-cph-portfolio-results]{font-size:.8rem;margin-left:auto;opacity:.7}
.cph-portfolio-hint{font-size:.8rem;opacity:.7;margin:0 0 1rem}
.cph-portfolio-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:1rem;margin:1rem 0 2rem}
.cph-portfolio-column{min-width:0;background:var(--cph-surface,#f6f7fa);border:1px solid var(--cph-pf-border);border-radius:14px;padding:1rem}
.cph-portfolio-column h2{font-size:1rem;display:flex;align-items:center;justify-content:space-between;gap:.4rem;margin:0 0 1rem;color:inherit}
.cph-portfolio-column h2 span{padding:.15rem .5rem;border-radius:8px;border:1px solid var(--cph-pf-border);font-size:.8rem}
.cph-portfolio-stack,.cph-my-work-tasks{display:grid;gap:.65rem;min-width:0}
.cph-portfolio-item,.cph-my-work-board{border:1px solid var(--cph-pf-border);border-radius:13px;padding:1rem;background:var(--cph-card-bg,var(--cph-surface,#fff));min-width:0;overflow-wrap:anywhere}
.cph-portfolio-item h3,.cph-my-work-board h3{font-size:1rem;margin:.4rem 0 .7rem;line-height:1.4;color:inherit}
.cph-portfolio-item h3 a,.cph-my-work-board h3 a{color:inherit;text-decoration:none}.cph-portfolio-item h3 a:hover,.cph-my-work-board h3 a:hover{text-decoration:underline}
.cph-portfolio-source{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;font-weight:750;opacity:.75}
.cph-portfolio-meta{display:flex;gap:.45rem;flex-wrap:wrap;font-size:.73rem;opacity:.86}.cph-portfolio-meta span{padding:.2rem .42rem;border:1px solid var(--cph-pf-border);border-radius:5px}
.cph-portfolio-priority.cph-priority-urgent{color:#b73b45}.cph-portfolio-priority.cph-priority-high{color:#b26a25}
.cph-portfolio-empty,.cph-portfolio-column-empty{padding:1.25rem;border:1px dashed var(--cph-pf-border);border-radius:12px;opacity:.8}
.cph-my-work-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1rem 0 2rem}
.cph-my-work-summary>div{border-radius:14px;border:1px solid var(--cph-pf-border);padding:1rem;background:var(--cph-card-bg,transparent);display:grid;gap:.3rem}
.cph-my-work-summary strong{font-size:1.6rem}.cph-my-work-summary span{font-size:.8rem;opacity:.75}
.cph-my-work-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin:1.75rem 0 1rem}
.cph-my-work-top h2{margin:.2rem 0 .4rem;font-size:1.5rem;color:inherit}.cph-my-work-top p{margin:0;opacity:.8;font-size:.9rem}
.cph-my-work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));gap:.85rem}
.cph-my-work-board{display:flex;flex-direction:column;min-height:168px}
.cph-my-work-board p{opacity:.78;font-size:.85rem;line-height:1.5;margin:.1rem 0 1rem;flex:1}
.cph-my-work-board-actions{display:flex;justify-content:space-between;align-items:center;gap:.7rem;margin-top:auto}
.cph-my-work-board-actions a{color:inherit;text-decoration:none;font-weight:650;font-size:.83rem}
.cph-my-work-board-actions button{background:transparent;color:inherit;cursor:pointer;border:1px solid var(--cph-pf-border);padding:.4rem .7rem;border-radius:7px;font-size:.8rem}
.cph-my-work-board-actions button:hover{background:rgba(125,145,172,.15)}
.cph-my-work-hidden{margin:1.2rem 0 2.2rem;padding:1rem;border:1px solid var(--cph-pf-border);border-radius:12px}
.cph-my-work-hidden summary{cursor:pointer;font-weight:750;display:list-item;margin:0 0 .25rem;list-style:disclosure-closed inside}.cph-my-work-hidden[open] summary{list-style:disclosure-open inside;margin-bottom:1rem}
.cph-my-work-hidden summary small{font-weight:400;opacity:.7;margin-left:.5rem}
.cph-my-work-tasks{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));margin-bottom:1rem}
.cph-work-feedback{font-size:.85rem;min-height:1.4em;margin:1rem 0}.cph-work-login{padding:2rem;border:1px solid #9ba8bc66;border-radius:14px}
.cph-portfolio .cph-inbox{z-index:30}
.cph-my-work[data-focus="1"] .cph-my-work-grid,.cph-my-work[data-focus="1"] .cph-my-work-hidden,.cph-my-work[data-focus="1"] .cph-my-work-top:has([data-cph-work-search]){display:none}
.cph-my-work-link{display:inline-flex;align-items:center;gap:.4rem;border:1px solid currentColor;border-radius:8px;padding:.45rem .65rem;font-size:.85rem;text-decoration:none!important;color:inherit;white-space:nowrap}
.cph-portfolio-source-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.7rem;padding:.75rem 0}.cph-portfolio-source-choices label{display:flex;gap:.6rem;align-items:center;padding:.65rem .75rem;border:1px solid #b5bec966;border-radius:10px}
@media(max-width:800px){.cph-portfolio-columns{grid-template-columns:1fr}.cph-portfolio-hero-side{align-items:start}.cph-my-work-summary{grid-template-columns:1fr}.cph-portfolio-tools>*{flex:1 1 150px}}
@media(prefers-reduced-motion:reduce){.cph-portfolio *{scroll-behavior:auto!important;transition:none!important}}
