/* TWINS v0.2.103 — UI consistency + profile/photo refinements */

/* Global app header controls: pink everywhere. */
.app-topbar-home .topbar-menu-button,
.app-topbar-compact .topbar-menu-button,
.topbar-menu-button,
.starter-menu-button,
.location-menu-button,
.app-header-back,
.topbar-profile-back{
  color:#ec69bf!important;
}
.topbar-menu-button svg,
.starter-menu-button svg,
.location-menu-button svg{stroke:currentColor!important}

/* Relationship favorite: star semantics, aligned to SEX button right edge. */
.relation-person-row-v098{grid-template-columns:minmax(0,1fr) auto!important}
.relation-favorite-side-form{
  width:40px;
  margin:0 9px 0 0;
  align-self:center;
  justify-self:end;
  display:grid;
  justify-items:center;
  gap:3px;
}
.relation-favorite-side{
  width:40px;height:40px;display:grid;place-items:center;padding:0;
  border:1px solid rgba(255,255,255,.085);border-radius:11px;
  background:#17131a;color:#68616d;font-size:20px;line-height:1;cursor:pointer;
}
.relation-favorite-side.is-on{border-color:rgba(236,66,172,.34);background:rgba(236,66,172,.10);color:#f067bf}
.relation-favorite-side-form>small{display:block;color:#746d79;font-size:6.5px;line-height:1;white-space:nowrap}
.relation-favorite-side.is-on + small{color:#b77c9f}
.relation-favorite-side:disabled{opacity:.55}
.relation-wants-star{
  position:absolute;z-index:5;right:5px;bottom:4px;color:#f36ac0;
  font-size:17px;line-height:1;text-shadow:0 2px 7px #000;font-style:normal;
}
.relation-heart-side-form,.relation-heart-side{display:none!important}

/* Photo management tabs: label stays one line; count is always beneath. */
.photo-album-tabs button{
  min-width:0;min-height:52px;display:flex!important;flex-direction:column;
  align-items:center;justify-content:center;gap:3px;padding:7px 4px!important;font-size:inherit!important;
}
.photo-album-tabs button>b{
  display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font-size:9px;line-height:1.15;font-weight:850;
}
.photo-album-tabs button>span{
  display:block;margin:0!important;white-space:nowrap;font-size:7px!important;line-height:1;font-weight:650;opacity:.68;
}

/* Profile editor: flat compact list instead of stacked cards/selects. */
.profile-list-page-v103{padding-bottom:108px}
.profile-list-form-v103{
  display:grid;gap:0!important;overflow:hidden;border:1px solid rgba(255,255,255,.075);
  border-radius:13px;background:#121017;
}
.profile-list-section-v103{
  margin:0;padding:12px;border:0;border-bottom:1px solid rgba(255,255,255,.06);
  border-radius:0;background:transparent;
}
.profile-list-section-v103:last-of-type{border-bottom:0}
.profile-list-section-v103>h2,.profile-list-section-head-v103 h2{
  margin:0 0 9px;color:#ddd6df;font-size:10px;font-weight:850;
}
.profile-list-section-v103>h3{margin:10px 0 5px;color:#827a86;font-size:8px;font-weight:800}
.profile-list-section-head-v103{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}
.profile-list-section-head-v103 h2{margin:0}
.profile-list-section-head-v103>small{max-width:68%;color:#716a76;font-size:7px;line-height:1.45;text-align:right}
.profile-list-row-v103{
  min-height:45px;display:grid!important;grid-template-columns:105px minmax(0,1fr);gap:10px;
  align-items:center;padding:4px 0;border-top:1px solid rgba(255,255,255,.045);
}
.profile-list-row-v103:first-of-type{border-top:0}
.profile-list-row-v103>span{color:#948c98;font-size:8.5px}
.profile-list-row-v103>span small{display:inline!important;margin-left:3px!important;color:#675f6b!important;font-size:6.5px!important}
.profile-list-row-v103 input{width:100%;min-width:0;margin:0!important;padding:9px 10px!important;border-radius:8px!important;font-size:10px!important}
.profile-list-stack-v103{display:grid!important;gap:5px;margin-top:8px}
.profile-list-stack-v103>span{color:#8f8793;font-size:8.5px}
.profile-list-stack-v103 input,.profile-list-stack-v103 textarea{margin:0!important;border-radius:8px!important;font-size:10px!important}
.profile-option-list-v103,.profile-check-list-v103{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
.profile-option-list-v103 label,.profile-check-list-v103 label{min-width:0;display:block!important}
.profile-option-list-v103 input,.profile-check-list-v103 input{position:absolute;opacity:0;pointer-events:none}
.profile-option-list-v103 label>span,.profile-check-list-v103 label>span{
  min-height:34px;display:flex;align-items:center;gap:7px;padding:7px 8px;
  border:1px solid rgba(255,255,255,.065);border-radius:8px;background:#0e0b11;
  color:#908894;font-size:8px;line-height:1.25;
}
.profile-option-list-v103 i,.profile-check-list-v103 i{
  flex:0 0 auto;width:14px;height:14px;display:grid;place-items:center;border:1px solid #5d5661;
  color:transparent;font-size:7px;font-style:normal;
}
.profile-option-list-v103 i{border-radius:50%}
.profile-check-list-v103 i{border-radius:4px}
.profile-option-list-v103 input:checked+span,.profile-check-list-v103 input:checked+span{
  border-color:rgba(232,78,181,.28);background:rgba(232,78,181,.075);color:#e8dbe5;
}
.profile-option-list-v103 input:checked+span i{border:4px solid #e65fb8;background:#2a1222}
.profile-check-list-v103 input:checked+span i{border-color:#df58b2;background:#df58b2;color:#160c13}
.spot-name-list-v103{display:grid;gap:5px}
.spot-name-list-v103 label{display:grid!important;grid-template-columns:24px minmax(0,1fr);gap:7px;align-items:center}
.spot-name-list-v103 label>span{color:#6f6873;font-size:8px;text-align:center}
.spot-name-list-v103 input{margin:0!important;border-radius:8px!important;font-size:10px!important}
.profile-list-help-v103{margin:7px 0 0;color:#6f6873;font-size:7px;line-height:1.45}
.profile-save-button-v103{margin:10px 12px 12px!important;width:calc(100% - 24px)!important}

/* Public profile favorite spots: only the store name. */
.profile-spots-list>div{display:block!important}
.profile-spots-list>div>span{display:none!important}

/* OPS TWIN MEMORY is visually identifiable among registered media. */
.ops-media-item.is-memory{outline:1px solid rgba(226,83,183,.18);outline-offset:-1px}
.ops-media-item.is-memory figcaption b{color:#dc84c0}

@media(max-width:520px){
  .relation-favorite-side-form{width:38px;margin-right:8px}
  .relation-favorite-side{width:38px;height:38px}
  .profile-list-row-v103{grid-template-columns:88px minmax(0,1fr)}
}
