.collaboration-guide {
  margin: -8px 0 28px;
  padding: 22px 24px;
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 38px;
  align-items: center;
  border: 2px solid var(--ink);
  background: var(--purple);
  box-shadow: 7px 7px 0 var(--ink);
}

.collaboration-guide > div > span {
  font: 900 8px/1 var(--font-data);
  letter-spacing: .13em;
}

.collaboration-guide h2 { margin: 8px 0 4px; font-size: 27px; letter-spacing: -.045em; }
.collaboration-guide p { margin: 0; font-size: 10px; color: rgba(24, 38, 31, .68); }
.collaboration-guide ol { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; list-style: none; }
.collaboration-guide li { min-height: 74px; padding: 10px; display: flex; flex-direction: column; justify-content: space-between; border: 1px solid var(--ink); background: var(--white); }
.collaboration-guide li b { width: 24px; height: 22px; display: grid; place-items: center; background: var(--green); border: 1px solid var(--ink); font-size: 9px; }
.collaboration-guide li span { font-size: 9px; font-weight: 850; }
.project-card-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.project-match-count { padding: 6px 8px; border: 1px solid var(--ink); background: var(--green); font-size: 8px; font-weight: 900; }
.project-collab-status { margin: 22px 0 0; padding: 13px; border: 1px solid var(--line); background: var(--paper); display: grid; grid-template-columns: auto 1fr; column-gap: 8px; align-items: center; }
.project-collab-status b { grid-row: 1 / 3; font-size: 28px; line-height: 1; }
.project-collab-status span { font-size: 9px; font-weight: 850; }
.project-collab-status small { font-size: 8px; color: rgba(24, 38, 31, .58); }
.project-scene > em { font-size: 9px; font-weight: 900; }

.passport-promo { margin: 22px 0 48px; padding: 20px 24px; display: grid; grid-template-columns: 82px minmax(0, 1fr) auto; gap: 22px; align-items: center; border: 1px solid var(--ink); background: #f1ead9; box-shadow: 5px 5px 0 var(--purple); }
.passport-stamp { width: 70px; height: 70px; display: grid; place-items: center; align-content: center; border: 3px double var(--orange); border-radius: 50%; color: var(--orange); text-align: center; transform: rotate(-8deg); }
.passport-stamp span { font: 900 7px/1 var(--font-data); letter-spacing: .14em; }
.passport-stamp b { margin: 3px 0 1px; font: 900 26px/.8 Georgia,serif; }
.passport-stamp small { font: 900 6px/1 var(--font-data); letter-spacing: .1em; }
.passport-promo-copy .eyebrow { margin-bottom: 5px; }
.passport-promo-copy h2 { margin: 0; font-size: 23px; line-height: 1; letter-spacing: -.045em; }
.passport-promo-copy > p:not(.eyebrow) { margin: 7px 0 0; color: rgba(24,38,31,.64); font-size: 10px; }
.passport-promo > button { padding: 11px 14px; border: 2px solid var(--ink); background: var(--green); box-shadow: 3px 3px 0 var(--ink); font-size: 9px; font-weight: 900; }

#project-view .project-head { padding-bottom: 28px; }
#project-view .back{margin-top:10px;padding:6px 0}
#project-view .project-head{padding:8px 0 14px;align-items:center}
#project-view .project-head .eyebrow{display:none}
#project-view .project-head h1{font-size:38px;line-height:1}
#project-view .project-head>div>p:last-child{margin:6px 0 0;font-size:10px}
#project-view .project-head .secondary{padding:10px 14px;border-radius:3px}
#project-view .member{width:32px;height:32px}
#project-view .project-tabs{margin-bottom:14px}
#project-view .vote-stage{display:none}
.project-tabs { margin: 0 0 22px; display: flex; border-bottom: 2px solid var(--ink); }
.project-tabs button { padding: 12px 18px; border: 0; border-left: 1px solid var(--ink); border-top: 1px solid var(--ink); background: var(--white); font: 900 10px/1 var(--font-data); text-transform: uppercase; }
.project-tabs button:last-child { border-right: 1px solid var(--ink); }
.project-tabs button.active { background: var(--green); }
.project-tabs span { min-width: 19px; height: 19px; margin-left: 5px; display: inline-grid; place-items: center; border: 1px solid var(--ink); background: var(--white); font-size: 8px; }
.vote-stage { margin: 0 0 28px; padding: 18px 22px; display: flex; align-items: end; justify-content: space-between; gap: 30px; border: 2px solid var(--ink); background: var(--purple); box-shadow: 6px 6px 0 var(--ink); }
.vote-stage .eyebrow { margin-bottom: 5px; opacity: .72; }
.vote-stage h2 { margin: 0; font-size: 29px; letter-spacing: -.045em; }
.vote-stage p:not(.eyebrow) { max-width: 560px; margin: 5px 0 0; font-size: 10px; color: rgba(24, 38, 31, .7); }
.project-pulse { display: flex; gap: 7px; flex: 0 0 auto; }
.project-pulse span { min-width: 82px; padding: 9px; display: flex; align-items: center; gap: 6px; border: 1px solid var(--ink); background: var(--white); font-size: 8px; font-weight: 850; }
.project-pulse b { font-size: 18px; line-height: 1; }
#project-view .liked-rooms { margin: 0 0 56px; box-shadow: none; }
#project-view .decision-workspace { margin-top: 4px; }

@media (max-width: 760px) {
  .collaboration-guide { grid-template-columns: 1fr; }
  .collaboration-guide ol { grid-template-columns: 1fr; }
  .collaboration-guide li { min-height: 58px; }
  .vote-stage { align-items: flex-start; flex-direction: column; }
  .project-pulse { width: 100%; }
  .project-pulse span { min-width: 0; flex: 1; }
  .passport-promo { grid-template-columns: 70px 1fr; padding: 18px; }
  .passport-promo > button { grid-column: 1 / -1; }
}

/* Keep the voting context compact: the room is the project page's primary content. */
#project-view .vote-stage { display: none !important; }
#project-view .back { margin-top: 4px; padding: 5px 0; font-size: 11px; }
#project-view .project-head { padding: 2px 0 10px; }
#project-view .project-head h1 { font-size: 34px; }
#project-view .project-head > div > p:last-child { margin-top: 4px; }
#project-view .project-tabs { margin-bottom: 8px; }
#project-view .project-tabs button { padding: 10px 16px; }
/* Stable app shell: brand, navigation and account controls never share a track. */
.app-header{display:grid!important;grid-template-columns:minmax(190px,1fr) auto minmax(300px,1fr)!important;column-gap:24px;align-items:center}
.app-header>.brand{justify-self:start;min-width:0}
.app-header>.app-nav{position:static!important;left:auto!important;justify-self:center;transform:none!important;white-space:nowrap}
.app-header>.user-menu{justify-self:end;min-width:0;white-space:nowrap}
.account-menu{position:relative;color:var(--white)}
.account-menu>summary{min-height:46px;padding:4px 3px 4px 10px;display:flex;align-items:center;gap:10px;border:1px solid transparent;list-style:none;cursor:pointer}
.account-menu>summary::-webkit-details-marker{display:none}
.account-menu>summary:hover,.account-menu[open]>summary{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.06)}
.account-menu>summary>i{margin-right:5px;font-style:normal;opacity:.58}
.account-menu[open]>summary>i{transform:rotate(180deg)}
.account-menu .avatar{overflow:hidden;background-size:cover;background-position:center;color:transparent}
.account-menu .avatar.generated{box-shadow:3px 3px 0 var(--green)}
.account-dropdown{position:absolute;right:0;top:calc(100% + 9px);z-index:1200;width:230px;padding:8px;border:2px solid var(--ink);background:var(--white);color:var(--ink);box-shadow:6px 6px 0 var(--purple)}
.account-dropdown>button{width:100%;padding:12px 10px;display:flex;align-items:center;justify-content:space-between;border:0;background:transparent;font-size:11px;font-weight:850;text-align:left}
.account-dropdown>button:hover{background:var(--green)}
.account-dropdown>button i{font-style:normal}
.account-language{margin:4px 0;padding:10px;border-block:1px solid var(--line)}
.account-language>span{display:block;margin-bottom:7px;font:850 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;opacity:.58}
.account-dropdown .account-logout{color:#a94432}
@media(max-width:980px){.app-header{grid-template-columns:minmax(150px,1fr) auto minmax(210px,1fr)!important;column-gap:12px}.account-menu>summary #user-name{display:none}.app-header .app-nav button{padding-inline:10px}}
@media(max-width:760px){.app-header{grid-template-columns:1fr auto!important;grid-template-rows:auto auto;column-gap:12px}.app-header>.app-nav{grid-column:1/-1;grid-row:2;width:100%;margin-top:7px}.app-header>.user-menu{grid-column:2;grid-row:1}.app-header>.brand{grid-column:1;grid-row:1}}
